Android Cloud - 128 points

Problème

Un service américain propose de se débarasser définitivement de son smartphone grâce à sa nouvelle plateforme de AaaS (Android as a Service). Mais méfiant de nature, vous décidez d'aller vérifier par vous même que la sécurité correspond à vos standards. Lien du challenge : http://android-cloud.phack.fr

Résolution

En arrivant sur le site, on a un téléphone Android qui est verrouillé par un pattern. On peut essayer d'en faire au hasard, mais cela n'affiche juste "Wrong code". Il faut trouver une manière de le deviner.

image-20210403193523500

En bas à gauche du site, on a une rubrique "Last backup on Sat Mar 10 2020, 17:16:18 (UTC+1)". En cliquant sur le mot souligné "backup", on arrive sur le code d'un fichier .php dont voici le début:

# For debug, must remove later !!! highlight_file ( __FILE__, false ); die(); $filename = "backup@" . date("m-d-Y") . ".zip"; $archive = new ZipArchive(); if (!$archive->open("./dev-backups/" . $filename, (ZipArchive::CREATE | ZipArchive::OVERWRITE))) { die("Archive init failed"); }

On remarque que le nom de fichier d'une backup commence toujours pas "backup@", puis contient la date sous la forme "mois-jour-année" et enfin l'extension ".zip".

Ayant la date de la dernière backup, on peut former le string suivant: backup@03-10-2020.zip.

Grâce à la suite du code, on sait que les backups sont stockées dans le dossier dev-backups/.

On a donc le chemin complet de la dernière backup: url/dev-backups/backup@03-10-2020.zip, ce qui nous fait télécharger l'archive quand on s'y rend. Une fois l'archive téléchargée, on la décompresse et on obtient ce qui semble être un système Android:

image-20210403194727409

On va donc essayer de cracker le code avec le fichier ou il est stocké, gesture.key dans data/system/gesture.key.

Il existe plein d'outils pour obtenir le code, j'ai utilisé celui-ci: https://github.com/sch3m4/androidpatternlock

clem@ubuntu:~/Desktop/phack/forensics/android$ python2 aplc.py ./data/system/gesture.key ################################ # Android Pattern Lock Cracker # # v0.2 # # ---------------------------- # # Written by Chema Garcia # # http://safetybits.net # # chema@safetybits.net # # @sch3m4 # ################################ [i] Taken from: http://forensics.spreitzenbarth.de/2012/02/28/cracking-the-pattern-lock-on-android/ [:D] The pattern has been FOUND!!! => 04137658 [+] Gesture: ----- ----- ----- | 1 | | 3 | | | ----- ----- ----- ----- ----- ----- | 4 | | 2 | | 7 | ----- ----- ----- ----- ----- ----- | 6 | | 5 | | 8 | ----- ----- ----- It took: 0.6148 seconds

On obtient le code ainsi que le chemin à dessiner, qu'on peut directement faire sur le site:

image-20210403195755304

Flag: PHACK{T4kec4rE_oF_Ur_B4cKupS!}