Основываясь на статистике: неофициальное предложение Топ-10 OWASP 2021

image

Многим из нас встречался список угроз Топ-10 OWASP. А некоторые даже знают, что он обновляется каждые 3–4 года. И срок следующего обновления уже подошел. Но процесс создания списка угроз OWASP плохо документирован, поэтому нам захотелось предложить прозрачный, основанный на статистике рейтинг для тех же категорий угроз.
Мы проанализировали 2 миллиона различных отчетов о безопасности из 144 открытых источников. Под катом вы найдете наш вклад в анализ Топ-10 угроз OWASP на 2021 год. При этом каждый из читающих сможет воспроизвести результаты на основе понятных метрик.


Дублирование категорий угроз в Топ-10 OWASP 2017

Первое, что нужно сказать о Топ-10 OWASP, это то, что этот список не является классификацией уязвимостей ни в коей мере, поскольку категории угроз в списке дублируются. Здесь можно сослаться на статью в Security Boulevard и на наш пост в блоге, в котором описаны такие пересечения, представленные на следующей диаграмме:

image
Дублирование категорий угроз в Top-10 OWASP 2017

Топ-10 OWASP НЕ ЯВЛЯЕТСЯ классификацией уязвимостей, а скорее списком угроз, выявленных за последний период времени. Вот почему для прогнозирования состава следующего списка Топ-10 OWASP 2021 нам следует проанализировать угрозы для целевых веб-ресурсов за последние четыре года. Итак, начнем.


Методология

Для получения статистических данных мы воспользовались ресурсом Vulners.com — базой агрегированных данных, которая содержит более 4 миллионов бюллетеней от 144 компаний, включая программы по выявлению ошибок, такие как HackerOne.

Общее количество бюллетеней, использованных для создания этого списка, включая бюллетени CVE, отчеты о найденных ошибках и бюллетени по безопасности от компаний,** составляет 2 168 521 (поисковый запрос: «опубликовано: [c 2018–01–01 по 2020–12–31]»).

Чтобы разделить данные по категориям, были составлены поисковые запросы уязвимостей для всех десяти категорий OWASP. Стоит признать, что полнотекстовый поиск, вероятно, не самое точное решение для классификации данных, однако, для решения этой конкретной задачи данный метод все же подойдет. Бюллетени по безопасности почти для всех категорий OWASP можно было найти, выполнив поиск по акронимам и аббревиатурам.

Для категории «Использование компонентов с известными уязвимостями» общее количество отчетов о безопасности, посвященных веб-угрозам, было принято как общее количество номеров CVE, присвоенных за последние 3 года.

Это удивительно, но согласно статистике Vulners, XSS составляет 20% от ВСЕХ бюллетеней безопасности за последние три года. Это почти в 10 раз больше, чем число всех CVE, опубликованных за последние три года! Поскольку многие XSS-уязвимости не имеют оценки CVSS (т.е. их рейтинг равен нулю), средняя оценка для многих из таких уязвимостей по-прежнему составляет 0,1. Этот факт, однако, не мешает XSS-уязвимостям попасть в топ-3 рейтинга. Еще раз, это происходит потому, что такие уязвимости были упомянуты в каждом пятом бюллетене из опубликованных за последние 3 года.

Следующие запросы можно использовать для проверки, изменения или проведения собственного анализа:


Как видите, мы твердо убеждены, что сообщество OWASP добавит новую категорию SSRF и объединит категории «A4. Внешние сущности XML (XXE)» и «A8. Небезопасная десериализация» в предстоящем выпуске Топ-10 OWASP 2021. И вот почему.


Предложение 1: Выделить SSRF в отдельную категорию

