Относительно недавно вышла новая IDA v5.4. В ней были заявлены возможности удаленной отладки, используя Windbg. Конечно, в IDA появились и другие интересные вещи. Среди них я бы выделил те самые три отладчика: Bosch, GDB, Windbg; возможность писать на Python (видимо для гиков и «аверов», которые строят на этом системы анализа); и, задерживаем дыхание, возможность получить имена локальных переменных и типы из формата .PDB. Последнее означает то, что теперь можно загрузить наконец-то ntoskrnl.exe в IDA и все недокументированные структуры будут как на ладони (это ж надо дойти до этого только к версии 5.4).
Картинка ниже показывает недокументированную структуру _KTHREAD файла ядра.

Возможности загрузить структуры в другой анализируемый файл — нет. Пользуемся старым способом: добавляем нужные нам структуры и экспортируем их в виде .IDC файла, который потом подгружаем в анализируемый сэмпл. Неудобно добавлять каждую структуру по отдельности, также неудобно то, что нет возможности сразу подгрузить все структуры из .PDB в анализируемый файл.
Первым делом, я взялся смотреть отладчик, так как он мне интереснее всего. Скачиваем по ссылке статью, в которой описываются настройки IDA для удаленной отладки с помощью Windbg. Прежде всего, я советую обратить внимание на следующие моменты:
- Конфигурация источника символов. Не забываем прописать путь в переменные окружения или перед запуском IDA выполняем команду set.
- Выбираем Debugger->Attach, а не Debugger->Run.
- Не забываем поставить галочку Kernel mode debugging.

Сразу после подключения мы получаем полноценный отладчик, который умеет выполнять команды Windbg в отдельном окошке. Нам доступны все расширения (смотри .chain и .load). Не забывайте нажимать C для преобразования в код. В отладчике также работает Hex-Rays (для этого надо создать функцию, нажмите P, а потом F5).

Пожалуй, я задумаюсь о полноценном переходе на отладчик IDA, использующий Windbg. Графический интерфейс однозначно удобнее, а если меня застигнет ностальгия, то всегда под рукой строка для ввода команд Windbg.
блин( ида это классно но у нас на фирме покупать ее вряд ли будут(
завидует черной завистью тем у кого она есть
Я все-таки уговорил бы купить. В hiew что ли сидеть? :)
Hex-Rays нафиг не нужен имхо, токо вредит ;)
Дебажить мне и в обычной WinDbg удобно.
Правда приходится иногда на иду переключаться.
Ну, тут каждому свое. Я активно пользуюсь (с оглядкой в дизасм) Hex-Rays и меня многое устраивает. Ты попробуй подебажь в IDA, Windbg так уныл, что сил нет. Прокрутки кода в дизасме — это ваще жесть, кто это вообще придумал. Windbg крут тем, что имеет огромное кол-во команд, но они поддерживаются теперь и в ИДЕ ;)
Hex-Rays много лишнего создает, кучи не нужных переменнных, непонятные ветвления. В дизасме все четко и ясно ;)
В IDA я иногда дебажу r3 приложения, по сравнению с olly — убого )
Единственное что не хватает в других продуктах по сравнению с идой, это xref’ы и имена функций/переменных, комментов которые сделал в IDA.
нам её не купят от того что есть WinDbg, который бесплатный….
Бесплатный дебаггер, но ни фига не мощный дизассемблер. Много теряете :)
наш профиль прикладное программирование, исследовать приходится по ходу дела если не хватает документации((
А ещё новой идой можно qemu-шный биос дебажить прямо на живой вм-ке)
Обработчки всяких там SMI-прерываний, стало быть, тоже.
боян какойто…
http://hexblog.com/2009/01/kernel_debugging_with_ida.html
у ильfuck’а в блоге еще и видео есть.
У меня руки до ИДЫ дошли только сейчас, да и не сразу она приехала.
я чегото не пойму, а если я куплю себе иду за 700 баксов — hexrays будет в поставке?? или его отдельно придется покупать за 2300 ????
Не будет в поставке, надо покупать :)