OWASP Top 10:
десять рисков на практике
Отраслевой справочный список по безопасности веб-приложений, переведённый в то, что каждая категория значит для реального приложения и что в ней проверяется.
OWASP Top 10 — это не список уязвимостей, а список <em>категорий</em> рисков, периодически обновляемый по данным десятков тысяч приложений. Это та ссылка, которую приводят большинство договоров и систем соответствия, говоря «проверка по признанной методологии». Это руководство проходит по редакции 2021 года — используемой повсеместно — и показывает, что реально проверяется в каждой категории.
A01 — Нарушение контроля доступа
Первое место и самый стабильный источник реальных инцидентов. Приложение проверяет, кто вы, но не проверяет, разрешено ли вам именно это действие. На практике: меняете идентификатор в URL и видите счёт другого клиента; напрямую вызываете административный endpoint, который интерфейс вам не показывает; меняете поле роли в запросе и становитесь администратором. Ни один сканер это не ловит, потому что не знает, кто что должен видеть.
A02 — Криптографические сбои
Чувствительные данные передаются или хранятся без адекватной защиты: трафик по HTTP, пароли с устаревшими алгоритмами, ключи в исходном коде, карточные данные или документы, лежащие в открытом виде «временно». Раньше категория называлась «раскрытие чувствительных данных», и переименование полезно: проблема не только в раскрытии, но и в неверном выборе механизма защиты.
A03 — Инъекции
Пользовательские данные попадают в интерпретатор без разделения: SQL, системные команды, LDAP, XPath, серверные шаблоны. Сюда же входит межсайтовый скриптинг, перенесённый в редакции 2021 года. Это категория, которую автоматические инструменты покрывают лучше всего — и именно поэтому при ручной проверке внимание уходит к тому, что инструменты упускают: инъекции второго порядка, необычные контексты, обходимые фильтры.
A04 — Небезопасный дизайн
Категория, появившаяся в 2021 году, и самая трудная для автоматизации: приложение делает ровно то, для чего спроектировано, а проблема в самом проекте. Восстановление пароля через общеизвестный ответ, отсутствующий в логике лимит возврата, процесс заказа, который можно повторить. Здесь нет сигнатуры для обнаружения — только человек, понимающий бизнес и пытающийся его использовать неправильно.
A05 — Ошибки конфигурации безопасности
Оставленные активными учётные записи по умолчанию, сообщения об ошибках, раскрывающие внутреннюю структуру, открытые административные сервисы, слишком широкие права в облаке, включённая в продакшне отладка. Это категория с лучшим соотношением усилий на устранение и снятого риска — и в большинстве проверок источник первого входа.
A06 — Уязвимые и устаревшие компоненты
Библиотеки, фреймворки и сервисы с известными опубликованными уязвимостями. Категория, лучше всего решаемая автоматизацией: инвентарь зависимостей и регулярная проверка закрывают большинство случаев. Настоящая трудность не в обнаружении, а в обновлении — старая зависимость, вплетённая глубоко в код, превращается в проект, а не в патч.
A07 — Сбои идентификации и аутентификации
Разрешены слабые пароли, нет ограничения попыток, сессии не истекают, предсказуемые токены, злоупотребление восстановлением учётной записи, многофакторная аутентификация, обходимая через альтернативный поток. Последний случай встречается чаще, чем кажется: MFA на веб-интерфейсе, но не на мобильном API.
A08 — Сбои целостности ПО и данных
Код или данные принимаются без проверки происхождения: неподписанные автообновления, библиотеки из неконтролируемых источников, десериализация пользовательских объектов, конвейеры поставки, куда любой может подложить артефакт. Это категория атак на цепочку поставок — поэтому NIS2 и согласованное с ним законодательство выделяют её отдельно.
A09 — Сбои логирования и мониторинга
Категория, которая сама по себе никогда не вызывает взлом, но определяет его длительность. Незалогированные события безопасности, журналы только локально и стёртые злоумышленником, оповещения, которые никому не доходят, невозможность восстановить произошедшее. В проверке это измеряется просто: в конце команду спрашивают, что она заметила, — и ответ говорит больше, чем список находок.
A10 — Подделка запросов на стороне сервера (SSRF)
Приложение берёт переданный пользователем адрес и само по нему обращается. Злоумышленник направляет его во внутреннюю сеть или к сервису метаданных облачного провайдера и получает доступ к тому, что напрямую недостижимо. В Top 10 категория попала в 2021 году именно потому, что облачные архитектуры усилили её влияние: один удачный запрос может вернуть учётные данные.
Что ловит автоматика и что требует человека
| Категория | Покрытие автосканированием | Что добавляет ручная проверка |
|---|---|---|
| A01 Контроль доступа | Очень низкое | Проверка между ролями и клиентами с реальными учётками |
| A02 Криптография | Частичное (протоколы, сертификаты) | Проверка реального хранения и управления ключами |
| A03 Инъекции | Хорошее | Инъекции второго порядка, контексты и обходимые фильтры |
| A04 Небезопасный дизайн | Отсутствует | Злоупотребление бизнес-потоком — единственный доступный метод |
| A05 Конфигурация | Хорошее | Оценка реального влияния в контексте архитектуры |
| A06 Устаревшие компоненты | Очень хорошее | Подтверждение эксплуатируемости, а не только версии |
| A07 Аутентификация | Частичное | Обход MFA через альтернативные потоки, злоупотребление восстановлением |
| A08 Целостность | Низкое | Анализ цепочки поставки и десериализации |
| A09 Логирование | Отсутствует | Измерение того, что реально обнаружено во время проверки |
| A10 SSRF | Частичное | Разворот к внутренним сервисам и метаданным облака |
Частые вопросы
Что такое OWASP Top 10?
Это список десяти важнейших категорий рисков безопасности веб-приложений, публикуемый Open Worldwide Application Security Project и периодически обновляемый по данным десятков тысяч реальных приложений. Это не перечень отдельных уязвимостей, а именно категории — поэтому он используется как структура отчётности и методологическая ссылка в договорах и системах соответствия.
Покрывает ли проверка «по OWASP Top 10» всё?
Нет, и это важно знать до подписания. Список покрывает самые частые категории, но не включает дефекты вашей бизнес-логики — повторяемый возврат средств или отсутствующий лимит не попадают ни в одну категорию. Хорошая проверка использует Top 10 как минимальную структуру и добавляет функциональную проверку потоков, которые двигают деньги или раскрывают данные.
Какая категория чаще всего встречается в реальных проверках?
Нарушение контроля доступа (A01) и ошибки конфигурации (A05). Первое — потому что авторизацию нужно проверять на каждом действии, а приложения растут быстрее своих правил; второе — потому что инфраструктура часто меняется, и каждое изменение что-то оставляет: открытый сервис, учётку по умолчанию, слишком широкие права в облаке. Обе относительно дёшево исправляются после обнаружения.
Как часто обновляется список?
Раз в несколько лет, по данным из реальных приложений и опросу сообщества. Редакция 2021 года принесла заметные изменения — появление категорий небезопасного дизайна и целостности ПО, перенос межсайтового скриптинга в инъекции и вход SSRF в Top 10. Указывая методологию в договоре, называйте редакцию, чтобы не было двусмысленности при аудите.
Есть ли аналогичный список для мобильных приложений и API?
Да. OWASP публикует отдельные списки для мобильных приложений и для безопасности API, а также более подробные руководства по проверке, например стандарт ASVS для веб-приложений. Для продукта с мобильным приложением и публичным API полная проверка использует все три — списки пересекаются лишь частично, а API часто наименее проверенная часть.
Связанные руководства
- Сколько стоит пентест — что определяет цену, как оценивается трудоёмкость и что делает предложения сопоставимыми.
- DORA и TLPT — цифровая операционная устойчивость в финансах и тестирование на основе угроз.
- ISO 27001 и SOC 2 — какие меры требуют технической проверки и какие доказательства принимает аудитор.
- Закон 48/2023 (Молдова) — национальная система кибербезопасности: на кого распространяется и какие обязанности вводит.
- PCI DSS 4.0 — требования 11.3 и 11.4, проверка сегментации и что это значит для платёжных провайдеров.
- Пентест против сканирования уязвимостей — что находит каждый, что упускает и что аудиторы принимают как доказательство.
- Как подготовиться к пентесту — охват, доступы, правила взаимодействия и всё, что решается до первого дня.
Материал кратко излагает редакцию OWASP Top 10 2021 года в информационных целях. Список периодически обновляется OWASP; проверяйте действующую редакцию при ссылке в договоре или досье аудита.
Хотите проверить приложение по всем десяти?
Запишитесь на бесплатную консультацию: определим охват, и вы получите ручную проверку, выходящую за рамки списка — в вашу бизнес-логику.