Mémoire 1/4

Catégorie: Forensic Difficulté: - Flag: CTFREI{Nice-Hostname-buddy}

Challenge

Description


Ceci est un exercice d'analyse de mémoire vive. J'ai récupéré la mémoire de mon ordinateur Windows à un moment donné, et pleins d'informations utiles s'y cachent.

On va commencer par rechercher quelque chose de simple : le nom de l'ordinateur

C'est simple, il porte le mot CTFREI dedans. Le flag sera alors les mots qui suivent.

Format : CTFREI{Mots-trouvés} NB : Le hostname est composé de 3 mots, CTFREI ne compte pas

Note : Le fichier est le même pour les 4 étapes

sha1: c91d17b27d8bf5df0830bd6104801b065cca6ee9

Solution

2 fichiers sont fournis pour ce challenge :

  • memory.vmem : Les .vmem sont des fichiers de mémoire virtuelle utilisés dans des environnements comme VMware. Ils contiennent une image de la mémoire vive (RAM) de la machine virtuelle, sauvegardée sur le disque pour permettre des opérations telles que la mise en pause, la suspension ou la reprise de la VM. Le fichier .vmem stocke donc l'état complet de la mémoire de la VM à un instant donné.

  • memory.vmsn : Les .vmsn sont des fichiers de snapshot utilisés par VMware. Ils stockent l'état de la VM à un moment spécifique, incluant les données de la RAM, les paramètres de la VM et d'autres métadonnées comme les informations sur les disques virtuels.

En bref :

  • .vmem : sauvegarde l'état de la mémoire vive d'une VM.

  • .vmsn : contient un snapshot complet de la VM (incluant la RAM et les métadonnées).

L'outil principal que l'on va utiliser ici est Volatility3. Pour savoir ce que l'on a entre les mains, on va simplement utiliser le plugin windows.info.Info.

$ volatility3 -f memory.vmem windows.info.Info

Volatility 3 Framework 2.7.0
Progress:  100.00               PDB scanning finished
Variable        Value

Kernel Base     0xf80330002000
DTB     0x1ad000
Symbols ...volatility3/symbols/windows/ntkrnlmp.pdb/89284D0CA6ACC8274B9A44BD5AF9290B-1.json.xz
Is64Bit True
IsPAE   False
layer_name      0 WindowsIntel32e
memory_layer    1 FileLayer
KdVersionBlock  0xf80330c113a0
Major/Minor     15.19041
MachineType     34404
KeNumberProcessors      4
SystemTime      2024-09-12 10:52:17
NtSystemRoot    C:\Windows
NtProductType   NtProductWinNt
NtMajorVersion  10
NtMinorVersion  0
PE MajorOperatingSystemVersion  10
PE MinorOperatingSystemVersion  0
PE Machine      34404
PE TimeDateStamp        Fri May 20 08:24:42 2101

On sait maintenant qu'on a un Windows devant nous. Pour récupérer le nom de la machine, on peut lire les clés de registre avec le plugin windows.registry.printkey.PrintKey. Celle qui contient cette information sont situées dansControlSet001\Control\ComputerName\ComputerName :

$ volatility3 -f memory.vmem windows.registry.printkey.PrintKey --key "ControlSet001\Control\ComputerName\ComputerName"

Volatility 3 Framework 2.7.0
Progress:  100.00               PDB scanning finished
Last Write Time Hive Offset     Type    Key     Name    Data    Volatile

-       0xdd04bc44a000  Key     ?\ControlSet001\Control\ComputerName\ComputerName       -               -
2024-09-10 20:32:18.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ComputerName        (Default)       "mnmsrvc"   False
2024-09-10 20:32:18.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ComputerName        ComputerName    "CTFREI-NICE-HOS"   False

Nom de la machine : CTFREI-NICE-HOS. Mais il y a un souci puisque la description du challenge nous parle de trois mots sans compter CTFREI, donc ce que nous avons récupéré est tronqué.

D'autres clés de registre contiennent cette information, on peut aller chercher ControlSet001\Services\Tcpip\Parameters par exemple :

$ volatility3 -f memory.vmem windows.registry.printkey.PrintKey --key "ControlSet001\Services\Tcpip\Parameters"


Volatility 3 Framework 2.7.0
Progress:  100.00               PDB scanning finished
Last Write Time Hive Offset     Type    Key     Name    Data    Volatile

-       0xdd04bc44a000  Key     ?\ControlSet001\Services\Tcpip\Parameters       -               -
2024-09-12 10:03:48.000000      0xdd04bc48c000  Key     \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        Adapters                False
2024-09-10 20:21:35.000000      0xdd04bc48c000  Key     \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        DNSRegisteredAdapters      False
2024-09-12 10:03:48.000000      0xdd04bc48c000  Key     \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        Interfaces              False
2019-12-07 09:15:07.000000      0xdd04bc48c000  Key     \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        NsiObjectSecurity          False
2019-12-07 09:15:07.000000      0xdd04bc48c000  Key     \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        PersistentRoutes           False
2019-12-07 09:18:04.000000      0xdd04bc48c000  Key     \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        Winsock         False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_EXPAND_SZ   \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        DataBasePath    "%SystemRoot%\System32\drivers\etc" False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        Domain  ""      False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_DWORD       \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        ForwardBroadcasts  0False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        ICSDomain       "mshome.net"False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_DWORD       \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        IPEnableRouter  0  False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        NameServer      ""      False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_DWORD       \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        SyncDomainWithMembership    1       False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        NV Hostname             False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        Hostname        "CTFREI-Nice-Hostname-buddy"        False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        DhcpDomain      "localdomain"       False
2024-09-11 12:15:26.000000      0xdd04bc48c000  REG_SZ  \REGISTRY\MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters        DhcpNameServer  "192.168.19.2"      False

Tout en bas, on a la clé Hostname avec pour valeur CTFREI-Nice-Hostname-buddy

Dernière mise à jour

Cet article vous a-t-il été utile ?