pagefile.sys est une mine d'or — et un piège. La propriété qui le rend
utile (un dump brut de mémoire paginée) est aussi à l'origine de chaque
limite de son exploitation.
Pas d'attribution aux processus
Une page du pagefile ne peut, à elle seule, être rattachée à un processus. Le mapping page → (Processus, AdresseVirtuelle) vit dans les page-table entries (PTE) en RAM. Sans dump RAM correspondant, on lit du contenu mais pas son contexte. C'est pourquoi Volatility ne traite pas directement le pagefile : il lui faut les PTE d'une image RAM.
Pas de réassemblage d'allocation
Une allocation plus grande que 4 Ko a été paginée en pages distinctes
écrites dans les emplacements libres du moment. Deux pages adjacentes dans
pagefile.sys n'ont presque jamais de lien. Le carving extrait des hits par
page ; il reconstruit rarement un fichier complet.
Compression mémoire de Windows 10+
À partir de Windows 10, le gestionnaire de mémoire intègre un
CompressionStoreManager qui compresse en RAM les pages froides avant
toute écriture disque. L'algorithme est Xpress-Huffman
(CompressionFormat 4).
Quand une telle page est écrite sur disque, ce sont les octets compressés
qui atterrissent dans pagefile.sys. Une recherche de chaînes rate alors
le contenu. La décompression exige le parsing de la table de longueurs de
codes Huffman — non trivial en WebAssembly et pas encore implémenté ici.
Le papier Blackhat 2019 « Paging All Windows Geeks » documente l'algorithme.
Cet outil détecte et signale les blocs Xpress-Huffman probables ; la décompression est un travail futur.
Pagination sélective
Tout ce qui est paginé n'est pas dans pagefile.sys : il y a aussi
swapfile.sys (apps UWP) et hiberfil.sys (snapshot RAM à l'hibernation).
Volatile, fragile, partiel
Les données peuvent être écrasées au prochain cycle de pagination. Un
pagefile.sys est un instantané d'un moment, pas un journal append-only.
Ce que ça reste pour autant
Malgré tout, pagefile.sys révèle régulièrement : credentials en clair,
URL et IP de C2, lignes de commande de processus éphémères, fragments de
ruches supprimées, contenu documentaire autrement irrécupérable. Pour le
triage, c'est souvent suffisant.