Skip to content

Desktop Activity Moderator (DAM) : la forensique expliquée

Ce qu'est le Desktop Activity Moderator, pourquoi sa clé est vide sur la plupart des postes fixes, ce qui le distingue de BAM et comment l'exploiter.

Publié le 7 min de lecture

TL;DR. DAM (Desktop Activity Moderator) est le cousin de BAM dédié à la veille connectée. Microsoft le décrit comme un pilote noyau qui suspend ou bride les processus de bureau quand l'appareil passe en veille connectée, chargé uniquement si le matériel le permet, et absent des serveurs. Quand il enregistre, il utilise la même clé <SID> et le même format de valeur que BAM, sous Services\dam. Attendez-vous à le trouver sur les portables et tablettes Modern Standby, à ne rien trouver sur la plupart des postes fixes, et traitez son contenu comme un second BAM, plus petit.

La plupart des articles sur BAM accordent une phrase à DAM. C'est compréhensible : sur l'image d'un poste fixe moyen, la clé est vide. Sur un portable récent, elle ne l'est pas, et mieux vaut savoir ce que l'on regarde. Pour le contexte : le guide complet BAM/DAM.

Ce que Microsoft dit de DAM

La documentation de compatibilité de Microsoft présente le Desktop Activity Moderator comme l'une des fonctionnalités de Windows 8 destinées aux appareils prenant en charge la veille connectée (Microsoft Learn). Les points essentiels :

  • C'est un pilote en mode noyau « chargé et initialisé au démarrage si le système prend en charge la veille connectée » — ce que détermine le champ AOAC de SYSTEM_POWER_CAPABILITIES (référence de la structure).
  • Écran éteint en veille connectée, il suspend les processus de bureau des sessions interactives et bride ceux de la session 0 (services).
  • Il est désactivé quand l'écran est allumé.
  • Il « n'est pas présent sur les éditions serveur ».

La veille connectée est depuis devenue Modern Standby dans la documentation matérielle de Microsoft, qui décrit comment les applications de bureau sont mises en pause pendant la veille (présentation de Modern Standby, préparer les logiciels).

Où se trouvent les enregistrements DAM

Même ruche, même structure que BAM :

SYSTEM\ControlSet00X\Services\dam\State\UserSettings\<SID>     (Windows 10 1809+, 11)
SYSTEM\ControlSet00X\Services\dam\UserSettings\<SID>           (older layout)

La couverture varie selon les parseurs : le plugin BamDam d'Eric Zimmerman liste dam\UserSettings parmi ses chemins de clés (voir la comparaison des outils), et notre BAM/DAM Parser lit bam et dam dans les deux formats et dans tous les control sets. Chaque valeur est un chemin d'exécutable (ou un nom de famille de package) avec un REG_BINARY dont les 8 premiers octets sont un FILETIME — voir l'article sur le format des valeurs.

BAM et DAM côte à côte

BAMDAM
RôleModérer l'activité en arrière-planSuspendre/brider les applications de bureau en veille connectée
Pilotebam.sysdam.sys (Boutnaru)
Présent surWindows 10 1709+, Windows 11Appareils compatibles veille connectée/Modern Standby ; pas sur les éditions serveur
CléServices\bam\State\UserSettings\<SID>Services\dam\State\UserSettings\<SID>
Format des valeursChemin → REG_BINARY, FILETIME en têteIdentique
Contenu typiqueLa plupart des programmes lancés localement la dernière semaine, par utilisateurEn général moins d'entrées ; souvent vide sur les postes fixes (ElcomSoft)
Niveau de rechercheRétro-ingénierie publiée (Suhanov)Surtout documenté par observation

La dernière ligne est la réserve importante. Les résultats détaillés sur BAM — horodatage mis à jour au lancement et à la fin du processus, purge à sept jours au démarrage, suppression des entrées d'exécutables effacés, aucune entrée pour les chemins amovibles ou réseau — viennent de l'analyse de bam.sys. Nous n'avons pas trouvé d'analyse publiée équivalente de la tenue des enregistrements par dam.sys. Considérez ces comportements comme probables pour DAM, pas comme établis.

