1. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.

Реверс в DOSBox с помощью IDA

Тема в разделе "Мастерская", создана пользователем Quester, 10 апр 2013.

  1. Quester

    Quester

    Переводчик Legacy

    Регистрация:
    25 сен 2003
    Сообщения:
    628
    IDADOS plugin
    Плагин для связки IDA Pro - Dosbox

    Ссылки на исходники
    Сам плагин: https://github.com/wjp/idados
    Пропатченный для работы с плагином DosBox: https://github.com/wjp/dosbox
    (ветка по-умолчанию должна быть idados, если нет, откройте Branches и выберете idados)

    Ссылки на бинарники
    Для версии 6.1 Посмотреть вложение idados61.7z
    Для версии 6.4 Посмотреть вложение idados64.7z

    Ссылка на сборки от DrMefistO
    "Вот свежая сборка этого инструмента (у меня поправлены прыжки по смещениям во время отладки):"
    Исходники: https://github.com/lab313ru/idados_dosbox
    Релизы: https://github.com/lab313ru/idados_dosbox/releases

    Описание
    Плагин, позволяющий в IDA Pro в качестве отладчика использовать Dosbox. Встроенный в Dosbox отладчик при этом отключается. Позволяет ставить брекпоинты, совершать трассировку. Перед первым запуском изменяет адреса на правильные (IDA Pro в 16-битных DOS приложениях зачастую эти адреса искажает).

    Использование
    Скопировать плагин dosbox_stub.plw в папку %IDAPro%\PLUGINS.
    Остальные файлы (Dosbox и набор dll) скопировать в установленный заранее оригинальный DosBox. Запустить пропатченный Dosbox, присоединить нужные диски. Запустить программу для отладки командой debug имяпрограммы.exe.
    В IDA Pro открыть программу для отладки, выбрать тип процессора, дождаться окончания анализа. Выбрать в качестве отладчика Dosbox, в настройках указать hostname (для локальной машины - localhost). Запустить отладку. Если необходимо, указать в настройках отладчика, что при начале отладки останавливать исполнение кода.

    Напоминаю, что IDA Pro является платным продуктом и вопросы "где скачать бесплатно" неуместны.
    Желающие приобрести IDA Pro могут сделать это на сайте программы - https://www.hex-rays.com/products/ida/overview.shtml (стоимость Name лицензии порядка 500$).
    Если жалко денег, можно найти старую бесплатную версию IDA Pro и плагин IDADOS версии 0.1. Работать будет, но еще более криво.

    Благодарности
    Спасибо jack7277 за настойчивость и поднятие темы на нужных форумах.
    Огромное СПАСИБО gloomdemon за сборку бинарников для версий 6.4 и 6.1.
    Огромное спасибо DrMefistO за новые сборки бинарников.

    Ссылки на полезное
    http://blog.yurichev.com/
    Блог Дениса Юричева по дизассемблированию. Там же можно скачать постоянно пополняемую книгу по обратной разработке для начинающих (на русском и английском языках).
     
    Последнее редактирование: 24 май 2016
    TheMadLynx, DrMefistO, VEG и 12 другим нравится это.
  2.  
  3. Alex Dub

    Alex Dub

    Регистрация:
    6 янв 2018
    Сообщения:
    1
    UPD. Извиняюсь, это я сам дурак. В папке с программой забыл debug.exe, которым начинал ковырять программу, вот он и запускался под Досбоксом. Новый год не прошел даром :).


    Подскажите, плиз, что я не так делаю?
    Бьюсь уже неделю с этим плагином, но как-то все не идет :(.

    Скомпилировать самому так и не удалось, это какой-то квест для очень продвинутых, так что пробовал разные версии скомпиленных бинарников, остановился на версии от @WaSanya, т.к. у меня ИДА 6.8 и этот плагин компилился с СДК 6.8.

    Запускаю ДосБокс, монтирую диски, запускаю debug file.exe.
    В ИДА-е открываю тот же файл, пытаюсь соединиться с ДосБоксом, не соединяется совсем, выдает ошибку по таймауту. В ДосБоксе при этом живет нормальный сеанс отладки под DEBUG-ом.
    Если после запуска debug file.exe нажать alt-Pause, то плагин видит ДосБокс, но ругается на неправильные пути к файлу. Меняю пути в настройках плагина, после этого он соединяется с ДосБоксом, запускается сеанс отладки. Но отлаживаемая программа не запускается и вообще создается впечатление, что сеанс отладки в ИДА-е и сеанс DEBUG-а живут параллельно, мне удается запустить под DEBUG-ом программу, но это никак не влияет на сеанс в ИДА-е. Адресное пространство у программ разное.

    Если не запускать debug в ДосБоксе, а сразу нажать alt-Pause, то плагин видит ДосБокс и сеанс отладки запускается (после исправления путей к файлу), но опять же запустить программу на исполнение не удается.

    Какой бубен нужно взять, кто-нибудь может сказать?

    Система - Win7 x64
    IDA Pro 6.8
     
    Последнее редактирование: 6 янв 2018
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление