API: ОТДЕЛЬНЫЙ ПОДХОД Для начала я всегда пытаюсь найти документацию API, ведь это может существенно облегчить задачу для дальнейшего тестирования. В этом мне помогает словарь
API-Documentation-Wordlist, в котором содержатся широко известные конечные точки API. Часто API-роуты можно вытащить из js-файлов приложения, я использую дополнение в BurpSuite
JS Miner, которое вытаскивает роуты вместе с методом HTTP-запросов. Отмечу, что APIs могут использоваться сторонними разработчиками, которые имеют открытую документацию, но которую нужно найти самостоятельно.
Бывают случаи, когда разработчики оставляют старые версии АПИ, роуты которых могут содержать уязвимости. Например, приложение работает в основном с /api/v2/..., тогда имеет смысл проверить /api/v1/... и прочие версии.
Стоит отметить, что можно также использовать различные HTTP-методы для исследования API, так как роут бывает доступен только с определенного метода.
! Но стоит помнить и знать, что
использовать все возможные HTTP-методы может потенциально опасно для исследования приложения, так как мы можем удалить или изменить данные, даже не поняв этого. Нужно согласовывать свои действия с заказчиками или лидами проекта и хранить лог своих действий во избежание неприятных ситуаций.