Les chatons ont la réponse – FCSC 2020 // Cap ou Pcap


Wireshark, doo doo doo doo doo doo doo, //musique

pas de raison que je sois le seul à souffrir !

Intro

Un fichier de capture Wireshark, un fichier échangé, votre mission agent Hunt si vous l’acceptez est de retrouver le fichier top secret super important sécurité national DEFCON 1.

Explications

Nous allons devoir plonger dans les profondeurs abyssales de wireshark, ou pas. Vu le nombre de paquets ,cela ne devrait pas être trop compliqué de trouver notre petit dedans.

Pour les néophytes, nous avons devant nous une capture de paquets, c’est la base de la communication entre postes. Chaque protocole à son type de paquet et ils sont identifiables via wireshark et sont plus ou moins analysables (coucou le protocol TLS/SSL).

Allons pêcher Moby dick

Un petit click droit sur le premier paquet, suivre, puis flux TCP nous donne les informations dont nous avons besoin. Nous savons que nous allons devoir reconstruire/retrouver un fichier nommé flag.zip, qu’il a été exfiltré du poste via une commande netcat vers le poste 172.20.20.133:20200 au format hexadecimal sans saut de ligne.

Flexions, extractions

Comme nous avons trouvé quoi, comment et vers qui, nous allons devoir trouver le paquet qui contient le flux. La trace étant très petite, nous pouvons utiliser notre bon sens, et nous allons filtrer sur la taille des paquets, en espérant trouver une “anomalie” comparée aux autres.

Deux paquets se tirent la bourre en tête, le 27ème et le 12ème, commençons par le plus lourd :

0000   35 30 34 62 30 33 30 34 31 34 30 30 30 30 30 30   504b030414000000
0010   30 38 30 30 61 32 33 31 38 32 35 30 36 35 32 33   0800a23182506523
0020   35 63 33 39 34 32 30 30 30 30 30 30 34 37 30 30   5c39420000004700
0030   30 30 30 30 30 38 30 30 31 63 30 30 36 36 36 63   000008001c00666c
0040   36 31 36 37 32 65 37 34 37 38 37 34 35 35 35 34   61672e7478745554
0050   30 39 30 30 30 33 62 66 63 38 38 35 35 65 62 66   090003bfc8855ebf
0060   63 38 38 35 35 65 37 35 37 38 30 62 30 30 30 31   c8855e75780b0001
0070   30 34 65 38 30 33 30 30 30 30 30 34 65 38 30 33   04e803000004e803
0080   30 30 30 30 30 64 63 39 63 31 31 31 38 30 33 30   00000dc9c1118030
0090   30 38 30 34 63 30 62 66 64 35 38 34 30 34 30 38   0804c0bfd5840408
00a0   62 63 33 33 36 33 30 33 35 36 65 30 30 35 36 38   bc33630356e00568
00b0   63 32 62 31 37 37 64 64 65 66 39 65 65 62 35 61   c2b177ddef9eeb5a
00c0   38 66 65 36 65 65 30 36 63 65 38 65 35 36 38 34   8fe6ee06ce8e5684
00d0   66 30 38 34 35 39 39 37 31 39 32 61 61 64 34 34   f0845997192aad44
00e0   65 63 61 65 64 63 37 66 38 65 31 61 63 63 34 65   ecaedc7f8e1acc4e
00f0   33 65 63 31 61 38 65 64 61 31 36 34 64 34 38 63   3ec1a8eda164d48c
0100   32 38 63 37 37 62 37 63 35 30 34 62 30 31 30 32   28c77b7c504b0102
0110   31 65 30 33 31 34 30 30 30 30 30 30 30 38 30 30   1e03140000000800
0120   61 32 33 31 38 32 35 30 36 35 32 33 35 63 33 39   a231825065235c39
0130   34 32 30 30 30 30 30 30 34 37 30 30 30 30 30 30   4200000047000000
0140   30 38 30 30 31 38 30 30 30 30 30 30 30 30 30 30   0800180000000000
0150   30 31 30 30 30 30 30 30 61 34 38 31 30 30 30 30   01000000a4810000
0160   30 30 30 30 36 36 36 63 36 31 36 37 32 65 37 34   0000666c61672e74
0170   37 38 37 34 35 35 35 34 30 35 30 30 30 33 62 66   78745554050003bf
0180   63 38 38 35 35 65 37 35 37 38 30 62 30 30 30 31   c8855e75780b0001
0190   30 34 65 38 30 33 30 30 30 30 30 34 65 38 30 33   04e803000004e803
01a0   30 30 30 30 35 30 34 62 30 35 30 36 30 30 30 30   0000504b05060000
01b0   30 30 30 30 30 31 30 30 30 31 30 30 34 65 30 30   0000010001004e00
01c0   30 30 30 30 38 34 30 30 30 30 30 30 30 30 30 30   0000840000000000

Hummm, j’ai envie de dire, pas déconnant avec ce que l’on recherche, nous voulons de l’hexadécimal, et ici la colonne de droite en est remplie. En plus nous avons les magic Bytes d’un fichier zip au début, la chaîne suivante :

50 4B 03 04

Nous sommes désormais sûrs d’être au bon endroit, et allons donc pouvoir reconstruire le zip.

Méthode 1 : CyberChef

J’ai découvert cet outil lors du challenge FCSC, et franchement, il est super puissant, surtout dans un cas comme celui-ci. Vous entrez le stream hexdump dans la zone input, et comme par magie, il assemble la recette et vous donne la sortie du fichier zip!
À ce stade, nous avons notre flag :

FCSC{6ec28b4e2b0f1bd9eb88257d650f558afec4e23f3449197b4bfc9d61810811e3}
un peu trop facile, j’aime quand c’est un peu moins trop facile !

Méthode 2 : celle des semi-barbus

Car un vrai barbu aurait tout fait en ligne de commande, nous allons utiliser un autre outil en ligne que j’apprécie, Hexed.it.
Copions notre flux Hexdump comme mis dans la capture d’écran :

insérez les données
Et voilà !!!

Il ne nous reste plus qu’à exporter notre zip reconstruit, déziper et de profiter de notre flag durement gagné.


Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.