Автоматический поиск переполнения буфера

Тема в разделе "WASM.RESEARCH", создана пользователем utyf13, 29 июн 2005.

  1. utyf13

    utyf13 New Member

    Публикаций:
    0
    Регистрация:
    21 июн 2005
    Сообщения:
    5
    Вот наткнулся на пакет скриптов под IDA, которые ищут возможные переполнения буфера (http://sourceforge.net/projects/bugscam).

    Интересно, есть ли еще подобные вещи?

    Ну и конечно как вы думаете возможны ли универсальные определители уязвимости в приложении?
     
  2. _staier

    _staier New Member

    Публикаций:
    0
    Регистрация:
    3 окт 2003
    Сообщения:
    738
    Адрес:
    Ukraine
    вопрос не в поиске кода, который может привести к overflow ? в конце - концов типичные ошибки описаны

    и некоторые из них могут определяться автоматически

    (printf например в дизассемблерном листинге)

    впрос в возможности их exploitation,

    на вход таким ошибкам должены подаваться данные , пришедшие извне (для remote) или из input streams/files (для повышения привилегий)



    для этого одного deadlisting мало , только если программа очень простая , то можно полностью проанализировать все пути данных от ввода до вывода
     
  3. utyf13

    utyf13 New Member

    Публикаций:
    0
    Регистрация:
    21 июн 2005
    Сообщения:
    5
    Так я про это и написал :)

    Попробывал и уже есть замечание, что не обрабатывается проверка принемаемой строки. Т.е. в репорте выдается, что возможно переполнение, а на самом деле на sprintf попадаем только когда strlen меньше нужной длины. Мне кажеться это можно автоматически отловить.
     
  4. rgo

    rgo New Member

    Публикаций:
    0
    Регистрация:
    21 мар 2005
    Сообщения:
    87
    Универсальные теоретически возможны... Но только теоретически, не зря ж столько людей тратит время и деньги на аудит кода. Вообще баги разные бывают -- не только переполнение буфера. Переполнение -- наиболее просто используемый. Ловителей багов туева хуча, см, например, valgrind.
     
  5. YoungBastard

    YoungBastard New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2005
    Сообщения:
    231
    Адрес:
    Russia
    utyf13

    универсальный подход как показал мой опыт только один, создание программы с гибким искусственным интеллектом, а так это всё чушь... Только мозги себе про**ешь