Тестирование на проникновение API
Чаще всего API подводит авторизация, и такие изъяны нельзя найти с одним токеном. Мы тестируем ваши REST и GraphQL API в нескольких ролях и от имени разных арендаторов по OWASP API Security Top 10, чтобы найти пробелы в контроле доступа на уровне объектов и функций.
Что мы тестируем
Объём работ строится на OWASP API Security Top 10 (2023). Больше всего находок даёт и чаще всего пропускается тестирование с аутентификацией в разных ролях и от имени разных арендаторов: только так можно найти нарушения авторизации на уровне объектов и функций. Мы просим спецификацию OpenAPI/Swagger, чтобы покрыть почти все маршруты (её отсутствие уже само по себе находка).
- Нарушение авторизации на уровне объекта (BOLA / IDOR) между арендаторами и ролями
- Нарушение авторизации на уровне функций (BFLA) через смену ролей и методов
- Нарушение авторизации на уровне свойств объекта: mass assignment и избыточное раскрытие данных
- Аутентификация, неограниченное потребление ресурсов и чувствительные бизнес-процессы
- Инъекции, SSRF и небезопасная конфигурация
- Специфика GraphQL: интроспекция, батчинг, DoS через вложенные запросы и раскрытие ошибок
Grey-box, аутентифицированно, многоролево
Grey-box экономически оправдан и считается нормой: вы предоставляете спецификацию и тестовые учётные записи для каждой роли. Работаем в основном вручную, потому что сканеры находят ошибки конфигурации и известные CVE, но пропускают изъяны авторизации и бизнес-логики, на которые приходится основная часть рисков API.
- 1
Определение границ и учётные записи
Согласуем границы и собираем несколько учётных записей для разных ролей и арендаторов, а также вашу спецификацию OpenAPI/Swagger.
- 2
Инвентаризация эндпоинтов
По спецификации и живому трафику строим полную карту маршрутов и операций и отмечаем пробелы в спецификации.
- 3
Проверка аутентификации и авторизации
Тестируем контроль доступа на уровне объектов и функций в разных ролях и от имени разных арендаторов. Здесь сосредоточена основная часть рисков API.
- 4
Ввод, инъекции и злоупотребление бизнес-логикой
Тестируем инъекции, SSRF, потребление ресурсов и злоупотребление чувствительными бизнес-процессами с proof of concept.
- 5
Отчёт и бесплатная повторная проверка
Вы получаете отчёт с приоритетами и доказательствами в виде запросов и ответов, а исправленные проблемы мы без дополнительной платы перепроверяем в срок, указанный в SoW.
Что вы получаете
Та же глубина, что и в нашем образце отчёта, где разобранная находка как раз и есть межарендаторный IDOR в API (CWE-639, CVSS 3.1). К каждой находке прилагаются доказательства, нужные, чтобы воспроизвести и исправить её.
- Краткое резюме и общий уровень риска
- По каждой находке: описание, влияние, доказательства, шаги воспроизведения и исправление
- Proof of concept в виде пар запрос/ответ
- Уровень риска по CVSS 3.1 с переводом в бизнес-риск
- Ссылки на OWASP API Security Top 10 (2023) и CWE
- Бесплатная повторная проверка устранённых проблем в срок, указанный в SoW
Опирается на стандарты OWASP API Security
Покрытие соответствует OWASP API Security Top 10 (2023); тестирование GraphQL дополнительно идёт по OWASP WSTG-APIT-01 (Testing GraphQL). Для находок по авторизации (BOLA, BFLA, уровень свойств объекта) нужны несколько учётных записей в разных ролях и у разных арендаторов: с одним токеном их не найти. Находки оцениваются по CVSS 3.1.