Hier, j'ai en quelque sorte oublié le motif de sécurité Android sur mon téléphone. Grâce à ma mémoire musculaire, je sais plus ou moins ce que c'était, mais je n'arrive pas à trouver le vrai motif. J'essaie donc de le forcer par force brute pour pouvoir déverrouiller le téléphone à nouveau.
Décryptage avec motif
Depuis que j'ai installé TWRP recovery, je peux utiliser la fonction twrp decrypt 'passphrase'
pour les tentatives de décryptage. J'utilise un motif 4x4 (OnePlus5, LineageOS, Android 8.1, TWRP clockworkx 3.2.3-1) pour lequel chaque point de la grille se traduit par un caractère différent, que vous devez concaténer pour construire votre phrase de passe. Je crois que la grille 4x4 ressemble à ceci :
1 2 3 4
5 6 7 8
9 : ; <
= > ? @
Un motif de ligne allant du haut à gauche au bas à droite donnerait une phrase de passe de 16;@
vous permettant de décrypter votre téléphone dans TWRP en utilisant adb shell twrp decrypt '16;@'
. ( via )
Tentative de force brute
Grâce à cette méthode, j'ai essayé tous les modèles possibles qui, selon moi, pourraient l'être, mais je n'ai pas réussi à le décrypter. La commande renvoie toujours Attempting to decrypt data partition via command line.
a stdout
et rien d'autre. J'essaie rapidement chaque motif l'un après l'autre sans délai, en détectant si la sortie de la commande diffère de la sortie attendue (ce qui ne s'est pas encore produit).
Questions
Comme je n'ai pas encore réussi, je me demande si ma mise en œuvre est correcte. Je n'ai pas de téléphone pour faire le test, donc j'ai quelques questions :
- Est-ce que le
twrp decrypt
produit quelque chose d'autre lorsque le décryptage réussit ? - Est-ce que le décryptage réussi crée un dispositif de bloc à
/dev/block/dm-0
que je peux sonder ? - Dois-je attendre quelques secondes après chaque tentative avant de sonder le succès ?
- Existe-t-il une sorte de délai d'attente caché (obligation d'attendre 30 secondes après la tentative) ?
- Y a-t-il une autre méthode que je peux utiliser pour vérifier le succès ?
Outil de force brute
J'ai construit l'outil suivant pour cette tentative de force brute, si cela est pertinent pour l'implémentation que j'ai utilisée : apbf
Je ne comprends pas ce qui ne va pas dans cette mise en œuvre. Elle ne semble pas décrypter correctement le téléphone, ce qui me fait penser que la clé pourrait être corrompue.
Je suis en train de redémarrer la récupération après la tentative d'atteinte, mais cela prend beaucoup de temps pour 1400 modèles possibles. J'aimerais être sûr que la tentative n'est pas inutile.
Puisque je connais la longueur approximative du motif, que je suis certain que seules les deux colonnes de droite sont utilisées et que je sais que les points du motif n'ont jamais une distance supérieure à 1, je peux réduire considérablement l'espace de recherche du motif et limiter les possibilités.
Le cryptage est activé sur le téléphone, je crois qu'il est basé sur des fichiers. Quand dans TWRP, le /data/data
y /sdcard
semble répertorier les noms de fichiers cryptés.