Как работает атака?
Хакер перехватывает запрос к API и меняет поле
amount (сумма) с 1000 на 1. Если сервер не пересчитывает сумму на основе заказа, он списывает 1 рубль, хотя пользователь заказал товар на 1000.Почему стандартные тесты не ловят?
Обычно тестируют интерфейс: в поле ввода 1 → ошибка. Но API-запрос можно сформировать вручную (Postman, curl) и отправить любые параметры.
Какой тест нужен?
Parameter tampering — часть тестирования безопасности API. Тестировщик должен проверить:
Не передаётся ли критическая величина (сумма, скидка, количество) из ненадёжного источника?
Пересчитывает ли сервер сумму по внутренним данным (цена из БД, количество из корзины)?
Реальный кейс: Убытки одного магазина после такой атаки составили $50 000 за ночь.
Вывод: В требованиях к интеграции нужно явно писать: «Сервер не доверяет значениям суммы, скидки, статуса, переданным клиентом».