11/15/2006

Используйте фаззинг

Фаззинг (fuzzing) – это метод тестирования, который был разработан для поиска ошибок, связанных с ненадежностью. Почти каждая ошибка или уязвимость, связанная с синтаксическим анализом файлов, была найдена либо просто случайно, либо с помощью фаззинга.
Cинтаксический анализ сложных структур данных – это сложная задача, сложный код будет иметь ошибки. Вы должны тестировать всякий код, который проводит синтаксический анализ файлов и сетевого трафика. Программа Майкрософт под названием «Жизненный цикл разработки безопасности» (SDL, Security Development Lifecycle) очень подробно говорит о том, что это значит для форматов файлов.

Вы должны тестировать все анализаторы испорченных файлов по 100 000 раз, используя средства фаззинга файлов.

Cредство фаззинга файлов, а также средство фаззинга исходного кода C++ включены в книгу The Security Development Lifecycle (авторы: Michael Howard и Steve Lipner microsoft.com/MSPress/books/8753.asp) ...

0 Comments: