С токеном одного пользователя приходят транзакции другого: как квалифицировать находку
Вы авторизованы как пользователь A (его id — 5510). В ответе одного из эндпоинтов вам попался чужой идентификатор, и вы пробуете:
GET /api/v1/users/7781/transactions
Authorization: Bearer <токен пользователя A>
Ответ: 200 OK и полная история операций пользователя B, включая суммы и маскированные номера карт.
Что это и что делать?
- Дефект безопасности: сервис проверил аутентификацию, но не проверил права на объект — приложить оба токена, идентификаторы и ответ, эскалировать немедленно
- Не дефект: идентификатор пришёл из ответа самого API, значит такой доступ предусмотрен архитектурой сервиса
- Дефект интерфейса: это фронтенд не должен показывать чужие идентификаторы в ссылках и ответах эндпоинтов
- Дефект низкой критичности: данные доступны только тому, кто заранее знает прямую ссылку и чужой идентификатор
