Источники данных для фаззинга API веб-приложений

Безопасность

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

Мнение Программного комитета о докладе

Если вы осознаете проблему источника данных для фаззинга — этот доклад для вас! А если не осознаете, все равно приходите — осознаете :)

Целевая аудитория

Pentest, AppSec, DevSecOps и разработчики, которые проверяют свои приложения на уязвимости.

Тезисы

Фаззинг API веб-приложений позволяет выявлять уязвимости, которые могут оставаться незамеченными при проведении статического анализа кода (SAST) или ручного анализа. В докладе будет рассмотрен наглядный пример.

Главная проблема фаззинга — это сбор данных. Для того чтобы выявить уязвимость, нужно собрать как можно больше входных точек, параметров запросов и — самое главное — поддерживать согласованность типов значений для этих параметров. В докладе рассмотрим различные источники, откуда можно добыть данные:
1. OpenAPI-спецификации,
2. Postman-коллекции,
3. proxy (BurpSuite, proxify),
4. логи (Elasticsearch),
5. данные команд нагрузочного тестирования (ammo для yandex-tank).

В качестве движка сканирования рассмотрим open source-инструмент от команды Project Discovery — nuclei, который поддерживает фаззинг и имеет community фаззинг-шаблоны. Рассмотрим, как конвертировать данные из упомянутых выше источников в формат, подходящий для nuclei, и запустить фаззинг.

Всеволод Дергунов

Positive Technologies

Application Security Enthusiast.

Видео