Vous êtes sur la page 1sur 8

Pour commencer nous allons donner une bref définition de l'analyse forensic

L’analyse forensic c'est le fait de retrouver les trace d'une activité malveillante.

Notre présentation portera en premier lieu sur l'analyse de la mémoire d'une machine Windows, le
scénario est le suivant: l'utilisateur d'une machine Windows a ouvert un fichier Word et depuis lors il
n'arrive plus à se connecter à son site préféré.

Comme c’est donné dans ce challenge.

le dump de la mémoire de sa machine nous a été donne afin de retrouver l'URL de ce site.

// En informatique, le terme dump désigne généralement une copie brute (sans transformation) de
données d'un périphérique à un autre ; par exemple pour effectuer une sauvegarde de données, les
afficher sur un terminal, ou faire persister les données d'une mémoire vive. //
Nous allons rappeler comment se passe l'attaque par macro avec les documents offices.

L'attaque par macro consiste à injecter dans un document Word ou Excel un code vba malicieux afin
de compromettre une machine. Comme Ndeye nous l'a expliqué la fois dernière, l'extension du fichier
malicieux sera de type docm pour les documents Word.

Nous allons entrer dans le vif du sujet.

La première étape d'une analyse de mémoire est de déterminer le système d'exploitation du dump de
la mémoire et cela se fait grâce à la commande imageinfo de volatility.

C'est ce que nous allons essayer de faire avec le dump de mémoire à notre disposition.

volatility est un outil incontournable pour faire de l'analyse de mémoire.

la commande -f permet de donner le nom du fichier à analyser

root@pentest:~/Bureau/macro/ch20# volatility -f memory.dmp imageinfo

A la line suggested profil : il nous donne les profils potentiels du OS du dump

Avec la commande profile et la commande pslist {pslist qui nous permet d'afficher les processus qui
ont été lancé sur la machine } nous allons commencer notre analyse

Pour quoi commencer par les processus : Tout application exécutée sur la machine crée
automatiquement un processus donc on commence par l'analyse des processus on saura quelles sont
les applications qui ont été ouvertes.
Lancons la commande: volatility -f memory.dmp --profile=Win7SP1x86_23418 pslist

Le but de l'analyse des processus est soit de trouver un processus anormal ou un processus en relation
avec l'attaque subie par la machine. Dans notre cas on sait que l'attaque est en relation avec
l’application Word et l'URL d'un site qui n'est plus accessible. ET pour consulter un site il faut forcément
utiliser un navigateur .

Notre investigation portera d'abord sur un processus Word et le processus d'un navigateur.

Maintenant analysons la liste des processus.

DANS la liste il y'a trois processus qui nous intéresse le WINWORD.exe qui est un processus créé lors
de l'ouverture d'un fichier Word et les process iexplore.exe qui concerne le navigateur internet
explorer

L'attaque par macro utilise l'invite de commande pour s'exécuter. C'est pourquoi nous allons
rechercher l'historique de la console cmd. Cela se fait grâce à la commande cmdline

Nous allons voir ce que donne l'historique des commandes. Lançons la commande suivante:

volatility -f memory.dmp --profile=Win7SP1x86_23418 cmdline


On remarque que l'application WINWORD a ouvert un fichier se nommant Very_sexy.docm, ce fichier
pourrait etre la cause de la compromission.

Essayons de voir dans quelle address de mémoire est enregistré le fichier, cela se fait grace à la
commande filescan. Puisqu'on connait le nom du fichier que l'on veut retrouver, on peut appliquer un
filtre grace à la commande linux grep

Lançons la commande suivante :


volatility -f memory.dmp --profile=Win7SP1x86_23418 filescan | grep Very_sexy.docm

On voit que que le fichier est enregistré dans 2 adresses de la mémoire donc on peut récupérer le
fichier à fin de l'analyser grace à la commande dumpfiles -Q pour l'adresse de la mémoire et -D pour
donner l'endroit où le fichier sera sauvegardé sur notre machine.

Lançons la commande:

volatility -f memory.dmp --profile=Win7SP1x86_23418 dumpfiles -Q 0x000000000eec5988 -D ./

Listons les fichiers grâce à la commande ls

On remarque deux fichiers file.None.0x84cb24e8.dat et file.None.0x84f25cb0.vacb , celui qui nous


intéresse est le fichier avec l'extension .dat qui est en réalité notre fichier Word, nous allons le
renommer

Lancons la commande :

mv file.None.0x84cb24e8.dat Very_sexy.docm

Ouvrons le fichier pour voir son contenu

Voici donc le fichier qu'il a ouvert

Maintenant passons à l'extraction du code malicieux grace à l'outil olevba


Lancons la commande:

olevba Very_sexy.docm

Voici le code malicieux qui a été exécuté lors de l'ouverture du fichier.

Analysons le code : on remarque qu'il commence par créer un objet dans le registre

Cette objet fait passer les communications via internet par le proxy suivant
http://192.168.0.19:8080/BenNon.prox

Maintenant pour retrouver l'url nous allons extraire les dump mémoire des deux processus iexplore
pour faciliter l'analyse car dans la liste des processus ils sont les seuls faisant réféérence à un navigateur
et comme nous l'avons dit plus haut on peut joindre un url que via un navigateur

Lançons la commande :

volatility -f memory.dmp --profile=Win7SP1x86_23418 memdump -p 3388,3476 -D ./

{-p pour specifier l'identifiant du processus également appelé PID }

LIstons les fichiers avec ls


Voici nos deux dump : 3388.dmp et 3476.dmp

On va essayer de retrouver l'url grâce à une commande linux strings qui nous permet d'extraire les
chaines de caractère dans un fichier.

Lançons la commande en appliquant un filtre pour que toute chaine de caractère contenant le mot url
nous soit renvoyer

strings 3388.dmp | grep url

On remarque une fonction qui recherche le proxy utiliser par un url *.ashleymadison.com/*. L’asterix
devant et l'asterix derrière signifie tout url contenant le domaine ashleymadison.com.

Nous sommes arrivés à la fin de ce challenge ; voici donc l'url qui a été bloqué lors de l'ouverture du
fichier Word malicieux.
Merci pour votre attention !!