Der Versuch, das Android-Sicherheitsmuster über TWRP über adb brutal zu erzwingen

7

Gestern habe ich irgendwie das Android-Sicherheitsmuster auf meinem Handy vergessen. Aufgrund des Muskelgedächtnisses weiß ich irgendwie, was es war, kann aber das wahre Muster nicht herausfinden. Deshalb versuche ich, es brutal zu erzwingen, damit ich das Telefon wieder entsperren kann.

Mit Muster entschlüsseln
Da ich die TWRP-Wiederherstellung installiert habe, kann ich den twrp decrypt 'passphrase'Befehl für Entschlüsselungsversuche verwenden. Ich verwende ein 4x4-Muster (OnePlus5, LineageOS, Android 8.1, TWRP clockworkx 3.2.3-1), für das jeder Punkt im Raster in ein anderes Zeichen übersetzt wird. Sie sollten es verketten, um Ihre Passphrase zu erstellen. Ich glaube, das 4x4-Gitter sieht so aus:

1   2   3   4
5   6   7   8
9   :   ;   <
=   >   ?   @

Wenn Sie ein Linienmuster von links oben nach rechts unten haben, erhalten Sie eine Passphrase von 16;@, mit der Sie Ihr Telefon in TWRP mit entschlüsseln können adb shell twrp decrypt '16;@'. ( via )

Brute-Force-Versuch
Mit dieser Methode habe ich alle möglichen Muster ausprobiert, von denen ich glaube, dass sie es sein könnten, aber es ist mir nicht gelungen, sie zu entschlüsseln. Der Befehl kehrt immer Attempting to decrypt data partition via command line.zu stdoutund sonst nichts zurück. Ich versuche schnell, jedes Muster ohne Verzögerung nacheinander auszuführen, um festzustellen, ob eine Befehlsausgabe von der erwarteten Ausgabe abweicht (was noch nicht geschehen ist).

Fragen
Da ich noch keinen Erfolg hatte, frage ich mich, ob meine Implementierung korrekt ist. Ich habe kein Telefon zum Testen, daher habe ich einige Fragen:

  1. Gibt der twrp decryptBefehl etwas anderes aus, wenn die Entschlüsselung erfolgreich ist?
  2. Erstellt eine erfolgreiche Entschlüsselung ein Blockgerät /dev/block/dm-0, nach dem ich suchen kann?
  3. Sollte ich nach jedem Versuch einige Sekunden warten, bevor ich nach Erfolg suche?
  4. Gibt es eine versteckte Zeitüberschreitung (30 Sekunden nach dem Versuch müssen warten)?
  5. Gibt es eine andere Methode, mit der ich nach Erfolg suchen kann?

Brute-Force-Tool
Ich habe das folgende Tool für diesen Brute-Force-Versuch erstellt, wenn dies für die von mir verwendete Implementierung relevant ist: apbf

Ich verstehe nicht, was an dieser Implementierung falsch ist. Es scheint das Telefon nicht richtig zu entschlüsseln, was mich fragt, ob der Schlüssel beschädigt sein könnte.

Ich starte derzeit die Wiederherstellung nach dem Erreichungsversuch neu, aber das kostet viel Zeit für 1400 mögliche Muster. Ich möchte sichergehen, dass der Versuch nicht nutzlos ist.


Da ich die ungefähre Musterlänge kenne, sicher bin, dass nur die beiden rechten Spalten verwendet werden, und weiß, dass die Punkte im Muster niemals einen Abstand von mehr als 1 haben, kann ich den Mustersuchraum erheblich reduzieren und die Möglichkeiten einschränken.

Die Verschlüsselung ist auf dem Telefon aktiviert. Ich glaube, sie ist dateibasiert. Wenn in TWRP, das /data/dataund /sdcardscheint Verzeichnis verschlüsselten Dateinamen aufzulisten.

Tim Visee
quelle
Gadget Guru
Löschen Sie die DATEN der Sperrbildschirm-Anwendung und fertig.
Gadget Guru
@ Zillinium leider funktioniert das nicht, es scheint, dass der Verschlüsselungsschlüssel für /datadurch die Passphrase geschützt ist. Es hat früher funktioniert, aber nicht mehr. Korrigiere mich, wenn ich falsch liege.
Tim Visee
1
Ich bin mir nicht sicher ... Es klingt wie ein Teil der Oreo Forced Encryption ...
Gadget Guru

Antworten:

5

Nach einer Weile fand ich heraus, was das Problem war, mit einem frisch geflashten Telefon. Hier beantworte ich meine eigene Frage.


  1. Gibt der Befehl twrp decrypt etwas anderes aus, wenn die Entschlüsselung erfolgreich ist?

    Ja, es gibt ungefähr Folgendes aus:

    Attempting to decrypt data partition via command line.
    Data successfully decrypted
    Updating partition details...
    ...done
    
  2. Erstellt eine erfolgreiche Entschlüsselung ein Blockgerät unter / dev / block / dm-0, nach dem ich suchen kann?

    Nein.

  3. Sollte ich nach jedem Versuch einige Sekunden warten, bevor ich nach Erfolg suche?

    - -

  4. Gibt es eine versteckte Zeitüberschreitung (30 Sekunden nach dem Versuch müssen warten)?

    Ja , sehr wichtig! Etwa 10 Sekunden . Aufeinanderfolgende Versuche innerhalb dieses Zeitrahmens schlagen ohne jegliche Warnung fehl.

  5. Gibt es eine andere Methode, mit der ich nach Erfolg suchen kann?

    - -


Aufeinanderfolgende Aufrufversuche twrp decryptmüssen also mindestens 10 Sekunden dauern, da sie sonst fehlschlagen. Das einzige, was mit dem entwickelten Tool falsch war, ist, dass ich dieses Timeout nicht implementiert habe.

Tim Visee
quelle
1
interessante Problemumgehung! Haben Sie Ihre vorherigen Daten erfolgreich entschlüsselt?
Alecxs
Traurigerweise Nein. Da ich es bereits seit vielen Stunden versucht hatte, wischte ich einfach mein Telefon ab und testete das Tool anschließend mit einem Muster, von dem ich wusste, dass es richtig war. Da habe ich das Timeout entdeckt. Wenn ich das vorher gewusst hätte, hätte ich die vorherigen Daten entschlüsseln können, ja.
Tim Visee