Comment trouver un mot de passe Wi-Fi enregistré?

26

J'ai un téléphone Android connecté à un point d'accès Wi-Fi sécurisé. Comment puis-je trouver le mot de passe du hotspot à partir du téléphone?

Michael
la source
Pour ceux qui recherchent une solution non root, voir Récupérer le mot de passe WiFi
Firelord

Réponses:

13

Sur mon téléphone, les informations d'identification sont stockées dans /data/wifi/bcm_supp.conf. Vous aurez probablement besoin de root pour le voir directement sur votre téléphone, mais vous pourrez peut-être utiliser adb pull(nécessite le SDK Android) depuis votre PC pour obtenir le fichier.

Comme indiqué dans les commentaires, l'emplacement peut varier en fonction de votre ROM ou appareil (en particulier la puce Wi-Fi; le mien est un Broadcom). Vérifiez /data/wifi/, /data/etc/wifi/et /data/misc/wifi/pour les fichiers de configuration appropriés si vous ne trouvez pas ceux suggérés par eldarerathis ou moi.

Matthew Read
la source
3
Hm, intéressant. Quel type de téléphone utilisez-vous ATM? Je n'ai pas ce fichier, mais j'étais sur le point de poster une réponse disant de chercher /data/misc/wifi/wpa_supplicant.conf. Peut-être que WPA Supplicant est juste une chose CyanogenMod ...
eldarerathis
Le nom et l'emplacement du fichier varient selon le périphérique, mais ils doivent être l'un ou l'autre.
Lucas Ramage
9

Sur les appareils CyanogenMod, et éventuellement d'autres ROM AOSP, vous devriez pouvoir le récupérer dans le /data/misc/wifi/wpa_supplicant.conffichier. Sur un appareil non rooté, je ne pense pas que cela soit possible car vous n'aurez pas la permission de lire les /datarépertoires où les paramètres sont stockés et le menu Paramètres s'affiche simplement (Unchanged)si vous allez dans la configuration du réseau.

Voici ce que je vois sur mon CM7 EVO (nom de réseau et mot de passe caviardé):

# cd /data/misc/wifi/
# ls
sockets              wpa_supplicant.conf
# more wpa_supplicant.conf
ctrl_interface=eth0
update_config=1

network={
        ssid="SomeWifiNetwork"
        psk="MyPlaintextPassword"
        key_mgmt=WPA-PSK
        priority=1
}
#
eldarerathis
la source
Mon téléphone est enraciné. J'ai installé l'application «superutilisateur». Mais comment puis-je obtenir le «shell adb» avec un accès root. J'ai essayé '$ adb shell shell @ android: / $ su Autorisation refusée 1 | shell @ android: / $ cd / data shell @ android: / data $ ls opendir a échoué, Autorisation refusée 255 | shell @ android: / data $ su Autorisation refusé 1 | shell @ android: / data $
michael
1
Ah, c'est en fait un nouveau paramètre dans CyanogenMod. Vous devrez utiliser supour obtenir un shell racine, mais vérifiez d'abord Settings->Developer Options(les paramètres principaux de votre téléphone) pour voir quel est le paramètre "Accès root". Par défaut, c'est "Applications uniquement". Vous devrez le basculer sur "Applications et ADB" pour supouvoir travailler à partir du shell.
eldarerathis
@michael je fais toujours adb rootsuivi par adb shell.
ott--
2

Dans Android Oreo et Pie (testé sur OnePlus 6), le fichier semble être celui /data/misc/wifi/WifiConfigStore.xmlqui stocke vos informations d'identification Wi-Fi. Je ne connais pas de bon analyseur XML, mais le fichier peut être ouvert dans un éditeur de texte ( nécessite un accès root ). Recherchez avec le nom de votre Wifi (SSID) et localisez la ligne contenant:

<string name="SSID">&quot;YOUR_SAVED_SSID;</string>

L'une des lignes suivantes afficherait le mot de passe. Il serait mentionné comme "PreSharedKey". Exemple:

<string name="PreSharedKey">&quot;SAVED_PASSWORD;</string>
Seigneur du feu
la source