Доступна новая версия Dataflow-0.2.0

This post is also available in: Английский

После месяца разработки доступны следующие важные новые возможности:

  1. Восстановление прототипов функций из бинарного кода без какой-либо дополнительной информации;
  2. Создание SDK для написание тестов для бинарного модуля;
  3. Загрузка тестов в адресное пространство изучаемой программы и ее запуск ( после этого программа продолжает работу в обычном режиме ).

Таким образом, версия Dataflow-0.2.0 может использоваться для организации in memory fuzzing.

Скачать утилиту, посмотреть экранные снимки и историю изменений можно на странице проекта, частью которого утилита и является. Для тех кто скачал, но не знает с чего начать (даже после прочтения readme) есть Пример использования dataflow. Более продвинутые новые особенности описаны в Пример использования dataflow. Часть 2. Любые пожелания, критика и багрепорты приветствуются.

Комментарии 5

  • >> 1.Восстановление прототипов функций из бинарного кода без какой-либо дополнительной информации;

    Какие ограничения на прототип функции?
    Т.е. возможно ли, например, восстановление прототипа функции с переменным количеством аргументов?

    P.S. При отправке ответа (комментария) в этом блоге: «Имя (_r_обязательно)»

    • Ограничения разумеется есть. Они следующие:
      1. Типы параметров не восстанавливаются. Т.е. фактически восстанавливается их количество и способ вызова функции. Все параметры считаются int, что на низком уровне верно — значения, указатели на структуры и т.д. передаются двойное слово.
      2. Еще есть не то что бы ограничение, скорее недочет. Существует случаи, когда параметр определяется, если он передается через регистр и этот регистр используется не сразу, а сначала помещается на стек и через некоторое время изымается и используется.

      Та часть функции, которая имеет переменное количество параметров будет рассматриваться как один параметр.

      >> P.S. При отправке ответа (комментария) в этом блоге: «Имя (_r_обязательно)»
      Если честно, не понял о чем Вы 😉

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *