
Ce référentiel héberge le code qui montre certains des moyens triviaux de détecter la présence de débogueurs sous les applications Windows. Des ressources plus approfondies peuvent être trouvées sur d'autres référentiels GitHub et la référence anti-désabuggeant "ultime" ". Les exemples sont organisés par fonctionnalité.
Pour construire le projet, exécutez ce qui suit à partir de build/ .
cmake ../
cmake --build .
L'exemple Readteb utilise __asm qui n'est pas pris en charge sur x64 et est exclu du makefile.
Ce sont quelques contrôles qui peuvent être exécutés à partir de la source d'une application.
IsdebuggerPresent - Appel de base de l'API Win32 pour vérifier la présence d'un débogueur
OutputDebugString - Utilisez l'API Win32 pour essayer de communiquer avec un débogueur potentiellement attaché
FindWindow - Utilisez l'API Win32 pour rechercher des fenêtres de débogueur
Readteb - Un bref aperçu des internes d'IsdebuggerPresent
Debugbreak - un appel Win32 qui lancera lorsqu'un débogueur n'est pas attaché.
Vérification des processus externes pour la présence d'un débogueur ci-joint.
CheckReMotedeBuggerPresent - IsdebuggerPresent pour les processus externes
Techniques de protection anti-ingénierie anti-inverse à utiliser avant de publier un logiciel