Quand DAM est utile

Un second témoin. Si le même exécutable apparaît sous le même SID dans BAM et dans DAM avec des horodatages proches, vous avez deux écritures indépendantes qui désignent la même activité. Utile quand une conclusion risque d'être contestée.

Un sous-ensemble différent. DAM concerne les processus de bureau autour de la veille : sa liste n'est pas une copie de celle de BAM. Dans la ruche d'exemple fictive du site, DAM ne contient pour l'utilisatrice alice que explorer.exe, alors que BAM liste huit programmes. N'attendez pas de correspondance un pour un.

Profil matériel. Une clé DAM remplie indique rapidement que l'appareil prend en charge Modern Standby — typiquement un portable ou une tablette. Combinée au nom de la machine et aux données réseau et énergie de SRUM, elle aide à décrire l'appareil dans un rapport.

Quand DAM est vide

Une clé dam vide ou absente est normale sur :

  • les postes fixes et VM sans veille connectée ;
  • les serveurs (« pas présent sur les éditions serveur ») ;
  • les portables plus anciens qui utilisent la veille S3 classique.

Elle ne mérite d'être questionnée que si le matériel prend clairement en charge Modern Standby, que BAM est rempli pour les mêmes utilisateurs et que DAM est vide dans tous les control sets. Même dans ce cas, vérifiez le build et la configuration d'alimentation avant de parler d'altération. L'article sur l'anti-forensique liste les signaux qui indiquent réellement une suppression.

Lire DAM avec l'outil

  1. Déposez SYSTEM (et SOFTWARE pour les noms d'utilisateur) dans le BAM/DAM Parser.
  2. Utilisez le filtre de source : « BAM + DAM » affiche les deux, ou choisissez DAM seul.
  3. La colonne « Source » indique dam pour ces lignes ; le panneau de détail affiche le chemin complet de la clé.
  4. Triez par compte puis par heure pour aligner les lignes DAM sur les lignes BAM du même compte.

Tout le reste — signalements, bascule UTC/local, export CSV/JSON — fonctionne de la même manière pour les lignes DAM.

Questions ouvertes à tester

Faute de rétro-ingénierie publique de la tenue des enregistrements DAM comparable à celle de BAM, quelques comportements méritent d'être vérifiés sur un portable de référence, au même build que votre preuve, avant de vous appuyer dessus :

QuestionPourquoi c'est importantComment tester
Les entrées DAM sont-elles purgées après une semaine, comme BAM ?Indique jusqu'où une clé DAM vide a un sensLancer un programme connu, attendre plus de sept jours, redémarrer, réexporter SYSTEM
DAM ignore-t-il les chemins amovibles et réseau ?Décide si une absence est informativeLancer le même binaire de test depuis un disque local, une clé USB et un partage
Quand l'horodatage est-il mis à jour ?Lancement, fin, entrée ou sortie de veilleLancer un programme à travers un cycle de veille et comparer avec les heures de l'événement Sysmon 1
Quels programmes obtiennent une entrée ?DAM vise les processus de bureau autour de la veilleComparer les listes BAM et DAM après une journée d'usage normal

Documentez le build, le matériel et les étapes exactes, et conservez les ruches exportées : un test reproductible pèse plus dans un rapport que le résumé d'un blog, celui-ci compris.

Questions fréquentes

Quelle est la différence entre BAM et DAM ?

BAM modère l'activité en arrière-plan sur tout système Windows 10 1709+. DAM suspend ou bride les applications de bureau pendant la mise en veille d'un appareil Modern Standby. Les deux tiennent dans la ruche SYSTEM des enregistrements exécutable/horodatage par utilisateur au même format ; DAM contient en général beaucoup moins d'entrées.

Pourquoi la clé DAM est-elle vide sur mon image ?

Très probablement parce que la machine ne prend pas en charge Modern Standby (veille connectée) : le pilote DAM n'a jamais été chargé. C'est normal sur la plupart des postes fixes et des serveurs, et ce n'est pas en soi un signe d'altération.

Sources

Articles liés