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

Введение.

Немного статистики.

Из материалов статьи « Банковские инсайдеры, или " Посторонним вход воспрещен"!», опубликованной на сайте www.bankir.ru (01.09.2008г.):

·         В 70% инцидентов инсайдеры собирались воспользоваться или воспользовались систематическими недочетами в компьютерных процессах, процедурах и приложениях. В 61% случаев инсайдеры пользовались уязвимостями, которые присутствовали в сетях, программах или оборудовании изначально.

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

Теперь попытаемся ответить на вопрос: насколько глобальная данная проблема информационной безопасности?

Вновь обратимся к статистике:

·         В первом квартале 2008 года SecurityLab опубликовал 877 уязвимостей, 248 эксплоитов, 180 описаний различных вирусов и 618 уведомления безопасности от различных производителей. Общая  статистика по уязвимостям за первый квартал 2008 года приведена на рис.1;

 image001.jpg

Рис.1

·         Всего исправлено 505 уязвимостей (57.58%), исправления отсутствуют для 350 уязвимостей (39.91%), для 14 уязвимостей производители опубликовали инструкции по устранению и 8 уязвимостей устранены частично. Общая  статистика по исправлениям за первый квартал 2008 года приведена на рис.2;

image002.jpg
Рис.2

·         Во втором квартале 2008 года SecurityLab опубликовал 891 уязвимость, 226 эксплоитов, 142 описания различных вирусов и 591 уведомление безопасности от различных производителей. Общая  статистика по уязвимостям за второй квартал 2008 года приведена на рис.3;

image004.jpg
Рис.3

·         Всего было устранено 505 уязвимостей, 12 уязвимостей было устранено частично, к 10 уязвимостям производители опубликовали инструкции по устранению и 364 уязвимости не устранены в настоящее время. Общая  статистика по исправлениям за второй квартал 2008 года приведена на рис.4.

 image006.jpg

Рис. 4 

Проанализируем данную статистику.

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

Второе: мы видим, что уязвимости в течение квартала обнаруживаются сотнями, а исправляется за это время немногим более половины из них.

А вот теперь основной вопрос: а насколько все это катастрофично с точки зрения информационной безопасности?

Для ответа на этот вопрос попробуем дать количественную оценку происходящее. В качестве же объекта исследований рассмотрим современные ОС, помятуя о том, что в приложениях уязвимостей обнаруживается на порядок больше!

Математическая модель оценки уровня безопасности современных ОС и приложений.

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

Под «отказом защиты» будем понимать обнаружение уязвимости системного средства. Наличие уязвимости делает данное средство незащищенным до момента устранения ее производителем системного средства.

 Под «восстановлением защиты» будем понимать устранение производителем обнаруженной уязвимости системного средства. Устранение обнаруженной уязвимости восстанавливает безопасность системного средства (в предположении, что данная уязвимость одна).

Под «интенсивностью отказов защиты» будем понимать интенсивность обнаружения в системном средстве уязвимостей в единицу времени.

Под «интенсивностью восстановления защиты» после отказа будем понимать интенсивность устранения в системном средстве уязвимостей в единицу времени (величина, обратная времени устранения уязвимостей).

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

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

 image008.gif

Примем также, что время устранения уязвимости – восстановление защиты, имеет экспоненциальное распределение с интенсивностью:

 image010.gif

Теперь собственно о модели ( СМО). Будем рассматривать следующую гипотетическую ситуацию - любая обнаруженная уязвимость сразу же направляется на обслуживание (устранение). Никакой очереди неустраненных уязвимостей не образуется, т.е. будем рассматривать систему (СМО) с бесконечным числом обслуживающих приборов.

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

В данных предположениях  расчетная формула вероятности того, что в системе находится ровно n заявок на обслуживание (или одновременно присутствует n неустраненных уязвимостей) выглядит следующим образом (см. стр.159 в кн. Т.Саати. Элементы теории массового обслуживания и ее приложения. – М.: Изд. «СОВЕТСКОЕ РАДИО», 1965. – 511 с.):

 image012.gif

С учетом же того, что:

 image014.gif

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

 image016.gif

Итак, модель мы построили, теперь с ее помощью проведем исследование.

Количественная оценка безопасности современных универсальных ОС.

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

Первое исследование, которое мы здесь приведем: «"Критические дни": Linux, Mac OS X, Solaris and Windows» опубликовано на сайте www.securitylab.ru 19 июня 2007 года.

В данном исследовании Джефф Джонс провел очередное исследование на тему того, как долго компании закрывают найденные дыры в своем ПО. Рассматривались следующие коммерческие операционные системы:

· Apple:  Mac OS X, все версии, исправленные в 2006 году.

·  Microsoft:  Windows 2000 (Professional и Server), Windows XP, Windows Server 2003. 

· Red Hat:  Red Hat Enterprise Linux 2.1, Red Hat Enterprise Linux 3, and Red Hat Enterprise Linux 4.

·  Novell:  SUSE Linux Enterprise Server 8, SUSE Linux Enterprise Server 9, SUSE Linux Enterprise Server 10, Novell Linux Desktop 9, и SUSE Linux Enterprise Desktop 10.

