Привет, охотники! Это мой новый разбор, и он посвящён очень интересной находке — нарушению контроля доступа в платёжной платформе, благодаря которому у меня получилось создавать и подделывать счета.
Давайте начнём…
Введение
Изучая онлайн-платформу для обработки платежей на предмет возможных уязвимостей, я обнаружил критическую проблему с контролем доступа. Она позволяла любому пользователю создавать счета, привязанные к существующим идентификаторам — без какой-либо аутентификации или авторизации. Такая ошибка в настройках может легко привести к имперсонации, фишингу или даже мошенничеству в крупном размере, если этим воспользуются злоумышленники.
В этом посте я расскажу, как обнаружил уязвимость, о своём подходе и о том, как я сообщил о ней. Как и всегда, никаких конфиденциальных данных получено не было и никакого реального вреда нанесено не было.
Цель
Давайте назовём её vulnerable.com. Эта платформа предоставляет услуги по обработке платежей и оформлению заказов для продавцов. Меня особо заинтересовал их API для оформления заказов, а именно такой эндпоинт:
https://checkoutv2.vulnerable.com/v1/checkout/create
Разведка
Я начал своё исследование checkoutv2.vulnerable.com следующим образом:
Все статьи подряд / Информационная безопасность / Хабр