La nuit du hack , ce sont des confs , des ateliers, mais aussi et surtout des challenges (wargame). Le but étant de retrouver un flag pour valider l’épreuve.Voici mon premier write up pour l’épreuve « ICMP » classé dans la catégorie « stéganographie ».
Pour ce challenge, on nous demande d’analyser des trames ICMP considérées comme suspectes. Pour rappel ICMP c’est le protocole utilisé par la fameuse commande « ping« . Donc pour ceux qui ne le savaient pas encore, oui il est possible de cacher des données dans des trames ICMP. Il existe un champ « data » que l’on peut remplir avec ce que l’on veut du moment que c’est de l’héxadécimal.
Pour tenter de résoudre le challenge, on dispose d’1 fichier de capture réseau dispo en téléchargement ICI:
On ouvre le fichier « analysis.pcap » avec wireshark:
On s’aperçoit que les paquets sont largement supérieurs à 48 bytes (taille par défaut d’un paquet ICMP). C’est donc à chaque trame « echo request » que les données supplémentaires sont envoyées. Le but du jeu ici est de récupérer et rassembler toutes les données à chacune de ces trames émises.
Méthode utilisée:
A l’aide de « tshark », on récupère les données au format brut (héxadécimal)
tshark -r analysis.pcap -Y "icmp" -T fields -e data > raw_data
On convertit les données hexa à l’aide par exemple d’un petit script python :
f = open('raw_data', 'r')
lines = f.read().splitlines()
output = []
output2=[]
for l in lines:
try:
val = l.decode('hex')
if val not in output:
output.append(val)
except:
print "In Exception" + l
w = open('output_data', 'wb')
for i in output:
w.write(i)
w.close()
On exécute le script:
python ./extract.py
On ouvre le fichier « output_data » généré précédemment:
nano output_data
On s’aperçoit que c’est du base64 et qu’il n’y a plus qu’à décoder le texte. Pour ce faire,on peut utiliser un site qui propose ce service en ligne comme ici
On obtient alors un long texte écrit en anglais. Un petit « ctrl + f » pour chercher l’occurence « ndh » et …
bingo vla le flag! ( en gras ci-dessous)
Another one got caught today, it’s all over the papers. « Teenager
Arrested in Computer Crime Scandal », « Hacker Arrested after Bank Tampering »… […]+++The Mentor+++
Congratulations, ICMP exfiltatration is awesome! The flag is : ndh2k18_017395f4c6312759
Now let’s read the manual of one of the best tools you never had! […]
Le flag à rentrer pour valider ce challenge était donc:
ndh2k18_017395f4c6312759
Leave a Reply