Работа над ошибками

Логотип компании
Или статистика  уязвимости веб-приложений за 2009 год...

Компания Positive Technologies собрала статистические данные относительно уязвимостей web-приложений, которые, по мнению экспертов компании остаются одним из наиболее распространенных недостатков обеспечения защиты информации.

В частности, простота протокола HTTP позволяет разрабатывать эффективные методы автоматического анализа веб-приложений и выявления в них уязвимостей. Это значительно упрощает работу не только консалтинговые компаний, но и нарушителей, позволяя последним обнаружить большое число уязвимых веб-сайтов, чтобы затем провести атаку на наиболее интересные из них.

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

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

Анализ данных, собранных Positive Technologies, показывает, что все сайты, на которых содержались уязвимости, позволяющие выполнять команды на сервере, были скомпрометированы полностью автоматически. Около 35% веб-приложений содержали уязвимости высокой степени риска (Urgent и Critical), которые удалось обнаружить при автоматическом сканировании систем. Однако при детальной ручной и автоматизированной оценке доля веб-приложений, в которых были обнаружены такие уязвимости, достигла 79%. Вероятность же обнаружения уязвимостей со степенью риска выше средней (критерий соответствия требованиям PCI DSS) составила более 60% при любом методе работ. В то же время при проведении более глубокого анализа было выявлено, что 83% веб-приложений не удовлетворяет требованиям стандарта по защите информации в индустрии платежных карт.

Наибольший интерес в 2009 г. к работам по анализу защищенности своих веб-ресурсов проявил сектор «Телекоммуникации» (35%) и нефтегазовые компании (40%). Финансовый сектор и компании из прочих отраслей нуждались в подобных услугах в меньшей степени (13% и 12% соответственно).

Статистика уязвимостей и ошибок администраторов

Всего в представленную статистику вошли данные о 5560 веб-приложениях, 2023 из которых содержали уязвимости. Суммарно во всех приложениях было обнаружено 13434 ошибок различной степени риска и зафиксировано 1412 образцов вредоносного кода, содержащихся на страницах уязвимых веб-приложений.

Наиболее распространенными являются ошибки, допускаемые администраторами при обслуживании серверов (Server Misconfiguration и Fingerprinting). Такие уязвимости составляют приблизительно 20% от числа всех обнаруженных и встречаются на 62-67% исследованных сайтов. Таким образом, 2/3 сайтов содержит недостатки администрирования сервером. Основной ошибкой администраторов является использование стандартной конфигурации сервера; это во многом упрощает для злоумышленников задачу проведения и развития атаки. Тот факт, что проблемы администрирования серверов являются самыми распространенными среди уязвимостей на сайтах, объясняется также тем, что в настоящее время широко используются системы управления сайтами; исходный код таких систем часто оказывается более защищенным, чем код приложений, разрабатываемых для конкретных сайтов. После развертывания готового «коробочного» веб-приложения администраторам следует применять на серверах защищенные конфигурации (в том числе рассмотреть возможность использования Web Application Firewall); в настоящее время большинство администраторов пренебрегает этими мерами защиты.

Другая распространенная уязвимость связана с недостаточным противодействием механизмам автоматизации (Insufficient Anti-automation). Почти в половине исследованных веб-приложений отсутствуют защитные механизмы: не используются CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart), средства противодействия автоматизированному сбору email-адресов и пр.

Шестое место по распространенности заняла уязвимость «Межсайтовое выполнение сценариев» (Cross-Site Scripting, XSS), на долю которой приходится около 34% всех обнаруженных недостатков. Данная уязвимость была выявлена в 23% исследованных приложений. В отличие от недостатков, рассмотренных выше, уязвимость «Межсайтовое выполнение сценариев» связана в первую очередь с ошибками, допущенными при разработке приложений.

Седьмой по степени распространенности является уязвимость «Внедрение операторов SQL» (SQL Injection), на долю которой приходится приблизительно 8% всех обнаруженных ошибок. Данная уязвимость была обнаружена в 11% проанализированных приложений. Довольно часто успешная эксплуатация уязвимости «Внедрение операторов SQL» позволяет злоумышленнику нарушить все свойства обрабатываемой информации в атакуемой информационной системе.

Анализ уязвимостей на инфицированных сайтах

Интересную позицию в статистике занимает обнаружение образцов вредоносного кода. Присутствие вредоносного кода свидетельствует о том, что веб-приложение содержит инфицированный код (Trojan-Spy backdoor, Code.JS, Code.I и т.д.), вследствие чего на компьютеры посетителей такого сайта может быть установлено злонамеренное программное обеспечение. Статистика уязвимостей с высоким уровнем опасности, обнаруженных на сайтах, содержащих инфицированный код, показывает, что наиболее вероятные пути распространения вредоносного кода в этих приложениях – это использование следующих уязвимостей:

