3 votes

Déverrouiller Android crypté depuis ADB

J'ai le problème suivant : ce soir, l'écran tactile de mon Sony Xperia Z s'est cassé. J'ai deux fines fissures dans l'écran et tout ce qui se trouve du côté droit de la fissure ne réagit pas. J'ai des téléphones de secours mais je voulais récupérer au moins mes photos. Mon appareil est crypté avec une phrase de passe, mais je ne peux pas la taper. Mon idée était, de le déverrouiller à partir d'adb, afin que je puisse sauvegarder mes données. J'utilise SlimKat (SlimRom) avec TeamWin Recovery.

Quand j'entre en mode de récupération, je peux voir mon téléphone :

$ adb devices
List of devices attached 
CB5A1PN2WU  recovery

Mais aucune commande ne fonctionne :

$ adb shell
- exec '/system/bin/sh' failed: No such file or directory (2) -

Comment puis-je obtenir mes données ? Puis-je contrôler mon clavier à distance ? Malheureusement, tout est sauvegardé sur la mémoire flash interne.

2voto

Andy Brudtkuhl Points 1714

Le Xperia Z prend en charge la fonction USB-on-the-go, donc avec un adaptateur USB-OTG et un clavier USB, vous devriez être en mesure de saisir la phrase de chiffrement pour démarrer l'appareil.

2voto

DCKing Points 141

Bien que l'achat d'un câble OTG devrait fonctionner correctement, il existe en fait un moyen de déverrouiller votre appareil par le biais de l'ADB uniquement. Je l'ai appris à mes dépens lorsque j'ai inclus dans mon mot de passe un caractère qui ne pouvait pas être tapé sur le clavier virtuel. et un câble OTG n'a pas fonctionné pour des raisons que je n'aborderai pas.

Il existe deux commandes ADB avec lesquelles vous pouvez déclencher des événements clavier. Je les ai testées et elles fonctionnent toutes les deux sur l'écran de saisie de la clé de décryptage du disque. Ces commandes sont :

  • adb shell input text 'mytext' émule de la dactylographie mytext sur le clavier. Notez qu'il n'accepte pas arbitraire text : vous pouvez principalement l'utiliser pour envoyer des voyelles, des consonnes et des chiffres ASCII au clavier de cette manière. Les caractères spéciaux (par exemple ' , # , ; ) incluant la barre d'espacement en utilisant cette commande nécessitent une syntaxe spéciale ou ne sont pas acceptées.
  • adb shell inputevent <event_number> émule l'événement d'une pression sur une touche spécifique. Cela peut être utilisé pour taper certains caractères spéciaux. La liste complète des événements de touche est disponible dans la section Documentation pour les développeurs Android . Bien que les événements clavier pris en charge diffèrent selon la version d'Android, tous les événements clavier que vous utiliseriez pour saisir un mot de passe sont pris en charge depuis Android 3.0 (niveau 11 de l'API).

Voir ceci Réponse de Stack Overflow pour plus d'informations.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X