
Un outil pour convertir les fichiers d'exportation du registre Windows en fichiers de base de registre Windows (hive) qui peuvent être utilisés pour remplacer NTUSER.MAN
Un outil pour ajouter discrètement des clés de registre à HKCU sans que l'EDR/AV puisse voir ce qui se passe, même si vous n'avez pas les droits administrateur.
REMARQUE : Vous ne pourrez le faire qu'UNE SEULE FOIS. Après que NTUSER.MAN soit votre nouvelle ruche de registre, vous NE POUVEZ PAS la modifier sans être administrateur. Assurez-vous donc d'apporter toutes les modifications souhaitées lors du premier passage.
reg_queryreg_query approprié depuis https://github.com/trustedsec/CS-Situational-Awareness-BOF/tree/master/SA/reg_query.execute-bof --opsec Z:\chemin\vers\reg_query.x64.o go z"" i1 z"" z"" i1output.txt. Notez que vous devez inclure tous les horodatages et commencer par la clé HKEY_CURRENT_USER qui ressemble à ceci :03/18/2025 14:19:51 HKEY_CURRENT_USER\
swarmer.exe depuis la section des releases et exécutez swarmer.exe --bof --startup-key "NomDeCleDeDemarrage" --startup-value "C:\Chemin\Vers\Votre\cible.exe" output.txt NTUSER.MAN%USERPROFILE%, de sorte à obtenir un fichier comme C:\Users\MonNomUtilisateur\NTUSER.MAN.Supposons que vous souhaitiez ajouter une clé de registre à HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run pour que calc s'exécute au démarrage.
Vous devez d'abord disposer d'un dump du registre de la clé HKCU que vous souhaitez utiliser. Idéalement, cela doit provenir de la machine que vous souhaitez modifier. Vous pouvez en générer un en exécutant reg export HKCU hkcu.reg.
Ensuite, apportez les modifications souhaitées au fichier .reg. Dans notre exemple, ouvrez simplement le fichier dans le Bloc-notes et ajoutez une ligne supplémentaire comme ceci :

REMARQUE : Seules les modifications apportées à HKEY_CURRENT_USER seront appliquées, cela n'affecte pas HKLM.
Ensuite, utilisez cet outil swarmer.exe pour transformer votre fichier .reg modifié en une ruche de registre binaire. Exemple d'invocation :
swarmer.exe hkcu.reg NTUSER.MAN
Sinon, si vous souhaitez le faire depuis un script PowerShell, vous pouvez récupérer le binaire swarmer.dll depuis la section des releases et l'exécuter avec les commandes :
Import-Module '.\swarmer.dll'
Convert-RegToHive -InputPath '.\hkcu.reg' '.\NTUSER.MAN'
Enfin, placez NTUSER.MAN (il DOIT s'appeler ainsi) dans votre répertoire %USERPROFILE% (quelque chose comme C:\Users\MonNomUtilisateur).
La prochaine fois que le compte se connectera, vos modifications du registre seront chargées.
Windows est rempli de vestiges hérités. Cette technique exploite les Profils utilisateur obligatoires Windows. Normalement, il faut être administrateur pour renommer le NTUSER.DAT d'un utilisateur en NTUSER.MAN, mais il n'existe apparemment aucune protection empêchant qu'un fichier portant ce même nom soit simplement déposé à cet emplacement et utilisé à la place.
Il existe une étrange « frontière de sécurité attendue » selon laquelle la génération d'une ruche binaire Windows sur une machine nécessite un accès administrateur, mais en général cela est très peu appliqué. swarmer (ab)use de l'API Offline Registry pour manipuler une ruche de registre binaire lors de l'analyse d'un fichier .reg exporté. Pour citer la description :
Les applications ne doivent pas utiliser les fonctions de registre hors connexion pour contourner les exigences de sécurité du registre système. Pour charger une ruche, une application s'exécutant sans les privilèges spéciaux requis par la fonction RegLoadKey peut utiliser la fonction RegLoadAppKey.
Eh bien, nous n'allons évidemment pas suivre cette consigne. Nous pouvons donc utiliser l'exportation basse privilège du registre combinée à notre outil swarmer pour créer un objet binaire « privilégié » de registre, que vous pouvez simplement placer au bon endroit pour remplacer la ruche de registre NTUSER.DAT existante.
En procédant ainsi, nous n'utiliserons AUCUNE API traditionnelle de lecture/écriture du registre, donc idéalement l'EDR ne devrait pas avoir une bonne visibilité sur ce processus – rien de tout cela n'apparaîtra comme une véritable écriture de registre selon procmon de Sysinternals. Si vous êtes PARTICULIÈREMENT paranoïaque, vous pouvez également emporter le fichier .reg sur une machine que vous contrôlez, utiliser cet outil pour créer le fichier binaire de la ruche, puis le remettre sur l'hôte. Une fois le registre exporté, il n'est plus nécessaire d'interagir avec l'hôte jusqu'à ce que vous déposiez le fichier NTUSER.MAN.
Techniquement, vous n'avez même pas besoin d'exporter le registre, mais il est probablement risqué d'essayer de remplacer le registre d'un compte par un autre provenant d'une machine qui ne correspond pas EXACTEMENT à l'environnement Windows, ce qui sera difficile à garantir.
Cet outil est publié en open source sous la licence Apache.