Cover Image

CAF 2023 - IT Administrator Credentials


Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge Stéganographie ‘IT Administrator Credentials’ proposé lors du CTF Cyber Africa Forum 2023.

A notre disposition nous avons ce fichier word : ici

En analysant le document docx, nous pouvons remarquer que le fichier est protégé par un mot de passe.

Le premier reflèxe en voyant ça est d’utiliser office2john pour générer le hash du document que nous avons à disposition pour tenter une attaque par dictionnaire avec John The Ripper pour lire le contenu du fichier:


$ office2john Administrator_notes.docx | tee -a hash
Administrator_notes.docx:$office$*2013*100000*256*16*504fbe77359c707a81ae26d89f031d59*4a5a4834554b31de39f464c5cd963721*ec8a42ee5c5238b6c93d00a7028548d53ea8e5f3650adbff01a84d5b43c89a62

Puis:

$ john hash -w=/usr/share/wordlists/rockyou.txt 
Using default input encoding: UTF-8
Loaded 1 password hash (Office, 2007/2010/2013 [SHA1 512/512 AVX512BW 16x / SHA512 512/512 AVX512BW 8x AES])
Cost 1 (MS Office version) is 2013 for all loaded hashes
Cost 2 (iteration count) is 100000 for all loaded hashes
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status

Après 20 minutes d’execution, je me rend compte qu’aucun mot de passe n’a été “cracké”, à ce moment me vient l’idée de générer la wordlist rockyou.txt mais dans le sens inverse:

tac /usr/share/wordlists/rockyou.txt > rockyou_inverse.txt

En faisant une nouvelle tentative:

$ john hash -w=rockyou_inverse.txt 
Using default input encoding: UTF-8
Loaded 1 password hash (Office, 2007/2010/2013 [SHA1 512/512 AVX512BW 16x / SHA512 512/512 AVX512BW 8x AES])
Cost 1 (MS Office version) is 2013 for all loaded hashes
Cost 2 (iteration count) is 100000 for all loaded hashes
Will run 8 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
!a@s#d$f%g555    (Administrator_notes.docx)     
1g 0:00:00:04 DONE (2023-04-18 13:52) 0.2188g/s 840.2p/s 840.2c/s 840.2C/s !Toulouse..!adio12
Warning: passwords printed above might not be all those cracked
Use the "--show" option to display all of the cracked passwords reliably
Session completed.

Nous venons de cracker le mot de passe du document avec succès.

En consultant le document nous avons ce message:

Par tout hasard je tente de faire un CTRL+A pour voir si du texte ne serai pas caché avec des caractères blancs.

Cette tentative à été fructueuse puisque dans le pied de page se trouve un texte coloré en blanc donc invisible à l’oeil nu pour le lecteur:

ildfk=YlyvXpJxc;mxpptloa=T@x8(&'#12m

J’obtiens cette chaine de caractère incompréhensible puis je décide d’aller sur Cyberchef, ayant déjà l’hypothèse que ce texte ressemble étrangement à un texte chiffé par substitution, je sélectionne le Cipher Vigenère, et j’essaie des clés d’un caractère de a à z, en testant la clé x, nous obtenons la chaîne suivante:

login=BobyAsMaf;password=W@a8(&'#12p

Nous venons d’obtenir le login et le mot de passe de l’administrateur.

En respectant le format du flag demandé,

Le flag est CAF_{BobyAsMaf:W@a8(&'#12p}