Многофакторный анализ рисков информационной безопасности. Подходы и методы

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

Перечислим эти параметры:
1) активы — ключевые компоненты инфраструктуры системы, вовлеченные в бизнес-процесс и имеющие определенную ценность;
2) угрозы, реализация которых возможна посредством эксплуатации уязвимости;
3) уязвимости — слабость в средствах защиты, вызванная ошибками или несовершенством в процедурах, проекте, реализации, которая может быть использована для проникновения в систему;
4) ущерб который оценивается с учетом затрат на восстановление системы в исходное состояния после возможного инцидента ИБ.

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

Инвентаризация активов компании
(SYSTEM CHARACTERIZATION)


Прежде всего, необходимо определить, что является ценным активом компании с точки зрения информационной безопасности. Стандарт ISO 17799, подробно описывающий процедуры системы управления ИБ, выделяет следующие виды активов:
. информационные ресурсы (базы и файлы данных, контракты и соглашения, системная документация, научно-исследовательская информация, документация, обучающие материалы и пр.);
. программное обеспечение;
. материальные активы (компьютерное оборудование, средства телекоммуникаций и пр.);
. сервисы (сервисы телекоммуникаций, системы обеспечения жизнедеятельности и др.);
. сотрудники компании, их квалификация и опыт;
. нематериальные ресурсы (репутация и имидж компании).

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

Категорирование активов компании

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

Оценка критичности активов

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

ИДЕНТИФИКАЦИЯ И КАТЕГОРИРОВАНИЕ УГРОЗ
(THREAT IDENTIFICATION)


Согласно авторитетной классификации NIST, включенной в RISK MANAGEMENT GUIDE FOR THE INFORMATION TECHNOLOGY SYSTEMS, категорированию и оценке угроз предшествует непосредственная идентификация их источников. Так, согласно вышеупомянутой классификации, можно выделить основные источники угроз, среди которых:
. угрозы природного происхождения (землетрясения, наводнения и т.п.);
. угрозы, исходящие от человека (неавторизованный доступ, сетевые атаки, ошибки пользователей и т.п.);
. угрозы техногенного происхождения (аварии различного рода, отключение электроснабжения, химическое загрязнение и т.п.).

Вышеописанная классификация может быть далее категорирована более подробно.
Так, к самостоятельным категориям источников угроз, происходящих от человека, согласно упомянутой классификации NIST относятся:
— хакеры;
— криминальные структуры;
— террористы;
— компании, занимающиеся промышленным шпионажем;
— инсайдеры.
Каждая из перечисленных угроз, в свою очередь, должна быть детализирована и оценена по шкале значимости (например: низкий, средний, высокий).

ИДЕНТИФИКАЦИЯ И КАТЕГОРИРОВАНИЕ УЯЗВИМОСТЕЙ
(VULNERABILITY IDENTIFICATION)


Очевидно, что анализ угроз должен рассматриваться в тесной связи с уязвимостями исследуемой нами системы. Задачей данного этапа управления рисками является составление перечня возможных уязвимостей системы и категорирование этих уязвимостей с учетом их "силы". Так, согласно общемировой практике, градацию уязвимостей можно разбить по уровням: Критический, Высокий, Средний, Низкий. Рассмотрим эти уровни более подробно:

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

2. Высокая степень опасности. К этому уровню опасности относятся уязвимости, которые позволяют осуществить удаленную компрометацию системы. Как правило, для подобных уязвимостей не существует эксплойта в публичном доступе.

3. Средняя степень опасности. К этому уровню опасности относятся уязвимости, которые позволяют провести удаленный отказ в обслуживании, неавторизованный доступ к данным или выполнение произвольного кода при непосредственном взаимодействии с пользователем (например, через подключение к злонамеренному серверу уязвимым приложением).

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

Источником составления такого перечня/списка уязвимостей должны стать:
. общедоступные регулярно публикуемые списки уязвимостей (как пример: www.securitylab.ru);
. список уязвимостей публикуемых производителем ПО (как пример: www.apache.org);
. результаты тестов на проникновение (как пример: www.site-sec.com);
. анализ отчетов сканеров уязвимостей (проводится администратором безопасности внутри компании).

