|
|
|||||||||||||||||||||||||||||
|
Оценка рисков использования Web-приложенийИсточник: securitylab Сергей Гордейчик
Наличие статистики дает возможность прогнозировать риски связанные с использованием информационных систем и обосновывать выбор контрмер. К сожалению, получить достоверную количественную оценку объема ошибок, а уж тем более - вероятности их эксплуатации достаточно трудно. В данной статье приведен обзор некоторых источников, позволяющих получить статистические данные об уязвимостях и атаках на Web-приложения. Базы данных уязвимостейОтветить на вопрос о вероятности обнаружения той или иной проблемы можно с помощью информации из справочников (баз данных) уязвимостей. На сегодняшний день признанным отраслевым стандартом в этой области является список Common Vulnerabilities and Exposures (CVE). Однако непосредственно сам список слабо упорядочен и требует серьезной аналитической работы для получения полезных статистически результатов. Ежегодно аналитиками Mitre проводится анализ информации в базе данных и публикуется отчет о распределении уязвимостей по различным критериям. Согласно отчету более четверти проблем, обнаруженных в 2006 году, приходится на недостатки безопасности Web-приложений. Аналогичную информацию публикуют и другие базы данных уязвимостей. По информации портала SecurityLab.ru, около 40% всех обнаруженных в 2007 уязвимостей приходится на Web-приложения (см. рис. 1). Рис. 1 Распределение уязвимостей по типу приложений в 2007 году Несмотря на то, что информация из баз данных уязвимостей достаточно интересна с теоретической точки зрения, она мало подходит для практического использования в рассматриваемом контексте. Это связанно с тем, что в базы данных попадает информация о широко распространенных приложениях, чье внедрение носит массовых характер. Что касается Web-приложений, то зачастую они создаются под конкретную задачу и могут быть развернуты только в одной сети или в единственном экземпляре. В последнее время наметилась тенденция публикации в базах данных информации не только об популярных Web-приложениях, но и в часто используемых on-line сервисах. Например - в общедоступных системах электронной почты, поисковых системах, социальных сетях и т.д. Однако пока это больше исключение, чем правило. Таким образом, ответить на вопрос "Насколько вероятно обнаружение уязвимости в Web-приложении" с помощью баз данных уязвимостей невозможно. Анализ защищенности системСуществуют и другие подходы, например, использование в качестве исходной информации результатов работ по анализу и оценке защищенности Web-приложений. Как правило, это метод используется консалтинговыми компаниями, имеющими большой опыт в области безопасности приложений. В качестве примера подобных отчетов можно привести ежегодный отчет "Статистика уязвимости Web-приложений" компании Positive Technologies (PT) и ежеквартальное обозрение "Website Security Statistics Report" компании WhiteHat Security (WH). Оба отчета имеют сходную структуру и содержат статистику уязвимостей Web-приложений, полученную в ходе работ по тестированию на проникновение, аудита безопасности и др. Для получения данных использовались различные подходы, от сканирования Web-приложений с помощью сканеров с последующей проверкой результатов до тестирования методом "белого ящика", включающего также частичный анализ исходного кода. Оба отчета используют классификацию уязвимостей Web Application Security Consortium Web Security Threat Classification. В этом документе собраны воедино и организованы различные угрозы безопасности Web-приложений. Проект является попытки разработки и популяризации стандартной терминологии описания проблем безопасности в Web-приложениях. Распространенные уязвимости Web-приложений организованны в структурированный список, состоящий из шести классов, каждый из которых содержит несколько типов уязвимостей и атак. В настоящее время готовится к публикации вторая редакция классификации, содержащая девять классов угроз. Оба отчета используют элементы Web Security Threat Classification version 2 для описания таких проблем как "Расщепление HTTP-ответа" (HTTP Response Splitting) и "Подделка HTTP-запроса" (Cross-Site Request Forgery). Интересно, что данные отчеты близки не только по структуре, но и по результатам. Так, наиболее распространенной уязвимостью оба источника признают "Межсайтовое выполнение сценариев" (Cross-Site Scripting, XSS). Эта уязвимость была обнаружена в 74% всех сайтов по версии Positive Technologies (см. рис. 2) и в 65 случаях из 100 (см. рис. 3) у клиентов WhiteHat Security. Наиболее распространенной уязвимостью высокой степенью риска обе компании признают "Внедрение операторов SQL" (SQL Injection) вероятность обнаружения которой составляет 31% - PT и 16% - WH. Меньшая вероятность обнаружения проблем различных типов в трактовке WhiteHat Security вполне объяснима большей зрелостью западного рынка и использованием результатов повторных проверок приложений одного и того же клиента. К сожалению, большинство российских владельцев Web-приложений находится на этапе становления процесса управления информационной безопасностью. В некоторых пунктах, например по количеству уязвимостей типа "Утечка информации" (Information Leakage) отчеты достаточно серьезно расходятся (90% - PT и 40% - WH). Это связанно с тем, что WhiteHat Security включает в отчет только уязвимости, имеющие "критичный", "неотложный" и "высокий" уровень риска, в то время как Positive Technologies задействует все найденные недочеты. Рис. 2 Вероятность обнаружения уязвимостей различного типа (Positive Technologies) Рис. 3 Вероятность обнаружения уязвимостей различного типа (WhiteHat Security) Оценка степени рискаВопрос классификации степени риска, связанного с уязвимостями приложений является важной темой. В настоящий момент существует множество методик оценки опасности уязвимости, но наиболее распространены следующие подходы:
Не касаясь достоинств или недостатков каждого из методов можно выделить следующие особенности, которые могут влиять на достоверность оценки:
В различных приложениях уязвимости одного типа могут иметь различную степень риска. Так, уязвимость "Подделка HTTP-запроса" может не представлять угрозы для типичного репрезентативного сайта или поисковой машины, и наоборот - классифицироваться как проблема высокой степени риска в Web-интерфейсе электронной почты или платежной системы. В результате утечки информации злоумышленник может получить доступ к журналам работы приложения (низкая или средняя степень риска), а может загрузить резервную копию исходных текстов сайта (высокая степень риска). Конфигурация конкретной системы также может оказывать серьезное влияние на степень риска. Так, уязвимость "Внедрение операторов SQL" обычно классифицируют как имеющую высокую опасность. Однако в случае если Web-приложение работает с сервером СУБД с ограниченными привилегиями, она может быть отнесена к проблемам средней или низкой степени риска. В другой инсталляции или реализации приложения эта же уязвимость может быть использована для получения доступа к операционной системе с правами суперпользователя, что естественно делает её наиболее критичной. В зависимости от метода у глубины анализа степень одна и та же уязвимость может быть оценена по-разному. Если взять приведенный выше пример "Внедрения операторов SQL", использование сетевого сканера позволит только констатировать наличие проблемы. Для определения привилегий, доступных потенциальному злоумышленнику требуется либо попытаться использовать ошибку, либо уточнить порядок взаимодействия между Web-приложением и СУБД методом "белого ящика". Каждый из приведенных методов оценки использует свои подходы для учета обозначенных обстоятельств. Это может быть абстрактное "экспертное мнение" в "светофорной" оценке или весовые коэффициенты в CVSS, но в любом случае - метод и глубина анализа оказывают серьезное влияние на оценку рисков. Это обстоятельство необходимо принимать внимание при работе с отчетами и статистическими данными. Международная статистикаПроблема объединения данных из нескольких источников, использующих различные методы анализа и подходы к оценке степени риска, сказалась на актуальности проекта Web Application Security Statistics Project международной группы Web Application Security Consortium [9]. Изначально данные для этого проекта предоставлялись компаниями Cenzic, Positive Technologies, SPI Dynamics и WhiteHat Security использующими схожие подходы к анализу защищенности систем. Однако при попытке привлечения большего количества участников для формирования отчета за 2007 год, инициативная группа проекта столкнулась с невозможностью объединения некоторых результатов. Это привело к тому, что данные за 2007 год пока не были опубликованы, и вероятно не будут доступны раньше второго полугодия 2008 года. В любом случае Web Application Security Statistics Project является одним из наиболее масштабных проектов в отрасли, и включает в себя результаты анализа 31373 приложений, что составляет около 0,03% всех сайтов в сети Интернет в 2006 году. Остается надеяться, что работы над проектом будет продолжены. Вероятность атакиОднако вероятность обнаружения уязвимости не является вероятностью реализации угрозы (атаки), которая требуется в классической модели оценки рисков. Получить реальные данные об инцидентах достаточно сложно. В основном используются два подхода: регистрация информации об инцидентах и протоколирование попыток с помощью технологии honeypot или антивирусного сканирования. ЗаключениеСуществующие на настоящий момент открытые источники дают достаточную базу для проведения оценки риска, связанного с уязвимостями в Web-приложениях. Разные источники используют различные данные и методы их интерпретации. В связи с этим важно выбирать наиболее подходящий для решения конкретных задач инструмент. Благо, на настоящий момент в них нет недостатка. Ссылки по теме
|
|