Tutoriels de base et démos d'utilisation
Différentes façons de "démarrer"/attacher WinDbg
Espaces de travail (comprendre comment ils fonctionnent)
Cmdtree
Vous permet de définir un "menu" de commandes de débogage pour un accès facile aux commandes fréquemment utilisées sans avoir à mémoriser les noms des commandes laconiques. Vous n'avez pas besoin de mettre toutes les définitions de commandes dans le même fichier texte cmdtree ... vous pouvez les garder séparées et en charger plusieurs (elles obtiennent alors leur propre fenêtre).
Script de démarrage
Vous pouvez utiliser l'option -c sur la ligne de commande pour exécuter automatiquement un script WinDbg lorsque vous démarrez WinDbg.
Donne la possibilité d'activer le mode DML (Debugger Markup Language), de charger des extensions particulières, de définir des points d'arrêt d'exception .NET, de définir des indicateurs de noyau (par exemple, lors du débogage du noyau, vous devrez peut-être modifier le masque DbgPrint pour voir les informations de suivi .... ed nt ! Kd_DEFAULT_Mask 0xFFFFFFFF), charger les cmdtrees, etc.
Un exemple de script:
$$ Include a directory to search for extensions
$$ (point to a source controlled or UNC common directory so that all developers get access)
.extpath+"c:\svn\DevTools\WinDBG\Extensions"
$$ When debugging a driver written with the Windows Driver Framework/KMDF
$$ load this extension that comes from the WinDDK.
!load C:\WinDDK\7600.16385.1\bin\x86\wdfkd.dll
!wdftmffile C:\WinDDK\7600.16385.1\tools\tracing\i386\wdf01009.tmf
$$ load some extensions
.load msec.dll
.load byakugan.dll
.load odbgext.dll
.load sosex
.load psscor4
$$ Make commands that support DML (Debugger Markup Language) use it
.prefer_dml 1
.dml_start
$$ Show NTSTATUS codes in hex by default
.enable_long_status 1
$$ Set default extension
.setdll psscor4
$$ Show all loaded extensions
.chain /D
$$ Load some command trees
.cmdtree c:\svn\DevTools\WinDBG\cmdtree\cmdtree1.txt
.cmdtree c:\svn\DevTools\WinDBG\cmdtree\cmdtree2.txt
$$ Show some help for the extensions
!wdfkd.help
!psscor4.help
.help /D
Feuilles de triche de commande
Extensions (étendre la gamme de commandes/fonctionnalités prises en charge)
- AddSym
- permet le transfert des noms de symboles entre IDA et WinDbg - bigLasagne (bldbgexts & blwdbgue)
- Mise en évidence de la syntaxe de l'assemblage et un outil de mappage de pilote) - BigLib Number Reader
- Byakugan
- détecter les méthodes anti-bug, visualisation/émulation de tas Vista, tampons de piste en mémoire - CmdHist
- enregistre chaque commande que vous avez exécutée dans votre session de débogage afin que vous puissiez la réexécuter facilement - Core Analyzer
- vérifier les structures de tas pour la corruption, détecter les objets partagés par les threads, etc. - extension Dom WinDbg
! stlpvector,! idt,! unhex,! grep, etc.) - --- (dumppe
- vide le fichier PE de la mémoire - Extension de visionneuse d'images (Vladimir Vukicevic)
- Outil de débogage du kit de développement Intel UEFI
- débogage du firmware UEFI - fuite
- GDI/USER poignée tracker pour aider à la détection des fuites - Mona (nécessite PyKD)
- ensemble de commandes pour faciliter l'analyse avancée/trouver des exploits - MSEC
- fournit une analyse automatisée des collisions et une évaluation des risques de sécurité - narly
- répertorie les informations sur les modules chargés, comme si vous utilisez SafeSEH, ASLR, DEP,/GS (Buffer Security Checks) - netext (Rodney Viana)
! wservice - liste les objets de service WCF,! wconfig - affiche les lignes .config,! whttp - liste HttpContexts,! wselect /! wfrom - supporte SQL comme les requêtes sur les tableaux) - --- (ODbgExt
- ouvrir les extensions du débogueur - OllyMigrate
- passez le débogueur à un autre débogueur sans redémarrer - Psscor2
- un surensemble de SOS pour aider au débogage du code managé .NET 2.0 - Psscor4
- un surensemble de SOS pour aider au débogage du code managé .NET 4 - PyDBGExt
- permet d'utiliser les scripts Python - PyKD
- permet à Python d'être utilisé pour scripter WinDbg - sdbgext (Nynaeve)
! valloc,! vallocrwx,! heapalloc,! heapfree,! remotecall,! remotecall64,! loaddll,! unloaddll,! close,! killthread,! adjpriv,! ret) - --- (SieExtPub
- extension héritée ... désormais intégrée à WinDbg dans ext.dll - SOSEX
- plus de commandes pour aider au débogage du code NET 2.0 ou 4.0 managé - SPT/SDBGExt2 (Steve Niemitz)
!! DumpHttpContext,! DumpASPNetRequests,! DumpSqlConnectionPools,! DumpThreadPool, etc.) - --- (Uniqstack
- source vers une extension de débogage (besoin d'un compte OSR Online pour y accéder) - viscope
- graphique de couverture du code - Wait Chain Traversal/wct.dll (extensions de débogage CodePlex
- affiche les chaînes d'attente des threads d'application (aide à trouver blocages ) - windbgshark
- intègre l'analyseur de protocole Wireshark pour activer VM manipulation et analyse du trafic - Extensions WinDbg (Sasha Goldstein)
- Tracer, WCT, heap_stat, bkb, traverse_map, traverse_vector) - WinDbg Highlight (ColorWindbg.dll) (Utilisez Google Translate pour traduire le lien)
- Mise en évidence de la syntaxe du langage d'assemblage
Écrivez votre propre extension
Débogage du code managé
Script (C #, PS, Python et WinDbg)
Débogueurs/outils qui utilisent l'API dbgeng.dll/outils WinDbg
Différentes façons de générer des fichiers de vidage sur incident pour l'analyse post-mortem
Outils d'analyse de vidage
- BlueScreenView - trouve les fichiers minidump .dmp enregistrés par Windows après un BSOD et extrait des informations sur la cause du crash
- Debug.Analyzer (peut analyser les fichiers de vidage et les plug-ins peuvent être écrits en .NET)
- SAD - Simple After Dump (analyseur post mortem)
- Volatilité - framework pour analyser la "mémoire" enregistrée dans les fichiers de vidage ( aide-mémoire )
Outils liés au vidage
- Citrix dumpcheck - vérifie la cohérence du fichier de vidage (on dirait qu'il a été abandonné link + link )
- dumpchk (partie des outils de débogage) - vérifie la cohérence d'un fichier de vidage
- MoonSols Windows Memory Toolkit (anciennement windd ) - convertit divers fichiers de vidage de mémoire brute en fichiers dmp compatibles WinDbg
- vm2dmp - Microsoft Hyper-V VM State to Memory Dump Converter
- vmss2core - convertit le fichier d'instantané VMware en un fichier de vidage principal ( téléchargement ), ( instructions )
Débogage des machines virtuelles du noyau
Vidéos
Blogs
Articles avancés et ressources didactiques
Débogueurs alternatifs
Autres liens
- Bibliothèque d'outils RCE collaboratifs
- débogueur et outils de niveau système - cr4zyserb
- plugins et autres outils de débogage - Comment écrire une référence de débogueur Windows (Devon Straw)
- informations détaillées dont vous auriez besoin si vous vouliez écrire votre propre débogueur, par exemple Format de fichier PDB, formats de fichier .DMP, structure de fichier PE, comment enregistrer les traces de pile, etc., etc. - Tuts4Yo
- déballeurs, IDA, OllyDBG, plugins Immunity Debugger, etc.