owasp top 10

OWASP Top 10 — список десяти наиболее критичных угроз безопасности веб-приложений, публикуемый организацией Open Web Application Security Project. Документ обновляется раз в несколько лет на основе данных о реальных атаках, уязвимостях и результатах аудитов тысяч приложений по всему миру. OWASP Top 10 является де-факто стандартом при оценке безопасности веб-приложений и служит основой для регуляторных требований, включая PCI DSS.

История и методология

OWASP (Open Web Application Security Project) — некоммерческая организация, основанная в 2001 году. Первая версия Top 10 вышла в 2003 году. Актуальная редакция — OWASP Top 10 2021. Для составления списка OWASP анализирует данные от более чем 40 организаций и базы данных с сотнями тысяч реальных уязвимостей. Категории ранжируются по распространённости, обнаруживаемости и потенциальному ущербу.

A01 — Нарушение контроля доступа

Пользователи могут получить доступ к ресурсам или выполнить действия, выходящие за рамки их прав. Включает прямой доступ к объектам по предсказуемым идентификаторам (IDOR), обход ограничений URL, неправильно настроенные CORS-политики. Поднялась с пятого места на первое в 2021 году.

A02 — Сбои криптографии

Уязвимости связанные с использованием слабых алгоритмов шифрования, хранением данных в открытом виде, отсутствием TLS, использованием устаревших протоколов. Включает утечку чувствительных данных через незащищённые каналы.

A03 — Инъекции

SQL-, LDAP-, OS Command-, XML-инъекции — передача ненадёжных данных как части команды или запроса. SQL-инъекция — наиболее известный подвид. Защита: параметризованные запросы и экранирование.

A04 — Небезопасный дизайн

Новая категория 2021 года. Фокус на архитектурных просчётах и отсутствии моделирования угроз на этапе проектирования. Небезопасный дизайн нельзя исправить правильной реализацией — проблему нужно решать на уровне архитектуры.

A05 — Неправильная конфигурация безопасности

Настройки по умолчанию, открытые облачные хранилища, ненужные функции, незащищённые HTTP-заголовки, детальные сообщения об ошибках. Распространённый источник утечек данных из AWS S3 бакетов.

A06 — Устаревшие и уязвимые компоненты

Использование библиотек, фреймворков и компонентов с известными уязвимостями. Атака на Equifax в 2017 году произошла через необновлённую версию Apache Struts. Регулярный аудит зависимостей (OWASP Dependency-Check, Snyk) — обязательная практика.

A07 — Сбои идентификации и аутентификации

Слабые механизмы аутентификации позволяющие злоумышленникам компрометировать пароли, ключи или сессионные токены. Отсутствие защиты от брутфорса, использование слабых паролей, небезопасное хранение сессий.

A08 — Сбои целостности ПО и данных

Недостаточная верификация целостности обновлений ПО, критических данных и CI/CD-пайплайнов. Включает атаки на цепочку поставок (supply chain attacks), как SolarWinds.

A09 — Недостатки ведения журналов и мониторинга

Отсутствие или недостаточность логирования критических событий затрудняет обнаружение атак. По статистике взлом обнаруживается в среднем через 287 дней после его начала. Надёжный мониторинг — ключ к быстрому реагированию.

A10 — Подделка серверных запросов (SSRF)

Приложение принимает URL от пользователя и делает запрос к нему без проверки назначения. Позволяет обращаться к внутренней инфраструктуре, метаданным облачных инстансов и другим ресурсам недоступным снаружи. Вошла в Top 10 впервые в 2021 году.

Частые вопросы

  • Как часто обновляется OWASP Top 10?

    OWASP Top 10 обновляется примерно раз в 3-4 года. Последняя актуальная версия — 2021 года. Промежуточные обновления выходят по мере необходимости. Следить за обновлениями стоит через официальный сайт owasp.org.

  • Обязателен ли OWASP Top 10 для соответствия PCI DSS?

    PCI DSS требует защиты от угроз перечисленных в OWASP Top 10 как минимального базиса. Следование OWASP Top 10 не гарантирует полного соответствия PCI DSS, но является необходимым условием для приложений обрабатывающих платёжные данные.

  • Что важнее — OWASP Top 10 или пентест?

    Это взаимодополняющие подходы. OWASP Top 10 — руководство для разработчиков на этапе написания кода. Пентест выявляет реальные уязвимости в развёрнутой системе. Идеальная практика — следовать OWASP при разработке и регулярно проводить пентесты.

Не хватает деталей?

Напишите, что уточнить по теме «owasp top 10» — это помогает улучшать материал и подсказывает, какие термины добавить дальше. Email необязателен: укажите, если хотите ответ только для вас (мы не шлём рассылки).

Поделиться