Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/idov31/nidhogg
Escalade de PrivilègesCommandement et ContrôleRed TeamingDéveloppement de Charges Utiles
GitHubidov31/nidhogg

Nidhogg

Rootkit Windows pour Intel x64 avec 25+ fonctionnalités, démontrant des techniques de rootkit compatibles avec toutes les versions de Windows 10 et Windows 11.

Voir le dépôt
2.5k360il y a 1 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web

Nidhogg

Logo

image image

Nidhogg est un rootkit multifonction conçu pour illustrer la variété des opérations possibles depuis l'espace noyau. Son objectif est de fournir un rootkit complet et facile à utiliser, doté de nombreuses fonctionnalités utiles pour les opérations. De plus, il peut être facilement intégré à votre framework C2.

Nidhogg fonctionne sur toutes les versions x64 de Windows 10 et Windows 11.

Ce dépôt contient un pilote noyau ainsi qu'un programme C++ permettant de communiquer avec lui.

Pour en savoir plus, consultez le wiki pour une explication détaillée.

Fonctionnalités actuelles

[!IMPORTANT]
Toutes les fonctionnalités ont été entièrement testées jusqu'à Windows 11 25H2. Si vous rencontrez un problème, veuillez ouvrir une issue après avoir vérifié qu'il n'en existe pas déjà une.

  • Masquage et démasquage de processus
  • Élévation de processus
  • Protection de processus (anti-kill et anti-dump)
  • Contournement des scanners mémoire (ex. pe-sieve)
  • Masquage et démasquage de threads
  • Protection de threads (anti-kill)
  • Protection de fichiers (anti-suppression et anti-écrasement)
  • Protection de clés et valeurs de registre (anti-suppression et anti-écrasement)
  • Masquage de clés et valeurs de registre
  • Liste des processus, threads, fichiers, ports, clés et valeurs de registre actuellement protégés ou masqués
  • Patching de fonctions
  • Contournement AMSI intégré
  • Patch ETW intégré
  • Modification de signature de processus (PP/PPL)
  • Peut être chargé de manière réfléchie (reflective loading)
  • Injection de shellcode
    • APC
    • NtCreateThreadEx
  • Injection de DLL
    • APC
    • NtCreateThreadEx
  • Liste des callbacks noyau
    • ObCallbacks
    • Routines de création de processus et de threads
    • Routines de chargement d'images
    • Callbacks de registre
  • Suppression et restauration des callbacks noyau
  • Désactivation / Activation des fournisseurs ETW (ex. ETW-TI)
  • Masquage et démasquage de modules
  • Masquage et démasquage de pilotes
  • Récupération d'identifiants (credential dumping)
  • Masquage et démasquage de ports
  • Fichier objet Nidhogg (NOF) pour exécution de COFF en mode noyau

Chargement réfléchi (reflective loading)

[!WARNING]
Lors d'un chargement réfléchi, certaines fonctionnalités seront désactivées par défaut et le déchargement automatique des modules masqués ainsi que le rétablissement des callbacks ne fonctionneront pas correctement. Il est de la responsabilité de l'utilisateur de s'assurer de décharger manuellement tout module masqué à la fin du processus et de rétablir les callbacks si le pilote cible se décharge. Ne pas le faire peut entraîner une instabilité ou un crash du système.

Depuis la version v0.3, Nidhogg peut être chargé de manière réfléchie avec kdmapper mais comme PatchGuard sera automatiquement déclenché si le pilote enregistre des callbacks, Nidhogg n'en enregistrera aucun. Ainsi, si vous chargez le pilote de manière réfléchie, ces fonctionnalités seront désactivées par défaut :

  • Protection de processus
  • Protection de threads
  • Opérations sur le registre

Fichier objet Nidhogg (NOF)

Depuis la version v2.0, Nidhogg dispose d'une nouvelle capacité appelée « Nidhogg Object File » (NOF) pour l'exécution de COFF en mode noyau. Cela signifie que vous pouvez écrire votre propre code en mode noyau et le compiler en un fichier COFF qui a accès à :

  • L'API du noyau Windows (ntoskrnl)
  • Les appels système (syscalls)
  • L'API de Nidhogg (à venir dans v2.1)

