Другие языки программирования и технологии
Дизассемблер и отладчик.
Объясните мне, несведущему человеку, для чего нужны дизассемблеры вроде IDA Pro, если есть отладчик, например Olly Debagger? Просто по сути в отладчике ведь тоже представлен тот же ассемблерный код программы, но ещё и есть возможность его редактирования.
Добавлю к Ариэлю. .
IDA пытается из команд сделать более читаемый "исходник".
Называя метки, оставляя комментарии в т. ч. откуда могли прийти переходы, и откуда могли читаться строки и т. д. +
для IDA есть плагины в т. ч. и "разворачивающие" некоторые элементы защиты + плагины которые во многом упрощают поиск нужных фрагментов. В отладчике трудно охватывать большие участки кода, держать всё в памяти - нереально. Сидеть с бумажкой. . ну. . проще имхо сидеть с отладчиком и параллельно открытом IDA исходнике. + Вы можете сами дописывать свои комментарии, изменять метки на более осмысленные, постепенно понимая что и откуда растет. Эти две программы ни в коем разе не взаимозаменяемы, но отлично дополняют друг-друга.
+IDA понимает .NET, Java (и может декомпилировать в байт код) и др. . Я относительно давно не следил за Olly, но не думаю, что там это появилось. Лезть сейчас смотреть - лень =)
Ну и потом - откровенно - где Вам навигация удобнее по текстовому файлу в IDA или в отладчике? (слава б*гу сегменты в 64к ушли в прошлое на PC) а то прыгать по сегментам в отладчике то ещё было удовольствие =)
IDA пытается из команд сделать более читаемый "исходник".
Называя метки, оставляя комментарии в т. ч. откуда могли прийти переходы, и откуда могли читаться строки и т. д. +
для IDA есть плагины в т. ч. и "разворачивающие" некоторые элементы защиты + плагины которые во многом упрощают поиск нужных фрагментов. В отладчике трудно охватывать большие участки кода, держать всё в памяти - нереально. Сидеть с бумажкой. . ну. . проще имхо сидеть с отладчиком и параллельно открытом IDA исходнике. + Вы можете сами дописывать свои комментарии, изменять метки на более осмысленные, постепенно понимая что и откуда растет. Эти две программы ни в коем разе не взаимозаменяемы, но отлично дополняют друг-друга.
+IDA понимает .NET, Java (и может декомпилировать в байт код) и др. . Я относительно давно не следил за Olly, но не думаю, что там это появилось. Лезть сейчас смотреть - лень =)
Ну и потом - откровенно - где Вам навигация удобнее по текстовому файлу в IDA или в отладчике? (слава б*гу сегменты в 64к ушли в прошлое на PC) а то прыгать по сегментам в отладчике то ещё было удовольствие =)
Дмитрий Усманов
Спасибо за такое ясное пояснение. Честно признаться, мне пока не знакомы эти две программулины лично, лишь по видео с ютюба. Но сейчас понадобилось кое-что кое-где поискать, вот и решил изучить немного эту тему. Ясно, в общем обе программы пригодятся.
вы забываете про различные мехнизмы защиты и одна из них - определение что код открыли в дебаггере. вот в основном в оле будет код вылетать и вы ничего толком не сможите, а ида, тут более мощный инструментарий, скажу что большинство прог ломалось на иде
Похожие вопросы
- в чем суть ассемблера и дизассемблера?
- Чтоб самому анализировать exe на наличие вирусов, обязательно надо знать C++ и дизассемблер ?
- Где в Visual Studio 2012 дизассемблер? надо посмотреть что компилирует масм32 при .IF... .ELSEIF...
- Почему строка всё-таки выводится, а отладчики "тупят" ?
- Как раньше программисты создавали большие проекты без нормальной IDE и отладчика?
- Ассемблер рекурсивная процедура. вычисление факториала, в чем проблемма программы? в отладчике она зацикливается.
- Расскажите подробнее: оператор ЭВМ, администраторы корпоративных сетей и отладчики программного обеспечения.