Sous l'Océan

Auteur : Fred Dubosse - Fwed

Enoncé

Nous pensons avoir retrouvé la trace d'Eve Descartes. Nous avons reçu un fichier anonyme provenant d'un smartphone Android (probablement celui de son ravisseur). Retrouvez des informations dans son historique de position.

Le flag est de la forme DGSESIEE{x} avec x une chaine de caractères

memdump.txt (SHA256=29c702ff8dc570319e5e8d05fc4cb96c1536b595b9a4e93d6205774f9afd2bff) : http://challengecybersec.fr/d3d2bf6b74ec26fdb57f76171c36c8fa/memdump.txt

Reconnaissance

On récupère le fichier et on investigue rapidement dessus :

$ wget http://challengecybersec.fr/d3d2bf6b74ec26fdb57f76171c36c8fa/memdump.txt
$ file memdump.txt
$ ls -al
$ cat memdump.txt | grep DGSE

L'énoncé est assez parlant : "Retrouvez des informations dans son historique de position". On va aller chercher les infos qui nous semblent pertinentes :

$ cat memdump.txt | grep gps > 01-coords.txt

On constate qu'effectivement, on a un sacré paquet de coordonnées GPS, proches. On va essayer de voir le parcours qu'elles créent, peut-être entourent- elles un point précis ?

On regarde le fichier, et on en supprime le début et la fin rapidement, qui semble être du bruit. Enfin, on ne conserve que les données GPS :

$ sed "s/.*gps //g" 01-coords.txt | sed "s/hAcc.*//g" > 02-coordonnees_nettoyees
#On remplace les virgules par des points :
$ sed -i 's/,/./g' 02-coordonnees_nettoyees
#On remplace les espaces par des virtules :
$ sed -i 's/ /,/g' 02-coordonnees_nettoyees
#On supprime les virgules de fin de ligne créées par notre commande précédente :
$ sed 's/,$//g' 02-coordonnees_nettoyees

Explications

A ce stade, on va tracer nos coordonnées sur une carte. Un site très pratique est le suivant : https://www.gpsvisualizer.com/map_input On va juste ajouter en en-tête de notre fichier les libellés de nos coordonnées : longitude,latitude

Ce qui nous donne le fichier suivant :

longitude,latitude
-47.1462046,30.9018186
-47.1963297,30.9012294
-47.1970164,30.8641039
-47.1438013,30.8652827
-47.1448313,30.9642508
-47.0820032,30.8641039
-47.1300684,30.8643986
-47.1304118,30.9006402
-47.0789133,30.9003456
-47.0847498,30.8131067
-47.1307551,30.8148758
-47.1304118,30.8340395
-47.1084391,30.8319759
-47.0631205,30.8649880
-47.0322214,30.9015240
-47.0047556,30.8608621
-47.0411478,30.8632198
-46.9934318,30.8750074
-46.9481132,30.874418
-46.953263,30.9085939
-46.9961784,30.9047644
-46.9927451,30.8511361
-46.9457099,30.8508414
-46.9295737,30.8517256
-46.9072578,30.8926859
-46.8797919,30.853494
-46.9137809,30.8505466
-46.8571326,30.8912128
-46.856446,30.8484834
-46.8173416,30.8745954
-46.7703064,30.8743007
-46.7778595,30.9096549
-46.8242081,30.904058
-46.8125351,30.8404074
-46.7733963,30.8474818
-46.7438706,30.8772474
-46.7009552,30.8784261
-46.7054184,30.9034689
-46.7479904,30.8978716
-46.7376908,30.8474818
-46.7115982,30.8498398
-46.6456803,30.926149
-46.6625031,30.9264435
-46.6611298,30.8748901
-46.6473969,30.8657549
-46.6580399,30.8563241
-46.6587265,30.8014891
-46.6377838,30.7985401
-46.5794168,30.8664391
-46.5780435,30.9070986
-46.617869,30.9082768
-46.6213022,30.8463976
-46.575297,30.8428605
-46.5746103,30.869386
-46.5114389,30.9053311
-46.5443979,30.904742
-46.5395914,30.8351962
-46.4997659,30.8351962
-46.4729868,30.9006178
-46.433848,30.9017961
-46.433848,30.8623132
-46.4695535,30.8623132
-46.433848,30.8629027
-46.4297281,30.8222244
-46.4674936,30.8269416
-46.3644968,30.8204554
-46.3727365,30.9076877
-46.4214884,30.8682072
-46.3425241,30.8629027
-46.3184915,30.8198657
-46.3219248,30.9041528
-46.2752329,30.8169173
-46.2793527,30.9035636
-46.247767,30.921826
-46.2196146,30.9212369
-46.2154947,30.8646709
-46.2409006,30.8469871
-46.2100015,30.8346066
-46.2120615,30.7827088
-46.2450205,30.7762196

Résolution

On examine le tracé et on constate que le tracé n'entoure rien : il écrit le message secret (le flag) :

Flag

DGESIEE{OC34N}