juillet 25th, 2010Write up challenge forensic organisé par R00tbsd
Bonjour,
Ce samedi 24 juillet, r00tBSD nous a concocté un peu challenge forensic.
Le voici disponible à cette adresse:
http://www.r00ted.com/doku.php?id=challenge_forensics
Le but étant de trouver 10 hash. Nous nous sommes mis à 4 dessus: moi, shp, zad et m_101.
Dans ce genre de challenges, il faut fouiller partout et n'importe où. R00tBsd nous avait cependant prévenu que le challenge serait facile. Donc c'est parti
En ouvrant l'archive et en la décompressant, on voit 6 dossiers (dont un caché) + un fichier.
Commençons par le 1er dossier Documents:
1. On ne voit que des fichiers pdf. Une premiere intuition qui se confirme rapidement, allez chercher dans les propriétés des documents. On ouvre donc un par un les documents jusqu'à tomber sur WorldOfFractal.pdf. Avec le visionnaire de document pdf de Ubuntu, on clique sur "Fichier" puis "Propriété". Le flag se trouve être l'auteur. (trouvé par shp).
2. Ouvrons maintenant le dossier Downloads. Nous y trouvons un fichier .pcap qui peut être ouvert par Wireshark. Un clic sur "Analyse" puis "Follow TCP stream" nous permet de voir le trafic genéré et enregistré. On y voit qu'un fichier flags.rar a été telechargé à cette adresse: http://www.r00ted.com/downloads/flags.rar mais FAIL. Rien du tout ici. Sur la fenêtre précendente, cliquons sur "enregistrons sous" et mettons le nom "flags.rar". Ouvrons le et ohhhhh! Il est protégé par mot de passe. Essayons de le cracker ... J'utilise alors rarcrack sous linux ou Advanced Rar Password Recovery sous windows. Dans les 2 cas, je tourne à 50 passwords / seconde en Bruteforce. Un peu long. R00tbsd décide donc de laisser un indice:
de la langue francaise
que j'affectionne particulierement
et sans l'accent
ca vous aide ? =)"
Bien sûr que oui ça nous aide! Il fallait penser à la biere (sans accent s'il vous plait messieurs). Et voila, on ouvre le fichier (qui est une image) contenu dans l'archive et le flag s'affiche à l'écran. C'est m_101 qui m'a donné un coup de pouce sur cette épreuve.
3/4. Deux flags étaient contenus dans ce dossier Images. Un dans l'image "fractale5.jpg" et un autre dans "jpg_NDH080408ak.jpg". Pour la 1ere, il suffisait d'ouvrir l'image dans un éditeur hexadécimal où nous pouvions voir l'image dès les premières lignes. Quant à la deuxième image, le flag se trouvait dans les métadonnées exif de l'image. Des tools comme "Exif viewer" (extension firefox) ou "exif" sous linux (sudo apt-get install exif).
Avec exif viewer, il suffit d'ouvrir l'image avec l'extension et de scroller un peu vers le bas pour voir un thumbnail avec le flag dedans. Avec "exif", une seul commande permettait d'extraire le thumbnail:
Écrit le fichier 'jpg_NDH080408ak.jpg.modified.jpeg'.
Il ne reste plus qu'à aller voir jpg_NDH080408ak.jpg.modified.jpeg
5. Après cela, nous voici dans le dossier Musique avec dedans une chanson. Comme auparavent, j'eus l'intuition d'aller voir les métadonnées. Pour les sons, on appelle cela des tags. Un logiciel comme "easytags" sous linux fait très bien l'affaire. On voit deux tags intéressants: album et comments qui contiennent chacun un base64. Après les avoir assemblés tous les deux, on obtient à nouveau un tags!
6/7. Le dossier Private contient lui 2 flags très facile à trouver. Le premier est contenu dans un fichier caché appelé ".facile", l'autre dans le fichier "priv.txt". On voit tout de suite que le flag est encodé avec le code de cesar. On fait passer ça à la moulinette et on voit apparaitre un décallage de 19. Encore un flag!
8.N'oublions pas le dossier caché .mozilla! Ce dossier correspond à un dossier de profils sous firefox. En ce qui me concerne, je me suis rendu dans /home/tryks/.mozilla, j'ai backupé les fichiers dedans et je les ai remplacé par ceux fourni par R00tbsd. Direction les marques pages. Rien de spécial. Direction l'historique où l'on peut voir une adresse intéressante! http://www.r00ted.com/forensics/flags.txt
Bien sûr, celle-ci est protégé par .htaccess donc direction les mots de passes enregistrés! Edition > préférences > sécurité > mots de passes enregistrées. Celui-ci est protégé. Cassons donc ce mot de passe principal!
Une recherche sur google nous permet de tomber la dessus: http://www.korben.info/cracker-le-mot-de-passe-principal-de-firefox.html
Et c'est shp qui va s'occuper de cracker cela. Dans un prompt,
=> firemaster.exe -b -q -l 4 C:\....\appdata\....\répertoireProfil
=> "Your firefox master password is : hack"
Le master password est donc hack, ce qui permet de recuperé les mots de passes enregistrées et donc de se connecter à l'adresse pour récuperer le flag (http://www.r00ted.com/forensics/flags.txt).
9/10. Enfin les deux derniers flags étaient contenus dans le FS.dd. En essayant de le monter, on nous indique qu'il est défectueux. Donc réparons le et montons-le
[...] Répondre oui partout [...]
FS.dd: ***** LE SYSTÈME DE FICHIERS A ÉTÉ MODIFIÉ *****
FS.dd : 12/25688 fichiers (0.0% non contigus), 4805/102400 blocs
tryks@tryks-laptop:~/Bureau/forensics_challenge$ sudo mkdir /mnt/forensic
tryks@tryks-laptop:~/Bureau/forensics_challenge$ sudo mount -o loop -t ext2 FS.dd /mnt/forensic/
Nous voici donc avec notre FS.dd réparé et monté.
drwxr-xr-x 3 root root 1024 2010-07-15 21:56 .
drwxr-xr-x 4 root root 4096 2010-07-24 22:53 ..
-rw-r--r-- 1 tryks tryks 4609 2010-07-15 21:55 flags.jpg
drwx------ 2 root root 12288 2010-07-15 21:53 lost+found
On observe une image flags.jpg qui contient un flag.
Une autre solution pour trouver l'image était de faire du "file carving" (au choix on peut utiliser foremost ou bien scalpel)
Avec foremost
Processing: FS.dd
|*|
tryks@tryks-laptop:~/Bureau/forensics_challenge$ ls output/jpg/
00012290.jpg
Et voilà notre image et notre flag dedans
Le dernier flag se trouve être dans les fichiers effacés.
Avec l'aide de ce site, essayons de le récuperer.
On utilise d'abord la commande "debugfs" qui permet de retrouver les inodes récemments supprimées.
debugfs 1.41.11 (14-Mar-2010)
La commande suivante permetta de voir ses inodes
On voit qu'il y en a deux
13 0 100600 4096 4/ 4 Thu Jul 15 21:56:49 2010
14 0 100644 40 1/ 1 Thu Jul 15 21:56:53 2010
2 deleted inodes found.
On essaie de récupere ces deux inodes que l'on stock dans le repertoire courant.
debugfs: dump <14> 14.aaa
On ouvre 13.aaa sans trouver quoique ce soit d'intéressant. Enfin on ouvre 14.aaa pour voir un hash.
La deuxième solution étant de faire un strings sur le FS.dd
[...]
Joli : 2843062153121fed0558613602645f81
[...]
Et voilà pour les flags!
Il faut savoir que de nombreux flags étaient disponible en faisant des strings et des grep à tout va sur des chaines de 32 characteres. J'ai préfére par là utiliser des méthodes plus propre mais surtout plus instructives.
Ce challenge étant fini, merci à shp, zad et m_101 qui m'ont aidé à résoudre ces épreuves, à R00tbsd qui a crée ce challenge et enfin à sh4ka qui l'a résolu et qui gagne un magnifique lot : un tee-shirt chez Get Digital
Writeup chez Stalkr et chez m_101.
Bonne soirée à tous et merci
25 juillet , 2010 à 22 h 40 min
Write-up sympatoche, j’ai mis un lien sur mon blog ;).