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

Интерактивный дизассемблер
Оригинальный автор (ы)Ильфак Гильфанов
Стабильный выпуск
7.5 SP3[1] / 27 октября 2020 г.; 27 дней назад (2020-10-27)
Написано вC ++[2]
Операционная системаМайкрософт Виндоус, Mac OS X, и Linux
Доступно ванглийский, русский
ТипДизассемблер
ЛицензияПроприетарный
Интернет сайтwww.hex-лучи.com/товары/Ида/индекс.shtml

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

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

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

Сценарии

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

Пользователи создали плагины, которые позволяют использовать другие распространенные языки сценариев вместо или в дополнение к IDC. IdaRUB поддерживает Рубин и 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 и производные (общие)
    • ЦЕЛЬ (общий)
    • необработанный двоичный файл, такой как образ ПЗУ или 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 серии
  • Компилятор / библиотеки (для автоматического распознавания библиотечных функций)[5]
    • 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 поддерживает ряд отладчиков,[6] включая:

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

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

Рекомендации

  1. ^ Выпущен IDA Pro 7.5 SP3 (28 октября 2020 г.)
  2. ^ Hex-ray Home
  3. ^ IDA Pro 7.0 Скачать бесплатную версию
  4. ^ "О нас". Hex-лучи. 27 февраля 2012 г.. Получено 2 сентября 2013.
  5. ^ «Поддержка компилятора FLIRT». Hex-лучи.
  6. ^ Орел, Крис (2008). Книга IDA Pro: неофициальное руководство по самому популярному дизассемблеру в мире. Пресс без крахмала. ISBN  978-1-59327-178-7.

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

внешняя ссылка