IDA Pro Disassembler (англ. Interactive DisAssembler) — интерактивный дизассемблер, который широко используется для реверс-инжиниринга. Он отличается исключительной гибкостью, наличием встроенного командного языка, поддерживает множество форматов исполняемых файлов для большого числа процессоров и операционных систем. Первоначальный автор и основной разработчик — Ильфак Гильфанов[2].
IDA Pro Disassembler | |||
---|---|---|---|
| |||
Тип | Дизассемблер | ||
Разработчик | hex-rays | ||
Написана на | C++ | ||
Операционные системы | Windows, Linux, Mac OS X | ||
Аппаратные платформы | Windows, macOS и Linux | ||
Последняя версия | 7.7sp1[1] (12 января 2022 ) | ||
| |||
| |||
Лицензия | proprietary | ||
Сайт | hex-rays.com/products/id… |
Позволяет строить блок-схемы, изменять названия меток, просматривать локальные процедуры в стеке и многое другое.
В последних версиях имеет встроенный отладчик x86 и ARM.
IDA, до определенной степени, умеет автоматически выполнять анализ кода, используя перекрестные ссылки, знание параметров вызовов функций стандартных библиотек, и другую информацию. Однако вся сила его проявляется в интерактивном взаимодействии с пользователем. В начале исследования дизассемблер выполняет автоматический анализ программы, а затем пользователь с помощью интерактивных средств IDA начинает давать осмысленные имена, комментировать, создавать сложные структуры данных и другим образом добавлять информацию в листинг, генерируемый дизассемблером пока не станет ясно, что именно и как делает исследуемая программа.
Дизассемблер имеет консольную и графическую версии. Поддерживает большое количество форматов исполняемых файлов. Одной из отличительных особенностей IDA Pro является возможность дизассемблирования байт-кода виртуальных машин Java и .NET. Также поддерживает макросы, плагины и скрипты, а последние версии содержат интегрированный отладчик.
Версии поставки
правитьСуществует несколько версий IDA Pro — бесплатная (freeware), стандартная (standard) и расширенная (advanced). Бесплатная версия обладает ограниченными возможностями по сравнению со стандартной и расширенной версиями — поддерживается только архитектура x86 и отсутствует поддержка подключаемых модулей.
Поддерживаемые форматы исполняемых файлов
править- ELF (UNIX-подобные)
- MZ (DOS)
- PE (Windows)
- Mach-O (MacOS X)
- Netware .exe
- OS/2 .exe
- Geos .exe
- «Сырой» двоичный код (например, дамп памяти)
См. также
правитьПримечания
править- ↑ IDA: What's new in 7.7sp1 . Дата обращения: 6 апреля 2022. Архивировано 18 марта 2022 года.
- ↑ Алексей Доля (2003-05-22). "IDA Pro - самый мощный дизассемблер в мире". Архивировано 7 января 2022. Дата обращения: 9 января 2022.
{{cite journal}}
: Cite journal требует|journal=
(справка)
Литература
править- Крис Касперски. Искусство дизассемблирования. — 1-е изд. — М.: «BHV», 2008. — С. 896. — ISBN 978-5-9775-0082-1.