В общем случае уязвимости можно классифицировать следующим образом:
. Уязвимости ОС и ПО (ошибки кода), обнаруженные производителем или независимыми экспертами (на момент написания статьи общее количество обнаруженных уязвимостей достигло отметки около ~1900 — сюда вошли уязвимости, опубликованные в "багтреках" на xakep.ru, securitylab, milw0rm.com и securityfocus.com).
. Уязвимости системы, связанные с ошибками в администрировании (неадекватные окружению настройки web-сервера или PHP, не закрытые межсетевым экраном порты с уязвимыми сервисами и т.п.).
. Уязвимости, источниками которых могут стать инциденты, не предусмотренные политикой безопасности, а также события стихийного характера. В качестве яркого примера распространенной уязвимости ОС и ПО можно привести переполнение буфера (buffer overflow). К слову будь сказано, абсолютное большинство из ныне существующих эксплойтов реализуют класс уязвимостей на переполнение буфера.

Численные методы оценки рисков

Простейшая оценка информационных рисков заключается в расчете рисков, который выполняется с учетом сведений о критичности активов, а также вероятностей реализации уязвимостей.
Классическая формула оценки рисков:
R=D*P(V), где R — информационный риск;
D — критичность актива (ущерб);
P(V) — вероятность реализации уязвимости.
Одним из примеров практической реализации вышеописанного подхода к определению уровней риска является матрица рисков, предложенная NIST.

Таблица 1.1. Матрица рисков (согласно рекомендациям NIST "Risk Management Guide for Information Technology Systems")

 
Threat Likelihood-угроза (ее вероятность)Impact-ущерб
Low (низкий) — 10Medium (средний) -50High (высокий) -100
High (высокая) — 1Low (низкий) 10x1=10Medium (средний) 50x1=50High (высокий) 100x1=100
Medium (средняя) — 0.5Low (низкий) 10x0.5=5Medium (средний) 50x0.5=25Medium (средний) 100x0.5=50
Low (низкая) — 0.1Low (низкий) 10x0.1=1Low (низкий) 50x0.1=5Low (низкий) 100x0.1=10
Уровень риска: Высокий (от 50 до 100); Средний (от 10 до 50); Низкий (от 1 до 10).


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

Оценка рисков на основе нечеткой логики

Механизмы оценки рисков на основе нечеткой логики включает в себя последовательность этапов, в каждом из которых используются результаты предыдущего этапа. Последовательность этих этапов обычно следующая:
. Ввод правил программирования в виде продукционных правил ("ЕСЛИ,… ТО"), отражающих взаимосвязь уровня входных данных и уровня риска на выходе.
. Задание функции принадлежности входных переменных (как пример — с помощью специализированных программ вроде "Fuzyy logic" — в данном примере мы использовали MatLab).
. Получение первичного результата оценок входных переменных.
. Фазификация оценок входных переменных (нахождение конкретных значений функций принадлежности).
. Агрегирование (подразумевает проверку истинности условий путем преобразований функций принадлежности через нечеткую конъюнкцию и нечеткую дизъюнкцию).
. Активизация заключений (нахождение весовых коэффициентов по каждому из правил и функций истинности).
. Аккумуляция заключений (нахождение функции принадлежности для каждой из выходных переменных).
. Дефазификация (нахождение четких значений выходных переменных).

Так, в вышеприведенном примере (таблица 1.1.) фактически был рассмотрен двухпараметрический алгоритм оценки риска с трехуровневыми шкалами входных параметров. При этом:
. для входных величин и риска были заданы трехуровневые шкалы, на которых определены нечеткие термы (соответствует "большому", "среднему" и "низкому" значениям переменных — см. рис. 1);
. значимость всех логических правил вывода одинакова (все весовые коэффициенты продукционных правил равны единице).

Рис. 1. Трапециевидные функции принадлежности трехуровневой шкалы "уязвимости"

Очевидно, что двухпараметрический алгоритм, предусматривающий ввод двух входных переменных не может обеспечить получение объективного результата анализа риска, особенно с учетом множества факторов — входных переменных, которые, к слову, отражают реальную картину оценки риска ИБ.

Четырехпараметрический алгоритм