· Sun:  Все версии Solaris, исправленные в 2006.

В случае если одна уязвимость устранялась для разных версий ОС в разное время, то за время устранения считалось среднее значение двух дат.

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

 image018.gif

Рис.5

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

 image020.gif

Рис.6

Заметим, что данные, полученные Джефом, несколько расходятся с исследованием компании Symantec, в котором утверждалось что Microsoft устраняет уязвимости в среднем за 21 день, Red Hat за 58, Appple Maс OS за 66, а Solaris за 122 дня. Однако в нашем исследовании, куда важнее собственно порядок цифр.

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

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

image022.gif

Рис.7

Теперь оценим, как влияет на безопасность современных ОС интенсивность обнаружения уязвимостей. Для этого обратимся к другому исследованию под громким названием «Symantec: Windows - самая надежная система», опубликованному на сайте www.securitylab.ru  27 марта 2007 года.

В данном исследовании утверждается следующее.

Microsoft Windows, не смотря на все проблемы с безопасностью, является самой надёжной операционной системой из всех существующих, утверждает Symantec.

Во втором полугодии 2006 г. в системах Windows было найдено и устранено наименьшее число уязвимостей; компания в среднем быстрее всех выпускает обновления безопасности, — говорится в последнем «Докладе об угрозах безопасности интернета», выходящем дважды в год.

Утверждение подтверждается сравнительными показателями среди пяти операционных систем: Windows, Mac OS X, HP-UX, Sun Solaris и Red Hat Linux.

За полгода Microsoft выпустила обновления более чем к 39 уязвимостям; каждая дыра существовала в открытом состоянии в среднем 21 день. На втором месте — Red Hat Linux: 208 уязвимостей и средний срок устранения 58 дней. Несмотря на большее количество, эти уязвимости были в среднем менее опасны, отмечает Symantec. Mac OS X отметилась 43 уязвимостями и средним временем устранения в 66 дней. На уязвимости высокой степени опасности у компании уходило в среднем 37 дней.

Замыкают пятёрку HP-UX и Solaris: 98 дыр и 101 день, и 63 дыры и 122 дня соответственно.

Проведем свое исследование, и попытаемся определиться с тем, что же сегодня называется самой безопасной ОС, какой уровень безопасности она обеспечивает. Для этого воспользуемся нашей математической моделью и построим зависимость изменения вероятности того, что система находится в безопасном состоянии, от изменения интенсивности обнаружения уязвимостей. За интенсивность же исправления уязвимостей примем максимально возможное ее значение на сравниваемом множестве вариантов ОС (идеальный случай) – интенсивность исправления уязвимостей компанией Microsoft.. Результаты исследований представлены на рис.8.

image024.gif

Рис.8

Рассмотрим внимательно данные результаты, при этом будем помнить, что мы говорим о гипотетически идеальных характеристиках – это верхняя теоретическая граница, реальное положение дел куда хуже. Прежде всего, обратимся к красной пунктирной линии на рис.8. Этой линией характеризуется следующий случай – вероятность того, что в любой момент времени система находится в безопасном состоянии составляет 0,5, т.е. она либо защищена, либо нет. А ведь такова эксплуатационная безопасность ОС достигается (см. рис.8) при обнаружении лишь 8 уязвимостей в год, при средней продолжительности их устранения в пределах месяца. Если же за год в среднем обнаруживается 20 уязвимостей, то вероятность того, что система находится в безопасном состоянии, составляет уже около 0,2. Другими словами, в этом случае можно говорить об отсутствии какой-либо безопасности подобной системы. Однако напомним о следующем (см. выше) «…За полгода Microsoft выпустила обновления более чем к 39 уязвимостям…», и это дает основание утверждать Symantec, что «Windows - самая надежная система» (посмотрите на рис.8, мы закончили построение зависимости для 20 уязвимостей в год, т.к. уже для этого значения параметра не имеет какого-либо смысла обсуждать вопросы безопасности ОС).

Вот какова количественная оценка безопасности современных ОС!

Нелишним здесь будет напомнить, что интенсивность обнаружения уязвимостей для приложений на порядок выше, тогда какова безопасность современного компьютера, на котором установлены и уязвимая ОС, и уязвимые приложения?

Заключение.

Согласитесь, что в том, что в 70% инцидентов инсайдеры собирались воспользоваться или воспользовались систематическими недочетами в компьютерных процессах, процедурах и приложениях, а в 61% случаев инсайдеры пользовались уязвимостями, которые присутствовали в сетях, программах или оборудовании изначально, о чем отмечалось во введении к статье, нет ничего удивительного. Сегодня уязвимости ОС и приложений – это одна из ключевых проблем информационной безопасности. И поскольку эта проблема в современных условиях неразрешима, рекомендация по построению защиты конфиденциальной информации и персональных данных, состоящая в том, что подсистему управления доступом целесообразно реализовывать на базе специальных программных средств, не входящих в ядро какой-либо операционной системы и обеспечивающих защиту самих операционных систем, электронных баз персональных данных и прикладных программ, более чем оправдана!