Перечислим три самых важных факта, связанных с SSRF:


  1. SSRF-атаки занимают третье место среди наиболее критических уязвимостей по данным статистики за первое полугодие 2020 г.
  2. Специалисты Amazon серьезно отнеслись к этой угрозе и в конце 2019 года внесли соответствующие изменения в сервисы метаданных EC2.
  3. SSRF-атаки привели к реализации множества серьезных рисков информационной безопасности, включая самый известный взлом Capital One с обходом WAF, подробно описанный Брайаном Кребсом в его блоге.

Согласно глобальной статистике, собранной Vulners, метод SSRF упоминался в 912 бюллетенях за последние три года, то есть почти столько же раз, как и категория A4 — XXE (1000 результатов) и в 2,5 раза чаще, чем категория A6 — Некорректная настройка параметров безопасности (481 результат) из списка угроз Топ-10 OWASP 2017.

Подводя итог, можно сказать, что SSRF — это критическая проблема, которая может привести к захвату облачных ресурсов, удаленному выполнению кода, утечке данных и реализации иных рисков ИБ. Использование фильтрации ввода и других механизмов проверки данных не может устранить SSRF-угрозу. Amazon и другие облачные провайдеры серьезно относятся к данной проблеме и вносят соответствующие изменения в свою инфраструктуру для снижения рисков. За последние три года SSRF-атаки упоминаются почти в таком же количестве бюллетеней по безопасности, что и XXE. Поэтому мы надеемся, что никто не обвинит нас в предложении добавить данную угрозу в список Топ-10 OWASP 2021 года.


Предложение 2: Объединить категории «Внешние сущности XML (XXE)» и «Небезопасная десериализация»

Уязвимость XXE, также известная как инъекция внешних сущностей XML, технически представляет собой реализацию функции сериализации, которая позволяет включать в XML-документ содержимое локальных и удаленных файлов. Кстати, иногда это приводит к реализации SSRF. Поэтому можно смело утверждать, что XXE относится к категории «Небезопасная десериализация».

Кроме того, невозможно считать XXE-атаки отдельной категорией, учитывая наличие такой собирательной категории, как «A1. Внедрение», куда относится почти все — от внедрения SQL-кода до атаки Path Traversal и выполнения команд ОС, — которая определенно будет возглавлять список OWASP еще долгие годы.

Учитывая эти два факта, а также на основании статистических данных о количестве отчетов о безопасности в каждой из категорий, мы решили объединить XXE и небезопасную десериализацию в один класс.


Предложение 3: Ввести оценку риска для правильного ранжирования угроз

Для ранжирования предполагаемого списка угроз Топ-10 OWASP для каждой из категорий мы использовали среднее значение по системе оценки CVSS. Фактически, поскольку многие бюллетени имеют 0 баллов по CVSS, полученный рейтинг следует интерпретировать как среднее значение по CVSS для категории, что на самом деле просто демонстрирует правильное соотношение между ними.

Общий риск = Сред. оценка по CVSS x Количество бюллетеней


Построение списка Топ-10 OWASP 2021

Как упоминалось выше, мы использовали агрегированные данные из 144 источников, включая бюллетени безопасности, проиндексированные Vulners.com. Такой подход позволяет учитывать не только данные CVE, но и все прочие отчеты, включая отчеты о найденных ошибках, эксплойтах и уязвимостях, обнаруженных сканером, количество которых находится в прямой зависимости от реального состояния информационной безопасности. Если мы будем считать только записи CVE, результаты будут кардинально отличаться, поскольку категория «Использование компонентов с известными уязвимостями» будет технически равна по объему сумме всех остальных категорий вместе взятых.

Предлагаем наиболее справедливый, на наш взгляд, способ построения списка угроз Топ-10 OWASP 2021. Можете убедиться сами!



Наш прогноз Топ-10 OWASP 2021 в сравнении с Топ-10 OWASP 2017

Подводя итог, мы с уверенностью представляем итоги собственного прогноза списка угроз Топ-10 OWASP на 2021 год, поскольку результаты основаны на общедоступных статистических данных.


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

Спасибо за интерес!

© Habrahabr.ru