Cette fonctionnalité n'est pas compatible avec la sécurité basée sur la virtualisation (VBS) car elle viole à la fois HVCI et kCFG.

Exécution de scripts (OBSOLÈTE DEPUIS V2.0)

Depuis la version v1.0, Nidhogg peut exécuter des NidhoggScripts – un outil permettant d'exécuter plusieurs commandes à la suite, créant ainsi des playbooks pour Nidhogg. Pour savoir comment en rédiger un, consultez le wiki.

En raison de la difficulté de maintenance et du fait qu'il ne s'agit pas d'une fonctionnalité populaire, elle est devenue obsolète dans la version v2.0 et sera supprimée dans la prochaine version majeure. Elle sera remplacée par une autre capacité nommée « Nidhogg Object File » (NOF) pour l'exécution de COFF en mode noyau, qui aura accès à l'API de Nidhogg.

Opérations initiales (OBSOLÈTE DEPUIS V2.0)

Depuis la version v1.0, Nidhogg peut également exécuter des NidhoggScripts comme opérations initiales. Cela signifie que s'il trouve le fichier out.ndhg à la racine du répertoire du projet (le même répertoire que le fichier Python), il exécutera ce fichier à chaque démarrage du pilote.

En raison de la difficulté de maintenance et du fait qu'il ne s'agit pas d'une fonctionnalité populaire, elle est devenue obsolète dans la version v2.0 et sera supprimée dans la prochaine version majeure. Elle sera remplacée par une autre capacité nommée « Nidhogg Object File » (NOF) pour l'exécution de COFF en mode noyau, qui aura accès à l'API de Nidhogg.

Fonctionnalités déclenchant PatchGuard

[!CAUTION]
Les fonctionnalités suivantes sont connues pour déclencher PatchGuard. Vous pouvez toujours les utiliser à vos propres risques.

  • Masquage de processus
  • Protection de fichiers
  • Masquage de pilotes

Utilisation de base

Pour voir les commandes disponibles, vous pouvez exécuter NidhoggClient.exe ou consulter le wiki pour des informations détaillées sur la façon d'utiliser chaque commande, ses paramètres et son fonctionnement.

root@kitploit:~
NidhoggClient.exe

# Utilisation simple : masquer un processus
NidhoggClient.exe process hide 3110

Configuration

Compilation du client

Pour compiler le client, vous devez avoir Visual Studio 2022 installé, puis construire le projet comme n'importe quel autre projet Visual Studio.

Compilation du pilote

Pour compiler le projet, vous aurez besoin des outils suivants :

  • Visual Studio 2022
  • Windows Driver Kit

Clonez le dépôt et compilez le projet :

root@kitploit:~
git clone https://github.com/Idov31/Nidhogg.git --recurse-submodules

Test du pilote

Pour le tester dans votre environnement de test, exécutez ces commandes dans une invite de commandes élevée (cmd) :

root@kitploit:~
bcdedit /set testsigning on

Après avoir redémarré, créez un service et lancez le pilote :

root@kitploit:~
sc create nidhogg type= kernel binPath= C:\Chemin\Vers\Le\Pilote\Nidhogg.sys
sc start nidhogg

Débogage

Pour déboguer le pilote dans votre environnement de test, exécutez cette commande dans une invite de commandes élevée et redémarrez votre ordinateur :

root@kitploit:~
bcdedit /debug on

Après le redémarrage, vous pouvez voir les messages de débogage dans des outils comme DebugView.

Ressources

  • Windows Kernel Programming Book
  • Kernel Structure Documentation
  • Registry Keys Hiding
  • Process Signatures
  • NtCreateThreadEx Hotfix
  • Credential Dumping
  • Port Hiding
  • Logo
  • Termcolor

Contributions

Un grand merci aux personnes qui ont contribué à ce projet :

BlackOfWorld    0nlyDev    SLiNv    Grovvik

Télécharger l’outil