В чем преимущество IDA по сравнению с visual studio при разборке dll? - PullRequest
4 голосов
/ 17 сентября 2010

Предположим, у меня есть проект, использующий dll, так что я могу проследить внутренности dll в «Окне разборки» визуальной студии, тогда в чем преимущество IDA в этом случае? Есть ли?

Ответы [ 2 ]

7 голосов
/ 17 сентября 2010

Акцент в IDA Pro (Interactive DisAssembler) на интерактив .Думайте об этом как об IDE для работы по разборке.

  1. Вы можете разбирать файлы без необходимости их отладки
  2. Он автоматически идентифицирует код и данные;однако вы всегда можете переопределить его решение вручную.
  3. Он группирует потоки команд в функции и преобразует доступ к стеку в символические имена для локальных переменных и аргументов .
  4. Может отображатьпоток кода в виде графика
  5. Отслеживает данные и перекрестные ссылки, например, какие функции обращаются к конкретному адресу данных или какие функции вызывают текущий.
  6. Он автоматически идентифицирует библиотечные функции распространенных компиляторов даже при отсутствии отладочной информации
  7. Вы можете легко перемещаться по всему двоичному файлу, переименовывать любое место в описательное имя и добавлять комментарии
  8. Вы можетесоздать структуры и перечисления и использовать их, чтобы сделать разборку более описательной, заменяя числовые значения и смещения именами.Многие структуры Win32 API предопределены.
  9. Вы можете автоматизировать общие задачи, используя встроенный C-подобный язык сценариев IDC или Python.
  10. Аргументы общих функций API прокомментированы и переименованы .
  11. С помощью дополнительного плагина декомпилятора вы можете декомпилировать 32-битный код x86 или ARM.
  12. Если сценариев недостаточно, вы можете писать плагины на C ++.
  13. Имеет множество отладочных модулей: собственный Win32, движок WinDbg, GDB (для x86 / ARM / MIPS / PPC), эмулятор Bochs и многое другое.Также доступна удаленная отладка.

Короче говоря, если вы регулярно разбираете файлы, этот инструмент незаменим.Если вы хотите попробовать, получите демоверсию или бесплатную версию здесь .

Отказ от ответственности: я работаю на Hex-Rays.

0 голосов
/ 17 сентября 2010

Это отличный инструмент, но, если честно, если вы не используете:

  • Hex-Rays (плагин декомпилятора для IDA)
  • специальный плагин IDA (скажем, для распаковки))
  • Блок-схемы / интерактивные функции

Я не вижу никаких преимуществ ( для 32-разрядных систем x86 ), тем более что вам приходится платить за это, и дополнительныеесли вы хотите плагин hex-лучей.все, что делает IDA Pro (x86 32bit), может быть сделано с помощью других бесплатных инструментов, наряду с ollydbg и некоторыми плагинами (единственное, чего нельзя получить, это часть декомпилятора, большинство бесплатных решений suck ).

Единственное ОГРОМНОЕ преимущество, которое я вижу (для 32-битных систем x86), - это предлагаемая поддержка, наглядно продемонстрированная в посте Игоря :), которого нет ни у бесплатных, ни у некоторых инструментов Microsoft.

Примечание: если вы не заметили, мой ответ - только для 32-разрядных систем x86 и 32-разрядных IDA Pro с шестигранными лучами (я давно этим не пользовался, я фанат ollydbg)

...