* Внедрение операторов SQL (SQL Injection)

* Внедрение серверных расширений (SSI Injection)

* Выполнение команд ОС (OS Commanding)

* Выход за корневой каталог Web-сервера (Path Traversal)

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

Если посмотреть на статистику распределения критических уязвимостей по инфицированным узлам, то можно увидеть, что уязвимость типа «Внедрение операторов SQL» заметно преобладает на зараженных сайтах.

То есть, практически все сайты, содержащие уязвимости, которые позволяют непосредственно выполнять команды на сервере, были автоматизированно заражены вредоносным кодом.

Читайте также
Одной из самых критичных инженерных систем центра обработки данных (ЦОД) можно назвать систему электроснабжения. На нее вместе с системой бесперебойного питания может приходиться до 25% от общей стоимости. Поэтому, прежде чем приобрести то или иное решение, бизнес тщательно взвешивает не только его преимущества, но и недостатки, а также связанные с ним риски.

За 2009-й год число сайтов, содержащих критические уязвимости, снизилось на 37%, что соответствует устранению всех уязвимостей критического уровня опасности в 66% случаях. Положительная тенденция также замечена для сайтов, содержащих уязвимости с низким уровнем опасности. Так, общий процент устранения всех подобных уязвимостей составил приблизительно 31%. В отношении сайтов, содержащих уязвимости среднего уровня критичности, напротив, отмечена отрицательная тенденция, т.е. в течение года число подобных сайтов возросло. Общий же процент устранения всех обнаруженных уязвимостей с 2008 года по 2009 год составило около 20%.

Также как и при автоматическом сканировании веб-приложений, при проведении детального анализа, довольно распространенным недостатком по-прежнему являются ошибки, допускаемые администраторами при обслуживании серверов (Server Misconfiguration).

С другой стороны, в отличие от автоматического сканирования веб-приложений, при проведении детального анализа, наиболее часто встречаемый недостаток – уязвимость «Внедрение операторов SQL» (SQL Injection). Данная уязвимость встретилась в 18% случаев, приблизительно на 49% всех исследуемых приложений. То есть, каждое второе веб-приложение содержало уязвимость «Внедрение операторов SQL».

Уязвимость, которая возглавляет список по числу обнаруженных уязвимостей – «Межсайтовое выполнение сценариев» (Cross-Site Scripting, XSS). На долю указанной уязвимости приходится большая часть всех обнаруженных ошибок (19%). Данная уязвимость встретилась в 27% всех проанализированных приложений.

На втором месте в списке распределения уязвимостей по сайтам содержится уязвимость, связанная с различными вариантами утечек чувствительной информации (Information Leakage). Степень возможного риска данной уязвимости может варьироваться от низкой до критической. Хранение в общедоступных, но «скрытых» папках конфиденциальных данных, резервных копий сценариев являются наиболее типичными примерами подобных недостатков.

При проведении ASV-сканирования в отношении веб-приложений, эксперты Positive Technologies выяснили, что около 81% приложений не удовлетворяют требованиям стандарта PCI DSS. В то же время при проведении более глубокого анализа, оказалось, что 84% веб-приложений не удовлетворяет требованиям стандарта по защите информации в индустрии платежных карт.

На основании полученных данных Positive Technologies делает следующие выводы:

* наиболее распространенными ошибками, допускаемыми разработчиками приложений, являются уязвимости «Межсайтовое выполнение сценариев» и «Внедрение операторов SQL»;

* если сайт содержит уязвимости, которые позволяют непосредственно выполнять команды на сервере, то вероятность автоматизированного заражения вредоносным кодом такого ресурса достигает 100%;

* уязвимостей, связанных с недостатками администрирования, встречается на 10% больше, чем уязвимостей, связанных с ошибками при разработке систем;

* 84% веб-приложений не удовлетворяет требованиям стандарта по защите информации в индустрии платежных карт и 81% не соответствуют критериям ASV-сканирования по PCI DSS;

* регулярный анализ защищенности веб-приложений и налаженный процесс устранения выявленных недостатков позволяют за год уменьшить число уязвимых сайтов в среднем втрое;

* вероятность обнаружения критичной ошибки в динамическом веб-приложении составляет порядка 35% при проведении автоматического сканирования методом «черного ящика» и 79% при детальном экспертном анализе;

* ситуация со степенью защищенности веб-приложений в 2009 году по результатам исследований улучшилась в сравнении предыдущими четырьмя годами.

Опубликовано 21.05.2010