Интерактивный дизассемблер - Interactive Disassembler

Интерактивный дизассемблер
Автор (ы) оригинала Ильфак Гильфанов
Стабильный выпуск
7.6 / 22 марта 2021 г . ; 6 месяцев назад ( 2021-03-22 )
Написано в C ++
Операционная система Microsoft Windows , Mac OS X и Linux
Доступно в Английский , русский
Тип Дизассемблер
Лицензия Проприетарный
Веб-сайт www .hex-ray .com / products / ida / index .shtml

Интерактивная Дизассемблер ( МАР ) является дизассемблер для компьютерного программного обеспечения , который генерирует ассемблере исходный код из машинно-исполняемый код. Он поддерживает множество исполняемых форматов для разных процессоров и операционных систем . Его также можно использовать в качестве отладчика для исполняемых файлов Windows PE , Mac OS X Mach-O и Linux ELF . Декомпилятор плагин для программ , скомпилированных с микросхемой C / C ++ компилятор предоставляется за дополнительную плату. Последняя полная версия IDA Pro является коммерческой, а более ранняя и менее функциональная версия доступна для бесплатной загрузки (версия 7.6 по состоянию на март 2021 года).

IDA выполняет автоматический анализ кода, используя перекрестные ссылки между разделами кода, сведения о параметрах вызовов API и другую информацию. Однако характер разборки исключает полную точность, и обязательно требуется большое вмешательство человека; IDA имеет интерактивные функции, помогающие улучшить разборку. Типичный пользователь IDA начинает с автоматически сгенерированного листинга дизассемблера, а затем преобразует разделы из кода в данные и наоборот, переименовывает, аннотирует или иным образом добавляет информацию в листинг, пока не станет ясно, что он делает.

IDA, созданная Илфаком Гильфановым как условно-бесплатное приложение , позже была продана как коммерческий продукт бельгийской компанией DataRescue , которая улучшила его и продала под названием IDA Pro. В 2005 году Гильфанов основал Hex-Rays, чтобы продолжить разработку расширения Hex-Rays Decompiler IDA. В январе 2008 года Hex-Rays взяла на себя разработку и поддержку DataRescue's IDA Pro.

Сценарии

«Скрипты IDC» позволяют продлить работу дизассемблера. Предоставляются некоторые полезные сценарии, которые могут служить основой для сценариев, написанных пользователем. Чаще всего скрипты используются для дополнительной модификации сгенерированного кода. Например, внешние таблицы символов могут быть загружены, используя имена функций исходного исходного кода.

Пользователи создали плагины, которые позволяют использовать другие распространенные языки сценариев вместо или в дополнение к IDC. IdaRUB поддерживает Ruby, а IDAPython добавляет поддержку Python . Начиная с версии 5.4, IDAPython (зависит от Python 2.5) поставляется с предустановленной IDA Pro.

Поддерживаемые системы / процессоры / компиляторы

  • Системные хосты
    • Windows x86 и ARM
    • Linux x86
    • Mac OS X x86
  • Распознаваемые форматы исполняемых файлов
    • COFF и производные, включая Win32 / 64 / generic PE
    • ELF и производные (общие)
    • Мах-О ( Мах )
    • NLM ( NetWare )
    • LC / LE / LX (OS / 2 3.x и различные расширители DOS)
    • NE (OS / 2 2.x, Win16 и различные расширители DOS)
    • MZ ( MS-DOS )
    • OMF и производные (общие)
    • AIM (общий)
    • необработанный двоичный файл, такой как образ ПЗУ или COM-файл
  • Наборы инструкций
    • Семейство Intel 80x86
    • ARM архитектура
    • Motorola 68k и H8
    • Зилог Z80
    • MOS 6502
    • Intel i860
    • DEC Alpha
    • Аналоговые устройства ADSP218x
    • Ангстрем KR1878
    • Серия Atmel AVR
    • PDP11 серии DEC
    • Fujitsu F2MC16L / F2MC16LX
    • Семейство 32-битных Fujitsu FR
    • Hitachi SH3 / SH3B / SH4 / SH4B
    • Hitachi H8: h8300 / h8300a / h8s300 / h8500
    • Intel 196 серии: 80196/80196NP
    • Intel 51 серии: 8051 / 80251b / 80251s / 80930b / 80930s
    • Intel серии i960
    • Intel Itanium (ia64) серия
    • Виртуальная машина Java
    • MIPS: mipsb / mipsl / mipsr / mipsrl / r5900b / r5900l
    • Микрочип PIC: PIC12Cxx / PIC16Cxx / PIC18Cxx
    • MSIL
    • Семейство Mitsubishi 7700: m7700 / m7750
    • Митсубиси м32 / m32rx
    • Митсубиси м740
    • Митсубиси м7900
    • Семейство Motorola DSP 5600x: dsp561xx / dsp5663xx / dsp566xx / dsp56k
    • Motorola ColdFire
    • Motorola HCS12
    • NEC 78K0 / 78K0S
    • PA-RISC
    • PowerPC
    • Семейство Xenon PowerPC
    • SGS-Thomson ST20 / ST20c4 / ST7
    • Семья SPARC
    • Samsung SAM8
    • Siemens C166 серии
    • Серия TMS320Cxxx
  • Компилятор / библиотеки (для автоматического распознавания библиотечных функций)
    • Borland C ++ 5.x для DOS / Windows
    • Borland C ++ 3.1
    • Borland C Builder v4 для DOS / Windows
    • GNU C ++ для Cygwin
    • Microsoft C
    • Microsoft QuickC
    • Microsoft Visual C ++
    • Watcom C ++ (16/32 бит) для DOS / OS2
    • ARM C v1.2
    • GNU C ++ для Unix / common

Отладка

IDA Pro поддерживает ряд отладчиков, в том числе:

  • Удаленные приложения для Windows, Linux и Mac (предоставляемые Hex-Rays) позволяют запускать исполняемый файл в его родной среде (предположительно с использованием виртуальной машины для вредоносных программ)
  • GNU Debugger (gdb) поддерживается в Linux и OS X, а также в собственном отладчике Windows.
  • Bochs плагин предназначен для отладки простых приложений (например, повреждение UPX или MPRESS уплотняется исполняемые файлы)
  • Отладчик на базе PIN-кода Intel
  • Воспроизведение трассировки

Смотрите также

использованная литература

дальнейшее чтение

внешние ссылки