IDA Pro: Инструмент для обратной разработки программного обеспечения
Interactive Disassembler
IDA: мощный дизассемблер и отладчик для анализа ПО. Reverse engineering, исследование уязвимостей, анализ вредоносного кода. Поддержка разных ОС и форматов.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Инструмент обратной разработки программного обеспечения
Software reverse engineering tool
Интерактивный дезассемблер (IDA) – это дезассемблер для компьютерного программного обеспечения, который генерирует исходный код на языке ассемблера из машинного кода. Он поддерживает различные форматы исполняемых файлов для разных процессоров и операционных систем. Его также можно использовать в качестве отладчика для исполняемых файлов Windows PE, Mac OS X Mach-O и Linux ELF. Приобрести отдельно можно плагин-декомпилятор, который генерирует высокоуровневое представление анализируемой программы, подобное исходному коду на языке C. IDA широко используется в обратной разработке программного обеспечения, включая анализ вредоносного ПО и исследование уязвимостей. IDA часто называют «де-факто отраслевым стандартом дезассемблера».
The Interactive Disassembler (IDA) is a disassembler for computer software which generates assembly language source code from machine executable code. It supports a variety of executable formats for different processors and operating systems. It can also be used as a debugger for Windows PE, Mac OS X Mach O, and Linux ELF executables. A decompiler plug in, which generates a high level, C source code like representation of the analysed program, is available at extra cost. IDA is used widely in software reverse engineering, including for malware analysis and software vulnerability research. IDA has been referred to as the "de facto industry standard disassembler".
История
Ильфак Гильфанов начал работу над IDA в 1990 году и первоначально распространял её как условно-бесплатное приложение. В 1996 году бельгийская компания DataRescue взяла на себя разработку IDA и начала продавать её как коммерческий продукт под названием IDA Pro. Первоначальные версии IDA не имели графического пользовательского интерфейса (GUI) и работали как расширенная консольная программа для DOS, OS/2 или Windows. В 1999 году DataRescue выпустила первую версию IDA Pro с графическим интерфейсом, IDA Pro 4.0. В 2005 году Гильфанов основал Hex Rays для разработки декомпилятора Hex Rays, расширения для IDA. В январе 2008 года Hex Rays взяла на себя разработку и поддержку IDA Pro от DataRescue. В 2022 году Hex Rays была приобретена компанией Smartfin, европейским венчурным и частным инвестиционным фондом.
Ilfak Guilfanov began working on IDA in 1990, and initially distributed it as a shareware application. In 1996, the Belgian company DataRescue took over the development of IDA and began to sell it as a commercial product, under the name IDA Pro. Initial versions of IDA did not have a graphical user interface (GUI), and ran as an extended DOS, OS/2, or Windows console application. In 1999, DataRescue released the first version of IDA Pro with a GUI, IDA Pro 4.0. In 2005, Guilfanov founded Hex Rays to pursue the development of the Hex Rays Decompiler IDA extension. In January 2008, Hex Rays assumed the development and support of DataRescue's IDA Pro. In 2022, Hex Rays was acquired by Smartfin, a European venture capital and private equity investor.
Сценарий
Скрипты IDC позволяют расширить функциональность дизассемблера. Предоставляются некоторые полезные скрипты, которые могут служить основой для скриптов, написанных пользователями. Чаще всего скрипты используются для дополнительной модификации сгенерированного кода. Например, можно загружать внешние таблицы символов, используя имена функций из исходного кода. Пользователи создали плагины, позволяющие использовать другие распространенные языки скриптов вместо IDC или в дополнение к нему. IdaRUB поддерживает Ruby, а IDAPython добавляет поддержку Python. Начиная с версии 5.4, IDAPython (требующий Python 2.5) предустановлен в IDA Pro.
"IDC scripts" make it possible to extend the operation of the disassembler. Some helpful scripts are provided, which can serve as the basis for user written scripts. Most frequently scripts are used for extra modification of the generated code. For example, external symbol tables can be loaded thereby using the function names of the original source code. Users have created plugins that allow other common scripting languages to be used instead of, or in addition to, IDC. IdaRUB supports Ruby and IDAPython adds support for Python. As of version 5.4, IDAPython (dependent on Python 2.5) comes preinstalled with IDA Pro.
Версии
Последняя полная версия IDA Pro является коммерческой (версия 8.2 на декабрь 2022 года), а менее функциональная версия под названием IDA Free доступна для бесплатной загрузки.
The latest full version of IDA Pro is commercial (version 8.2 as of December 2022), while a less capable version, named IDA Free, is available for download free of cost.