Aller au contenu
← Retour au blog

pagefile.sys vs hiberfil.sys vs swapfile.sys : quel fichier de pagination Windows analyser

20/05/2026 · 5 min de lecture

Ouvrez la racine d'un disque système Windows avec les fichiers cachés et système affichés et vous y verrez jusqu'à trois fichiers liés à la pagination : pagefile.sys, hiberfil.sys et swapfile.sys. On les confond souvent — les trois sont « des choses que Windows utilise pour la mémoire » — mais ils renferment des contenus différents et ont chacun leur valeur forensique propre.

FichierTaille par défautCe qu'il contientQuand il est écrit
pagefile.sys~1,5×–3× RAMMémoire anonyme paginée, pages brutes de 4 KoEn continu, sous pression mémoire
hiberfil.sys~taille de la RAMSnapshot complet de la RAM, compressé XpressÀ l'hibernation / arrêt Démarrage rapide
swapfile.sys16 Mo → 16 GoWorking sets des apps UWP / ModernQuand des apps UWP sont suspendues

pagefile.sys

C'est le fichier que la plupart des gens désignent par « le fichier d'échange ». Quand le gestionnaire de mémoire choisit une page anonyme froide à évincer (une allocation de tas, une page de pile, une région JIT…), il l'écrit dans pagefile.sys et libère le cadre RAM. Quand l'adresse est de nouveau sollicitée, la page est relue.

  • Contenu : cadres mémoire bruts de 4 Ko, sans structure, sans ordre.
  • Valeur forensique : très élevée — tout ce qui a vécu dans la mémoire d'un processus quelconque mais n'a pas persisté dans un fichier peut s'y retrouver paginé. Fragments PE, blocs de ruches de registre, enregistrements MFT, morceaux de SQLite navigateur, lignes de commande, mots de passe.
  • Outil : ce parser gère le carving + l'extraction de chaînes
    • l'extraction d'artefacts. page_brute et bulk_extractor sont les options Python classiques.
  • Piège : les pages sont non séquentielles et (sur Windows 10+) souvent compressées en Xpress-Huffman par le CompressionStoreManager avant d'être écrites. Voir les limites.

hiberfil.sys

Créé quand le système hiberne (ou s'éteint avec le démarrage rapide activé, qui est en réalité une hibernation « veille hybride »). hiberfil.sys est un snapshot complet de la RAM physique au moment de l'hibernation — compressé avec l'algorithme Xpress de Microsoft, préfixé par un en-tête PO_MEMORY_IMAGE (cherchez la signature HIBR / WAKE en début de fichier).

  • Contenu : à peu près l'intégralité du contenu de la RAM, avec les tables PFN (Page Frame Number), les structures de processus, les pools noyau — autrement dit, la même chose que ce que donnerait un dump RAM à chaud.
  • Valeur forensique : énorme quand il est présent. Avec Volatility, vous pouvez énumérer les processus, décoder les connexions réseau, parcourir le registre en mémoire, extraire les secrets LSA, dumper LSASS — la forensique mémoire complète.
  • Outil : hibr2bin (issu de l'écosystème Volatility) ou volatility3 -f hiberfil.sys — Volatility convertit nativement le snapshot compressé en image mémoire brute. Ne traitez pas hiberfil.sys comme un dump brut à la pagefile — sa structure est documentée et Volatility la parle nativement.
  • Piège : n'existe que si la machine a hiberné ou utilisé le démarrage rapide. Une machine simplement redémarrée n'a pas de hiberfil.sys, ou il est vide.

swapfile.sys

Introduit avec Windows 8 en accompagnement des apps UWP / Modern. Contrairement à pagefile.sys, qui peut paginer des cadres individuels de 4 Ko, swapfile.sys suspend des working sets entiers d'applications — quand vous basculez hors d'une app UWP, son image mémoire est écrite en bloc.

  • Contenu : working sets d'apps UWP suspendues — Edge (version UWP), Mail, Photos, Calendrier, Store, Cortana, Cartes, apps Office modernes.
  • Valeur forensique : marginale mais réelle. Les navigateurs et clients mail UWP peuvent y laisser des fragments absents de pagefile.sys.
  • Outil : même approche de carving que pour le pagefile — signatures d'octets magiques, chaînes, balayages regex. Ce parser peut aussi être pointé sur swapfile.sys, même s'il est calibré pour le cas, plus volumineux, du pagefile.
  • Piège : relativement petit (de quelques centaines de Mo à ~16 Go en général). Si la machine n'exécute pas d'apps UWP, il est essentiellement vide.

Lequel récupérer pendant un incident

Si vous pouvez prendre les trois, prenez les trois — leur copie est peu coûteuse et chacun apporte des éléments différents. Si vous ne pouvez en prendre qu'une partie :

  1. hiberfil.sys en premier s'il existe avec une taille non triviale. Un snapshot complet de la RAM est plus puissant que n'importe quel pagefile.
  2. pagefile.sys pour le gros de la mémoire paginée.
  3. swapfile.sys si vous chassez des artefacts spécifiques aux UWP (Edge moderne, Mail, Photos, etc.).

En pratique, KAPE --target Pagefile,Hiberfile,Swapfile récupère les trois plus quelques dumps de crash apparentés en une seule passe.

Détecter le démarrage rapide

Un Windows qui s'est « éteint » proprement peut en réalité avoir hiberné sous le démarrage rapide. Indices :

  • hiberfil.sys existe avec une taille ~égale à la RAM.
  • Registre : HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power\HiberbootEnabled = 1.
  • Le journal d'événements indique un 1 pour « Veille hybride » plutôt qu'un arrêt propre.

Si vous voyez des signes de démarrage rapide, récupérez hiberfil.sys avant toute autre chose — un démarrage ultérieur l'écrasera avec la session suivante.

Après acquisition

Voir comment acquérir pagefile.sys pour la mécanique de capture, et comment fonctionne réellement la forensique de pagefile.sys pour ce que fait l'analyseur une fois le fichier en main.