Фаззинг-тестирование с учетом структуры данных, библиотека libblobstamper

Cookbook - готовые рецепты

Доклад принят в программу конференции

Тезисы

Фаззинг-исследование предполагает тестирование программы случайными набором данных. Однако в случае многоуровневой системы, прямой фаззинг входных данных приводит, по сути, к тестированию лишь верхнего уровня системы, например, синтаксического анализатора, с минимальной возможностью прохода на нижележащие уровни.

Для преодоления этого препятствия предполагается использовать фаззинг-тестирование с учетом структуры данных (Structure Aware Fuzzing). При SAF-тестировании генерируются формально валидные (синтаксически верные или структурно корректные), но фактически случайные данные, что позволяет подвергнуть тестированию уровни системы, лежащие за синтаксическим анализатором.

Библиотека LibBlobStamper, созданная в недрах компании Posrgres Professional, позволяет решать задачи построения SAF-тестов как для случая строковых (синтаксических) так и для бинарных (структурных) входных данных.

В данном докладе рассказывается о проблематике Structure Aware Fuzzing'а, приводится краткий обзор имеющихся инструментов и проводится наглядная демонстрация того, как задачи SAF-фаззинга могут быть решены с использованием библиотеки LibBolbStamper.

Николай Шаплов

Postgres Professional

Эксперт в области фаззинг-тестировния.

Видео

Другие доклады секции

Cookbook - готовые рецепты