Недавно на проекте столкнулся с необходимостью найти все конечные точки (endpoints) API у домена для исследования внешнего периметра.
Конечные точки — это URL-адреса, через которые приложения взаимодействуют друг с другом (клиент <-> база данных/веб-сервис).
Во время перебора директорий и конечных точек я наткнулся на файл openapi.json, в котором был расписан весь список конечных точек API, а также их полное описание со структурой запросов на сервер и возможными ответами от него. Структура этого JSON-файла оказалась совместимой со Swagger.
Swagger — это инструмент для создания, документирования и проверки API.
Подробное описание функционала API помогло мне быстрее понять назначение всех конечных точек и выявить их недостатки безопасности. Этим же самым мог воспользоваться реальный злоумышленник. Подробная документация API упрощает процесс разработки инфраструктуры, но её не стоило оставлять в доступе во внешней сети.
#кейс
