Конспект
· Анализ и экспертиза исходного текста программы – идеальная методология поиска ее уязвимостей.
· Исследование исходного текста программ предполагает поиск подверженных ошибкам директив, построчную экспертизу исходного текста программы и изучение различий в нем.
· Изучение выполнимого кода программы осуществляется при помощи программ трассировки, отладчиков, модулей проверки текущего состояния программы (анализаторов) и аудита документации проектирования программы.
· Экспертиза исходного текста программы – необходимая часть обеспечения ее безопасности.
· Поиск подверженных ошибкам конструкций языка программирования в исходном тексте программ позволяет найти ошибки переполнения буфера, проверки входных данных и ошибки, сопутствующие конкуренции программ за ресурсы.
· Утилита grep может использоваться для повышения эффективности поиска подверженным ошибкам директив.
· На сайте www.sysinternals.com можно найти свободно распространяемые инструментальные средства аудита для Windows.
· Список Rosetta Stone (по адресу http://bhami.com/rosetta.html) позволяет найти программы трассировки для заданной платформы.
· Отладчики используются для управления выполнением исследуемой программы и поиска ошибок в ней или исследования логики ее работы.
· Тестирование методом «черного ящика» позволяет обнаружить внутренние компоненты, скрытые от невооруженного взгляда исследователя.
· Вскрытие корпуса «черногоящика» – самый легкий способ для определения его внутреннего строения.
· Абсолютно «черныхящиков» нет. Одни из них – более «черные», а другие – менее.
Часто задаваемые вопросы
Приведенные вопросы и ответы авторов позволяют оценить степень уяснения читателем изложенного в главе материала и получить представление о возможности применения полученных знаний на практике. Если читатель захочет задать автору вопрос, то ему следует посетить сайт www.syngress.com/solutions, заполнить и отослать форму «Вопрос автору» («Ask the author»).
Вопрос: Какой наилучший метод исследования уязвимостей?
Ответ: На этот вопрос можно дать только субъективный ответ. Наилучший метод исследования уязвимостей – это тот, который исследователю наиболее знаком, наиболее удобен и позволит быстрее провести исследование. Рекомендуется поэкспериментировать с различными методами и схемами их применения.
Вопрос: Законны ли с юридической точки зрения декомпиляция и другие методы реинжиниринга?
Ответ: В Соединенных Штатах реинжиниринг скоро может стать противозаконным. В Акте авторского права цифрового тысячелетия (Dig^l Millennium Copyright Act) содержатся