Предположим, что с помощью продукционных правил нечеткой логики необходимо воспроизвести механизм вывода с учетом четырех входных переменных. Такими переменными в данном случае являются:
. активы;
. уязвимость;
. угроза (а точнее, ее вероятность);
. ущерб.

Каждый из перечисленных входных переменных оценивается по своей шкале. Так, предположим, что на основе предварительного анализа были получены некоторые оценки входных переменных (рис. 2.):

Рис. 2. Ввод оценок переменных и механизм вывода

На простейшем примере рассмотрим вид продукционных правил для некоторого случая с трехуровневой шкалой:

Рис. 3. Продукционные правила четырехпараметрического алгоритма

Графический интерфейс Fuzzy Logic Toolbox в данном случае позволяет просматривать графики зависимости риска от вероятности угрозы и соответственно других входных переменных.

Рис.4. Зависимость риска от вероятности угрозы

Рис. 5. Зависимость риска от ущерба

Гладкий и монотонный график зависимости "кривой вывода" свидетельствует о достаточности и непротиворечивости используемых правил вывода. Наглядное графическое представление позволяет оценить адекватность свойств механизма вывода предъявляемым требованиям. В данном случае "кривая вывода" свидетельствует о том, что механизм вывода целесообразно использовать только в области низких значений вероятности, т.е. при вероятности меньше 0,5. Чем же можно объяснить такой "завал" в значениях при вероятности больше 0,5? Вероятно, тем, что применение трехуровневой шкалы, как правило, отражается на чувствительности алгоритма в области высоких значений вероятности.

Обзор некоторых Инструментальных средств анализа рисков с учетом множества факторов

При выполнении полного анализа рисков с учетом множества факторов приходится решать ряд сложных проблем:
. Как определить ценность ресурсов?
. Как составить полный список угроз ИБ и оценить их параметры?
. Как правильно выбрать контрмеры и оценить их эффективность?
Для решения этих проблем существуют специально разработанные инструментальные средства, построенные с использованием структурных методов системного анализа и проектирования (SSADM — Structured Systems Analysis and Design), которые обеспечивают:
— построение модели ИС с точки зрения ИБ;
— методы для оценки ценности ресурсов;
— инструментарий для составления списка угроз и оценки их вероятностей;
— выбор контрмер и анализ их эффективности;
— анализ вариантов построения защиты;
— документирование (генерацию отчетов).
В настоящее время на рынке присутствует несколько программных продуктов этого класса. Наиболее популярный из них — CRAMM. Кратко рассмотрим его ниже.

Метод CRAMM

В 1985 году Центральное агентство по компьютерам и телекоммуникациям (CCTA) Великобритании начало исследования существующих методов анализа ИБ для того, чтобы рекомендовать методы, пригодные для использования в правительственных учреждениях, занятых обработкой несекретной, но критичной информации. Ни один из рассмотренных методов не подошел. Поэтому был разработан новый метод, соответствующий требованиям CCTA. Он получил название CRAMM — Метод CCTA Анализа и Контроля Рисков. Затем появилось несколько версий метода, ориентированных на требования Министерства обороны, гражданских государственных учреждений, финансовых структур, частных организаций. Одна из версий — "коммерческий профиль" — является коммерческим продуктом. В настоящее время CRAMM является, судя по числу ссылок в интернет, самым распространенным методом анализа и контроля рисков. Анализ рисков включает в себя идентификацию и вычисление уровней (мер) рисков на основе оценок, присвоенных ресурсам, угрозам и уязвимостям ресурсов. Контроль рисков состоит в идентификации и выборе контрмер, позволяющих снизить риски до приемлемого уровня. Формальный метод, основанный на этой концепции, должен позволить убедиться, что защита охватывает всю систему, и существует уверенность в том, что:

. все возможные риски идентифицированы;
. уязвимости ресурсов идентифицированы, и их уровни оценены;
. угрозы идентифицированы, и их уровни оценены;
. контрмеры эффективны;
. расходы, связанные с ИБ, оправданы.

Олег Бойцев, руководитель "Cerber Security//Анализ Безопасности Вашего Сайта"


Компьютерная газета. Статья была опубликована в номере 44 за 2008 год в рубрике безопасность

©1997-2024 Компьютерная газета