SYSTEM ATLASЗагрузка материала

Неограниченное потребление ресурсов

Unrestricted Resource Consumption

Неограниченное потребление ресурсов — признанный класс риска, требующий архитектурных и эксплуатационных мер.

Простыми словами

Любой запрос расходует память, процессор, соединения или деньги. Если один клиент может создавать сколько угодно тяжёлых операций, он способен замедлить сервис для всех или резко увеличить расходы. Поэтому вводят лимиты, квоты, тайм-ауты, очереди и контроль стоимости операций.

Пример от @Vibeclakr

Пример при разработке

Endpoint генерации PDF принимает документ любого размера. Один пользователь может занять всю память; лимиты размера, времени и частоты сохраняют сервис доступным.

Это редакционный пример применения, а не часть определения или доказательство концепции.

Механизм действия

Сначала проверяют, есть ли исходное условие из определения. Затем смотрят, как оно влияет на структуру компонентов, потоки данных, ограничения и действия участников. Если эту связь не удаётся наблюдать, принцип не стоит использовать как готовое объяснение.

Пример в работе

Нерабочий подход

Использовать решение без учета его условий применимости и компромиссов.

Системный подход

Сопоставить проблему, контекст и ограничения с назначением концепции.

Ограничения

«Неограниченное потребление ресурсов» объясняет только часть происходящего в области «Безопасность». Сам принцип не говорит, насколько сильным будет эффект в вашем случае, и не заменяет измерения. При другом масштабе, среде или временном горизонте результат может отличаться.

Источник

OWASP Foundation. OWASP API Security Top 10 – 2023. 2023.

Первоисточник