Amcache enregistre-t-il les DLL ?
Oui — à partir de Windows 10 build 1709 (octobre 2017). La
clé Root\InventoryApplicationFile enregistre à la fois les EXE et les DLL
que le Compatibility Appraiser classifie comme fichiers PE, avec le
même schéma pour les deux : chemin complet, hash SHA-1, éditeur, version,
date de link, ProgramId et KeyLastWriteTimestamp.
Les builds Windows antérieurs utilisaient le schéma hérité (Root\File et
Root\Programs), qui était plus clairsemé et incohérent concernant les DLL.
Pour toute investigation moderne Windows 10/11, supposez une couverture DLL.
Comment trouver les DLL dans le CSV#
Dans *_UnassociatedFileEntries.csv et
*_AssociatedFileEntries.csv d'AmcacheParser :
Import-Csv .\HOST_amcache_UnassociatedFileEntries.csv |
Where-Object { $_.Name -like '*.dll' } |
Select-Object FullPath, Hash, KeyLastWriteTimestamp, PublisherOu filtrez par BinaryType — les DLL apparaissent souvent comme pe32 ou
pe64 avec l'extension .dll.
Chargements de DLL par processus vs enregistrements DLL Amcache#
Ce sont des signaux très différents :
| Enregistrement DLL Amcache | Sysmon 7 (Image Loaded) | |
|---|---|---|
| Déclenché par | Passe d'inventaire de l'appraiser | Chaque chargement de la DLL par un processus |
| Fréquence | ~Quotidienne | Temps réel |
| Enregistre le contexte processus ? | Non | Oui |
| Enregistre l'heure de chargement ? | Heure d'inventaire uniquement | Heure de chargement par processus |
| Visibilité inter-processus ? | Non | Oui — par processus |
Pour les investigations centrées sur quel processus a chargé quelle DLL,
Sysmon Event ID 7 est le bon artefact. Pour les investigations
centrées sur cette DLL était-elle présente sur cet hôte, Amcache est
le bon artefact. La combinaison — joindre Hash Amcache à
Hashes Sysmon 7 — vous donne le tableau complet côté DLL.
Attaques côté DLL qu'Amcache attrape#
- DLL sideloading. DLL déposée par l'attaquant à côté d'un EXE légitime
qui la charge. La DLL d'attaquant apparaît dans
*_UnassociatedFileEntries.csvavec un chemin inhabituel et unPublishervide. - DLL système détournées. Même
FullPathapparaissant deux fois avec différentes valeursHashà travers deux momentsKeyLastWriteTimestamp— la DLL à ce chemin a changé. Indicateur fort de remplacement de binaire. - Leurres de chargement réflectif. La DLL leurre (celle sur disque) apparaît dans Amcache. La version réellement chargée est uniquement en mémoire et n'apparaîtra pas dans Amcache — mais Sysmon Event ID 7 attrapera le chargement.
Pour le workflow d'investigation incluant les DLL complet, voir Chasser le malware commodity avec Amcache.
Ce qu'Amcache n'attrape pas#
- DLL chargées uniquement depuis la mémoire. Les loaders réflectifs (Cobalt Strike, Sliver, Metasploit Meterpreter) chargent les DLL depuis des buffers, pas depuis le disque. Ces DLL peuvent ne jamais toucher un fichier que l'appraiser peut analyser.
- DLL dans des chemins que l'appraiser ne scanne pas. Certains chemins personnalisés tombent hors de la portée par défaut de l'appraiser.
- Contexte de chargement par processus. Amcache ne dit pas quel processus a chargé la DLL — utilisez Sysmon 7.
Voir aussi#
- Structure du registre Amcache — où vivent les entrées DLL.
- FileId Amcache expliqué — le format de hash de la DLL.
- Chasser le malware commodity avec Amcache — le playbook de triage côté DLL.
Articles liés
- Pourquoi mon Amcache.hve est-il vide ?
Trois causes courantes : le Compatibility Appraiser est désactivé, l'hôte vient d'être fraîchement imagé, ou vous collectez depuis un Server / Server Core où l'appraiser s'exécute beaucoup moins souvent.
- Où se trouve la clé de registre Amcache ?
Amcache est sa propre ruche située à C:\Windows\AppCompat\Programs\Amcache.hve — pas une clé sous HKLM. Quand elle est chargée par des outils ou par Windows lui-même, elle est montée comme HKLM\Amcache.
- Que contient Amcache.hve ?
Amcache.hve contient des enregistrements d'inventaire pour chaque binaire PE, pilote et périphérique connecté que le Compatibility Appraiser Windows a vu — avec hashes SHA-1, chemins, éditeurs et horodatages.
- Qu'est-ce qu'un fichier .pf vs une entrée Amcache ?
Les fichiers .pf sont des enregistrements Windows Prefetch — preuve qu'un binaire s'est exécuté, avec horodatages d'exécution et listes de fichiers chargés. Les entrées Amcache enregistrent la présence, avec le hash SHA-1 et les métadonnées.