1 ответ
Основные учебные пособия и демонстрации использования
- Установка и настройка WinDbg (средства отладки Windows)
- Майк Таулти - слово для WinDbg
- Учебники по WinDbg
- Отладчики Windows: Часть 1. Учебник по WinDbg
Различные способы "Пуск"/ Прикрепить WinDbg
- Начните отладку с WinDbg (включая способы отладки MSI-файла)
- Как отладить службу Windows
- Настройка отладки Windows
- Отладка SQL Server... здесь, здесь, здесь, здесь
Рабочие пространства (Понимание того, как они работают)
- Прокачайте свой отладчик: создайте пользовательское рабочее пространство для отладки WinDbg
- Раскрытие того, как рабочие пространства работают в WinDbg
Cmdtree
Позволяет определить "меню" команд отладчика для быстрого доступа к часто используемым командам без необходимости запоминать краткие названия команд. Не нужно помещать все определения команд в один и тот же текстовый файл cmdtree.... вы можете хранить их отдельно и загружать несколько (они затем получают свое собственное окно).
- Удивительный помощник.cmdtree
- Как сделать окно окна cmdtree при запуске в WinDbg
- Упрощение отладки дампов.NET в WinDbg с использованием.cmdtree
- Microshaoft Cmdtree
- Специальная команда - выполнение команд из настраиваемого пользовательского интерфейса с помощью.cmdtree
Скрипт запуска
Вы можете использовать параметр -c в командной строке для автоматического запуска сценария WinDbg при запуске WinDbg.
Дает возможность включить режим DML (язык разметки отладчика), загрузить определенные расширения, установить точки останова исключений.NET, установить флаги ядра (например, при отладке ядра вам может понадобиться изменить маску DbgPrint, чтобы вы могли видеть информацию трассировки....ed nt!Kd_DEFAULT_Mask 0xFFFFFFFF), загрузить cmdtrees и т. Д.
Пример скрипта:
$$ 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
Шпаргалки команд
- Crash Dump Анализ Плакат v3.0
- Шпаргалка SOS (.NET 2.0/3.0/3.5)
- Шпаргалка WinDbg (Art of Dev)
- Команды расширения WinDbg для режима ядра Flashcards
Расширения (расширить диапазон поддерживаемых команд / функций)
- AddSym
- позволяет передавать имена символов между IDA и WinDbg - bigLasagne (bldbgexts & blwdbgue)
- подсветка синтаксиса сборки и инструмент отображения драйвера) - BigLib Number Reader
- Byakugan
- обнаружение методов антиотладки, визуализация / эмуляция кучи Vista, отслеживание буферов в памяти - CmdHist
- записывает каждую команду, которую вы выполнили в сеансе отладки, чтобы вы могли легко выполнить повторно - Core Analyzer
- проверять структуры кучи на наличие повреждений, обнаруживать объекты, совместно используемые потоками и т. д. - Дом WinDbg Расширение
- (!stlpvector,!idt,!unhex,!grep и т. д.) - dumppe
- выводит PE файл из памяти - Расширение Image Viewer (Владимир Вукичевич)
- Средство отладки Intel UEFI Development Kit
- отладка прошивки UEFI - leaktrap
- GDI / USER обрабатывает трекер для обнаружения утечек - Мона (требуется PyKD)
- набор команд для помощи в расширенном анализе / поиске эксплойтов - MSEC
- обеспечивает автоматический анализ сбоев и оценку рисков безопасности - narly
- выводит информацию о загруженных модулях, например, при использовании SafeSEH, ASLR, DEP, /GS (проверки безопасности буфера) - нетекст (Родни Виана)
- (! wservice - выводить список объектов службы WCF,!wconfig - показывать строки.config,!whttp - выводить список HttpContexts,!wselect/!wfrom - поддерживать запросы типа SQL к массивам) - ODbgExt
- открытые расширения отладчика - OllyMigrate
- передать отладчик другому отладчику без перезапуска - Psscor2
- расширенный набор SOS для отладки управляемого кода.NET 2.0 - Psscor4
- расширенный набор SOS для отладки управляемого кода.NET 4 - PyDBGExt
- позволяет использовать скрипты Python - PyKD
- позволяет использовать Python для сценария WinDbg - sdbgext (Найнив)
- (! valloc,! vallocrwx,! heapalloc,! heapfree,! remotecall,! remotecall64,! loaddll,! unloaddll,! close,! killthread,! adjpriv,! ret) - SieExtPub
расширение легальности... теперь встроено в WinDbg в ext.dll - SOSEX
- больше команд для отладки управляемого кода NET 2.0 или 4.0 - SPT/SDBGExt2 (Стив Нимитц)
- (! DumpHttpContext,! DumpASPNetRequests,! DumpSqlConnectionPools,! DumpThreadPool и т. Д.) - Uniqstack
- источник к расширению отладчика (для доступа к нему требуется учетная запись OSR Online) - viscope
- график покрытия кода - Ожидание цепочки обхода / wct.dll (CodePlex Debugging Extensions
- отображать цепочки ожидания потоков приложений (помогает найти тупики) - windbgshark
- интегрирует анализатор протокола Wireshark для управления и анализа трафика ВМ - Расширения WinDbg (Саша Гольдштейн)
- Tracer, WCT, heap_stat, bkb, traverse_map, traverse_vector) - WinDbg Highlight (ColorWindbg.dll) (используйте переводчик Google для перевода ссылки)
- подсветка синтаксиса ассемблера
Напишите свое собственное расширение
- Разработка расширения WinDbg ExtEngCpp на C++
- Инструменты торговли: Часть IV - Разработка библиотек расширений WinDbg
- Основы расширений отладчика: краткосрочные усилия, долгосрочные выгоды
Отладка управляемого кода
- Взлом на исключение
- Взлом на конкретное исключение CLR
- Отладка исходного кода.NET Framework в WinDbg
- Отладка исключений в управляемом коде с использованием WinDbg
- Отладка управляемого кода с использованием WinDbg и SOS.dll
- Отладка с помощью WinDbg. Тупики в приложениях.
- Управляемая отладка с помощью WinDbg. Введение и указатель
- Установка.NET точек останова в WinDbg для приложений, которые аварийно завершают работу при запуске
Сценарии (C#, PS, Python и WinDbg)
- KDAR (Kernel Debugger Anti Rootkit)
- коллекция скриптов WinDbg - Sysnative BSOD Сценарии / Обработка приложений
- Библиотека скриптов WinDbg
- коллекция скриптов WinDbg - Скриптинг MDbg и DbgHostLib
- позволяет управляемому коду создавать сценарии для управляемого отладчика (MDBG) и DbgEng - ExtCS
- позволяет управлять WinDbg через скрипты C# - PowerDBG
- позволяет управлять WinDbg через скрипты PowerShell - Pykd
- позволяет управлять WinDbg через скрипты Python - windbglib
- Библиотека оболочки Python вокруг расширения pykd для WinDbg, имитирующая immlib (так что вы можете использовать скрипты, изначально написанные для Immunity Debugger)
Отладчики / Инструменты, которые используют API dbgeng.dll / Инструменты WinDbg
- Простой отладчик в пользовательском режиме на основе Dbgeng
- Желуди. Отладка NET Deadlock Detector (использует cdb.exe) ( скачать)
- CLR Managed Debugger (MDBG)
- DbgHost - Как управлять механизмом отладки
- Средство диагностики отладки v1.2 (DebugDiag), версия 2.0 + блог DebugDiag
- Dynamorio - инструмент динамического бинарного инструментария, который может взаимодействовать с WinDbg
- IDA + плагин WinDbg
- GUI WinDbg
- LeakShell (найти управляемые утечки)
- mdbglib - API управляемой отладки
- PyDbgEng
- Оболочка Python для Windows Debugging Engine - SOSNET - WinDbg Fork/ альтернативная оболочка, которая концентрируется на использовании расширения SOS и поддерживает сценарии C#
- SOSNET O2 fork - форк SOSNET, использующий Roslyn для механизма сценариев C# REPL (read-eval-print-loop)
- VDB / Vivisect (kenshoto) - предоставляет кроссплатформенный API отладки, многоуровневый для WinDbg
- WinAppDbg + Heappie-WinAppDbg
- Написание основного отладчика Windows
Различные способы создания файлов аварийных дампов для анализа после смерти
- DebugDiag 2.0
- Дамп Шпаргалка
- включает в себя способ создания дампа из виртуальных машин Hyper-V, VMware ESX и XenServer. - Citrix SystemDump
- Клавиатура Комбинация клавиш
- MiniDumpWriteDump
- (через вызов Win32 API внутри вашего приложения). (Пример для приложений на C#) - NMI Switch
(аппаратная функция для генерации NMI... обычно используется на высокопроизводительных серверах, например, HP, или вы можете получить дополнительную карту PCI "Универсальный PCI Dump Switch"). Фон технологии Microsoft NMI. - ProcDump
- Система меню? Расширенные настройки системы? Запуск и Восстановление
( информация реестра),
( как настроить полный (полный) дамп памяти),
( как включить полный дамп памяти),
( как включить "Полный дамп памяти" в Windows 7, когда на компьютере много памяти... обычно недоступно, когда объем памяти превышает 2 ГБ) - Диспетчер задач "Создать файл дампа"
- UserDump, инструкция (очень старый инструмент)
- UserModeProcessDumper, инструкция
- Visual Studio "Сохранить дамп как…"
- WER (отчеты об ошибках Windows.... локальные дампы)
- WinDbg
Инструменты анализа дампа
- BlueScreenView - находит мини-дамп файлы .dmp, сохраненные Windows после BSOD, и извлекает информацию о том, что вызвало сбой
- Debug.Analyzer (может анализировать файлы дампа, а плагины могут быть написаны в.NET)
- SAD - Simple After Dump (посмертный анализатор)
- Volatility - структура для анализа "памяти", записанной в файлах дампа ( шпаргалка)
Инструменты, связанные с дампом
- Citrix dumpcheck - проверяет непротиворечивость файла дампа (похоже, что это была заброшенная ссылка + ссылка)
- dumpchk (часть средств отладки) - проверяет согласованность файла дампа
- MoonSols Windows Memory Toolkit (ранее windd) - преобразует различные необработанные файлы дампа памяти в WinDbg-совместимые dmp-файлы
- vm2dmp - Конвертер состояния виртуальной машины Microsoft Hyper-V в дамп памяти
- vmss2core - конвертирует файл снимка VMware в файл дампа ядра ( скачать), ( инструкции)
Ядро отладки виртуальных машин
- VMKD - Расширения виртуальной машины KD
- VirtualKD - (поддержка отладчика ядра для ОС, размещенных в VMware/VirtualBox)
Видео
- .NET Cracking 101 #2 - Основы WinDbg
- Отладка.NET для производственной среды (Channel9)
- dotnetConf - расширенная отладка с помощью WinDbg и SOS
- Дэвид Трюксолл "Отладка с помощью WinDbg"
- Mike Taulty Отладка утечек памяти
- Сессия oredev 2009: отладка приложений.NET с помощью WinDbg
- Pluralsight Advanced Windows Отладка
(плюс много других на Pluralsight) - Тесс Феррандез WinDbg (Channel9)
- Видеоруководство TiGa по IDA Pro
Блоги
- Расширенная отладка.NET
- Все ваши базы принадлежат нам (Саша Гольдштейн)
- Анализировать-v
- ASP.NET отладка
- Cyberiafreak (многопоточность и расширенное программирование и отладка Windows)
- Debug Analyzer.NET
- Отладка и дальше
- Журнал экспертов по отладке онлайн
- Набор средств отладки (сценарии WinDbg, средства и методы отладки и устранения неполадок, помогающие локализовать проблемы с программным обеспечением.)
- Расшифровать мой мир
- Greggm's WebLog
- Замечания по программированию в Junfeng Zhang для Windows
- Лакомства Кристоффера
- Блог Марка Руссиновича
- Майк Сталлс.NET Отладка Блог
- Блог Навина
- Никогда не сомневайся в своем отладчике (Карло)
- Записки из темного угла
- Блог Ntdebugging (команда Microsoft Global Escalation Services)
- Найнив. Приключения в Windows, отладка и обратный инжиниринг
- Примечания разработчика PFE для месторождения
- Команда Visual Studio Debugger
- WinDbg Фолькер фон Эйнем
Расширенные статьи и учебные ресурсы
- Расширенные методы отладки в WinDbg
- Отладка приложений для MS.Net и Windows (слайды PowerPoint)
- Отладка STL-контейнеров с помощью WinDbg
- Учебники по отладке 1-7 (CodeProject-Toby Opferman)
- http://www.debugging.tv/
- Разработчик WinDbg Помеченные статьи
- Блог по безопасности доктора Фу - Учебные пособия по анализу вредоносных программ - Подход обратного проектирования
- Руководство по написанию эксплойтов, часть 5. Как модули и плагины отладчика могут ускорить базовую разработку эксплойтов.
- Охотничьи руткиты
- Удаленная отладка ядра ОС Microsoft Windows Server с помощью утилиты отладки Dell Dell (DWDU) ( DELL (TM) Windows (R) утилита отладчика 1.1 README)
Альтернативные отладчики
- Боккен - ( Ингума) (GUI для радаров)
- BugDbg
- Debug ++ (еще не выпущен)
- Debuggy
- Отладчик обесцвеченного кольца 0 ( скачать)
- edb (Linux)
- FDBG
- GoBug
- Hades (отладчик Ring 3 с анти-отладочной стратегией обнаружения)
- Hopper (Linux, OS X и Windows) (отладка Windows в настоящее время не реализована)
- Hyperdbg
- IDA Debugger
- ImmunityDebugger
- Nanomite
- Обсидиан (неинтрузивный отладчик)
- OllyDbg
- PEBrowse
- RaceVB6 (отладчик P-кода VB6)
- radare
- radare2ui (графический интерфейс для radare)
- Отладчик Rasta Ring 0 (RR0D)
- Syser Kernel Debugger
- TRW 2000 (очень старый отладчик около W9x) + архив плагинов dions
- VisualDux Debugger
- Wintruder (расширяемый отладчик)
- WKTVDebugger (отладчик для Visual Basic P-Code) ( скачать)
- x64_dbg
- Zeta Debugger
Другие ссылки
- Совместная библиотека инструментов RCE
- инструменты отладчика и системного уровня - cr4zyserb
- плагины и другие инструменты отладки - Как написать справку по отладчику Windows (Devon Straw)
- подробная информация, которая понадобится вам, если вы захотите написать собственный отладчик, например, формат файла PDB, форматы файла.DMP, структура файла PE, порядок записи трассировки стека и т. д. и т. д. и т. д. - Tuts4You
- распаковщики, IDA, OllyDBG, плагины Immunity Debugger и т. д.