![]() |
Реверс и отладка x64 [win]
Всем привет!
В этой статье я хочу рассказать об инструментальных средствах отладки 64-х битных приложений под Windows, а именно об IDA Pro. Не будет долгих речей и вступлений, перейдём сразу к делу. При реверсе 32-х битных приложений, реверсеру предоставляется богатый выбор инструментальных средств, достаточно лишь упомянуть OllyDbg, IDA Pro, WinDbg, но при столкновении с x64 возникает вопрос: "Чем реверсить?". Для начала нужно скачать IDA Pro Portable v6.1 (рисунок 1). http://s019.radikal.ru/i632/1408/aa/b569a8cec5e7.jpg Рисунок 1 - Версия IDA Pro Portable В папке IDA находится файл idag64.exe (рисунок 2). Именно он понадобится для реверса и отладки 64-х битных приложений. http://s012.radikal.ru/i319/1408/79/01573d697c16.jpg Рисунок 2 - Файл idag64.exe Сэмпл для тестирования представлен на рисунке 3. http://s016.radikal.ru/i336/1408/ee/9d235bb99152.jpg Рисунок 3 - Сэмпл Запускаем IDA Pro (idag64.exe). В главное окно перетаскиваем сэмпл. В появившемся окне "Load a new file" жмём кнопку "OK". Как видите 64-х битный файл успешно открыт (рисунок 4). http://s017.radikal.ru/i405/1408/3c/6c2c54927611.jpg Рисунок 4 - Сэмпл в IDA Pro Это касаемо реверса, но возникает другой вопрос: "Как отлаживать?". В папке IDA находится файл win64_remotex64.exe, который является удалённым отладчиком (рисунок 5). http://i079.radikal.ru/1408/7f/9ca567b55a4a.jpg Рисунок 5 - Файл win64_remotex64.exe Запустив этот файл увидим следующее окно (рисунок 6). На локальном компьютере запускается debug server на порту 23946. http://i064.radikal.ru/1408/36/7e64b6f71afc.jpg Рисунок 6 - Удалённый отладчик Возвращаясь в IDA Pro, выбираем пункт меню Debugger -> Select debugger или просто жмём F9 (рисунок 7). http://s020.radikal.ru/i701/1408/a6/fb84e129d197.jpg Рисунок 7 - Меню "Выбор отладчика" в IDA Pro В появившимся окне "Select a debugger" выбираем "Remote Win32 debugger" и жмём кнопку "OK" (рисунок 8). http://s017.radikal.ru/i430/1408/78/06ef02d72ba0.jpg Рисунок 8 - Окно "Выбор отладчика" в IDA Pro В меню Debugger появились новые пункты, выбираем Debugger -> Process options (рисунок 9). В появившимся окне в поле "Hostname" указываем адрес 127.0.0.1 и жмём кнопку "OK" (рисунок 10). ВАЖНО: полный путь сэмпла не должен содержать символов кириллицы. Проще говоря: всё по-английски. http://s017.radikal.ru/i425/1408/47/78faa52c5e43.jpg Рисунок 10 - Параметры отладчика Теперь всё готово. Не забудьте установить точку останова (breakpoint) на начало программы выбором нужной инструкции и нажатием клавиши F2. Для начала отладки щёлкните по кнопке запуска отладчика (рисунок 11) или просто нажмите F9. http://s017.radikal.ru/i437/1408/8f/3625e45b137c.jpg Рисунок 11 - Кнопка запуска отладчика Сэмпл запустился в отладке, выполнение остановилось на точке останова, управление отладчиком представлено в пункте меню Debugger (рисунок 12). http://s018.radikal.ru/i513/1408/a3/510389a613a4.jpg Рисунок 12 - Сэмпл в отладке На этом всё. Спасибо за внимание! |
Данный материал не достоин внимания. Даже азов отладки в IDA не разобрано, а какое громкое название...
|
Все наверно знают что существует olly-подобный аналог, который активно допиливается: hffps://github.com/x64dbg/x64dbg
|
о круто! эту кнопочку нажать потом вот эту, и все по картинкам !!!
|
Жаль, автор OllyDBG забил на разработку. А x64dbg пока сыроват.
|
Отладкой приложений для Андроид занимался кто-нибудь?
|
Часовой пояс GMT +3, время: 22:00. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot