
Сентябрь 2005
Тема номера: Oracle COREid и информационная безопасность
А. Додохов,
менеджер проекта,
к.т.н. А. Сабанов,
коммерческий директор
ALADDIN Software Security R.D
О дополнительных возможностях защиты данных
под управлением СУБД Oracle 9i
Источник: журнал Byte, #5, 2005,
http://www.aladdin.ru/ufiles/29_6product_PDF.PDF
Статья публикуется с разрешения авторов и редакции журнала
Введение
Обеспечению конфиденциальности данных под управлением СУБД Oracle посвящено немало работ. С одной стороны, это объясняется распространенностью данной СУБД: из разных источников известно, что Oracle используется в 60-80% государственных организаций России, и не менее чем в 30-35% – коммерческих. С другой - известны факты краж и последующего коммерческого распространения баз данных ГАИ, ГТК, УВД, МРП, МГТС, МТС, которые штатно использовались под управлением СУБД Oracle. Цель появления данной статьи – желание рассказать о технологиях, позволяющих не только надежно защитить данные, но и выявить злоумышленника, покушавшегося на них.
Актуальность. Зарубежные данные и российская действительность
Долгое время защита баз данных ассоциировалась с защитой локальной сети предприятия от внешних атак хакеров, вирусов и т.п. Данные консалтинговых компаний, появившиеся в последние годы, выявили другие, не менее важные направления защиты информационных ресурсов компаний. Исследования убедили, что от утечки информации, ошибок персонала и злонамеренных действий “всесильных” администраторов баз данных не спасают ни межсетевые экраны, ни VPN, ни даже “навороченные” системы обнаружения атак и анализа защищенности. Обратимся к свидетельствам, опубликованным в конце 2004г. на известном российскому
ИТ-сообществу сайте
www.CNews.ru (рис.1) .
Рис. 1.Статистика угроз.
Источник: 2003 CSI/FBI Computer Crime and Security Survey, данные по 1000 исследуемых компаний
Результаты данного исследования обоснованы анализом западного рынка, российской специфики они не учитывают. Тем не менее, можно утверждать, что в России есть все перечисленные угрозы, и проблема сохранности конфиденциальных данных стоит еще более остро.
Исследования Ernst&Young по проблемам внутренних угроз свидетельствуют: около 20% сотрудников предприятий уверены, что конфиденциальная информация “уходит на сторону” по вине их коллег, при этом руководители большинства компаний практически бездействуют. В чем причины этого? По исследованиям Ernst&Young причины таковы:
- подобные преступления имеют высокую латентность (т.е. вы узнаете о понесенных потерях по прошествии некоторого времени) и достаточно редко раскрываются. В докладе руководителя Управления “К” ГУСТМ МВД РФ Е.Я Якимовича на Х Международном форуме “Технологии безопасности” в феврале 2005 г. отмечалось, что количество фактов неправомерного доступа к информационным ресурсам государственных и коммерческих организаций в целях хищения и последующего сбыта за 2004 г. удвоилось. Но это только видимая часть айсберга. Эксперты называют следующие цифры по сокрытию: США - 80%, Великобритания - до 85%, Германия - 75%, Россия - более 90%. К тому же политика руководства “не выносить сор из избы” еще более усугубляет ситуацию. "Многие организации даже не представляют, что причиняет им ущерб, и в каком объеме. В то время как паникеры фокусируют внимание пользователей на внешних угрозах, аргументируя сомнительными оценками потерь, для организаций большую опасность представляют инсайдеры – неправомерные действия, халатность, недосмотр сотрудников… Поскольку многие инсайдерские инциденты тщательно маскируются и не контролируются, организации часто оказываются не в курсе, что они подвергаются атаке изнутри", - отметил в выводах Эдвин Беннет (Edwin Bennett), управляющий Technology and Security Risk Services компании Ernst&Young.
- низкий интерес к разработке средств, ликвидирующих или уменьшающих риски, связанные с внутренними угрозами; недостаточная популяризация таких решений. В результате о средствах и методах защиты от кражи информации легальными сотрудниками знают немногие.
- недостаточное предложение на рынке комплексных систем для борьбы с внутренними угрозами, особенно в отношении краж информации из баз данных.
В итоге (по данным Ernst&Young) почти 100% опрошенных подтвердили использование в корпоративных сетях антивирусного ПО, 71% - антиспамовых систем, но о защите от внутренних угроз не упомянул никто.
Российская действительность еще тревожнее. В опубликованной в феврале 2005г. работе [3] приводятся данные опроса представителей 387 государственных и коммерческих структур. Вот основные выводы данного исследования:
- 62% респондентов считают, что действия инсайдеров - самая большая угроза для российских организаций.
- 98% признали нарушение конфиденциальности информации самой большой внутренней ИТ- угрозой.
- 99,4% допускают возможность наличия незарегистрированных инцидентов внутренней ИБ.
- 87% считают технические средства эффективным способом защиты. Однако всего 1% респондентов используют их, а 68% никаких действий не предпринимают.
- Российские организации осознают опасность внутренних ИТ- угроз, но не знают как с ней бороться: 58% не осведомлены о существующих технологических решениях.
- Чем больше организация, тем выше озабоченность угрозой утечки конфиденциальной информации.
В качестве яркой иллюстрации одного из приведенных выводов на рис. 2 приводятся данные по оценке главных ИТ-угроз в компаниях, где число работников превышает 2500 человек.
Видно, что оценка риска от действий внутренних злоумышленников лидирует перед такими традиционными и “раскрученными” опасностями, как воздействие вредоносных программ и хакерских атак. Известно, что к группе инсайдеров относят, в первую очередь, нечестных, обиженных и уволенных сотрудников (тех, у кого случайно или намеренно осталась возможность доступа к конфиденциальным данным).
Рис. 2. Оценка угроз. Данные компании Infowatch октябрь-декабрь 2004 г.
Действительно, в средних и крупных организациях гораздо труднее отследить действия инсайдеров традиционными средствами HR-менеджмента и службы физической безопасности, а цена реальных потерь от утечки информации возрастает пропорционально количеству сотрудников. В этой ситуации наиболее эффективным способом защиты информации является комплексный подход, основанный на комбинации технических средств и организационных мер.
Одним из способов технического решения задачи персонификации действий пользователей, имеющих доступ к конфиденциальным данным, является решение [2]. Появление этого решения в начале 2004г. и его успешное тестирование с различными прикладными системами, проведенное специалистами компаний “РНТ”, “БОРЛАС”, ФОРС, КРОК, “Инфосистемы Джет”, доказывает целесообразность его промышленного применения в различных сегментах экономики. Однако поскольку процесс принятия решений растянут во времени, а развитие предложенного решения продолжается, попробуем еще раз сформулировать постановку задачи и покажем, какие преимущества для пользователей и администраторов безопасности в плане надежности и удобства организации защищенного доступа к данным дает применение данного подхода.
В чем суть проблемы?
Попробуем кратко сформулировать основные причины несанкционированного доступа к данным и поставленного в ряде случаев на промышленные рельсы сбыта баз данных, содержащих персональные данные клиентов, партнеров или сотрудников и коммерческие тайны компаний.
Итак, имеем следующие исходные данные:
- многие не догадываются о том, что их базы данных крадут
- кража и причиненный ущерб имеют латентный характер
- если факт кражи данных установлен, большая часть компаний замалчивает причиненный ущерб. Одна из причин этого - отсутствие реальных механизмов доказательства совершения кражи конкретным пользователем ресурсов.
- технологии, позволяющие строго персонифицировать действия пользователей и разграничить их права, неизвестны большинству руководителей, заинтересованных в защите данных
- возможность защиты данных от системных администраторов также малоизвестна
- бюджеты на защиту данных, как правило, невелики. Это не позволяет решить проблему комплексно (введение штатных единиц, отвечающих за информационную безопасность, формирование и проведение в жизнь политик безопасности, обучение персонала, установка систем защиты и т.д.)
Рассмотрим способы решения задачи защиты данных даже в таких неблагоприятных условиях.
Общее решение
Естественным способом защиты конфиденциальной информации, хранящейся в таблицах БД, может показаться ее зашифрование с помощью достаточно стойкого криптоалгоритма. Этим обеспечивается хранение информации в “нечитаемом” виде. Для получения “чистой” информации пользователи, имеющие санкционированный доступ к зашифрованным данным, указывают ключ и применяют алгоритм расшифрования. Конечно, тут возникает проблема хранения ключей шифрования – вспомним хотя бы о “пароле под ковриком мыши”.
Предположим, что проблема хранения ключей решена. Предположим также, что легальный пользователь решил “срисовать” защищенную информацию, а это, отметим, он может сделать совершенно свободно. Аналогичный или даже больший ущерб может принести передача ключа шифрования заинтересованному лицу. А если в качестве злоумышленника выступает администратор БД... Напрашивается вывод, что шифрование всех проблем не снимает.
Чтобы техническими средствами снизить риски от внутренних угроз в БД, следует реализовать:
- надежную аутентификацию пользователя. Это позволит повысить степень персонализации доступа и неотказуемости пользователя от совершенных действий.
- шифрование трафика между клиентской рабочей станцией и сервером БД. Это предотвратит попытки кражи информации на сетевом уровне.
- криптографическое преобразование данных, которые необходимо защитить. Это позволит ликвидировать возможность физической кражи информации, например, просмотром или копированием файлов БД.
- хранение аутентификационной информации и ключей шифрования на персонализированном внешнем носителе, например, на смарт-карте или USB-ключе. Это позволит устранить проблему “забытых паролей” и повысит персональную ответственность сотрудника.
- аудит критических (в плане безопасности) действий пользователей и – желательно - не средствами аудита БД. Сочетание аудита и точной персонализации – достаточно веский аргумент в пользу отказа от противоправных действий для потенциальных нарушителей.
Эффект от реализации подобного подхода будет ощутимым. Разработка и внедрение регламентов и политик безопасности, а также тренинги персонала по работе с конфиденциальными данными сделают результат еще более весомым.
Таким образом, для минимизации риска потерь от внутренних угроз необходимо проведение комплекса технических, нормативных и других защитных мер. Их разумное сочетание, соответствующее условиям функционирования организации, обеспечит эффективный отпор новым угрозам.
Решение, “прозрачное” для приложений
Сложность, а иногда и невозможность промышленной реализации того, что предлагалось выше, нередко заключается в размере требующейся доработки в существующих информационных системах. Это – цена вопроса.
Компания Аладдин предлагает решения технологии, которые позволяют полностью защитить прикладные информационные системы на базе СУБД Oracle без их переделки. При этом полностью задействуются штатные механизмы обеспечения безопасности сервера и клиента Oracle. Самое интересное из предлагаемых решений – строгая двухфакторная аутентификация в Oracle для архитектуры приложения “клиент – сервер”.
Рассмотрим это решение подробнее.
Не секрет, что из всего разнообразия методов аутентификации, предоставляемых СУБД Oracle (имя/пароль, RADIUS, Kerberos, SSL, SecureID), в 99% случаях приложения используют аутентификацию по имени пользователя и паролю. Это обусловлено простотой подобного метода. Однако, удобство и, что более важно, его безопасность оставляют желать лучшего.
Наиболее надежным методом сегодня считается аутентификация по сертификату формата X.509, и Oracle 9i его поддерживает. Сертификаты пользователей и закрытые ключи при этом могут храниться либо в файлах стандартного формата PKCS#12, либо в реестре Windows на рабочих станциях, при этом они защищены паролем. Это порождает проблемы в плане безопасности – ключевые контейнеры могут быть скопированы и впоследствии “взломаны” методом простого перебора паролей. Некоторые неудобства вызывает и привязка ключевого контейнера к конкретной рабочей станции.
Предлагаемое решение снимает обе эти проблемы: сертификаты установлены непосредственно в смарт-карте или USB-ключе eToken; секретный ключ находится в защищенной памяти и никогда ее не покидает; сертификаты “мобильны” - работать с приложениями Oracle можно с любой рабочей станции и от имени любого пользователя корпоративной сети. Схематично решение выглядит так (рис. 4):
Рис.4. Принцип хранения сертификатов в решении Аладдин
Все, что требуется настроить на стороне клиента – это указать, что ключевой контейнер помещен в хранилище сертификатов (Certificate Store) Microsoft. В момент запроса на соединение с БД служба eToken RTX позволяет сетевым драйверам Oracle “видеть” сертификаты, установленные на eToken (рис. 5, 6). Аутентификация проходит в два этапа:
Рис.5 Установление соединения с Oracle без указания имени и пароля
Рис.6. Выбор требуемого сертификата
- запрос на выбор сертификата (в зависимости от выбранного сертификата пользователь будет работать с определенной БД, схемой и правами). При этом если сертификат единственный, он выбирается автоматически.
- запрос PIN-кода (рис.7) смарт-карты или USB-ключа eToken для авторизации на операции с закрытым ключом.
Рис.7. Запрос PIN-кода
Приведем пример аутентификации по сертификату.
Если соединение установлено успешно, пользователь получит результат, как на рис.8.
Рис.8. Соединение успешно установлено
Что же происходит “за кадром” процесса аутентификации? Получив с клиентского приложения команду на соединение с БД (conn = connect рис.5), клиентское ПО Oracle (клиент) анализирует стоку соединения. По настройке сетевого алиаса (@orclssl) определяется хост сервера БД (сервер), порт и протокол соединения (в данном случае – SSL). Клиент Oracle передает серверу запрос на соединение. Далее происходит взаимная аутентификация сервера и клиента, определяемая протоколом SSL.
Когда клиенту требуется предъявить свой сертификат, служба eToken “подсказывает” ему, что сертификат следует брать из смарт-карты или USB-ключа (рис.6). Для подтверждения подлинности сервера клиенту требуется личный ключ для расшифрования ответа сервера. Личный ключ находится в защищенной памяти смарт-карты или USB-ключа, и все операции с ним выполняет встроенный криптопроцессор. Для таких операций требуется дополнительная авторизация, то есть запрашивается PIN-код (рис.7). Когда между клиентом и сервером установлены доверительные отношения, сервер проверяет наличие отличительного имени пользователя, для которого издан сертификат клиента, в LDAP-каталоге – Oracle Internet Directory. Если таковой найден, дополнительно определяется экземпляр БД, схема и набор прав для клиента. После этого сервером создается сессия пользователя с указанными параметрами (рис.8). Сетевой обмен между клиентом и сервером происходит по соединению, защищенному выбранным криптоалгоритмом.
Что получает заказчик, настроивший сервер БД, клиентские рабочие станции, установивший сертификаты пользователей на eToken? Он получает надежную аутентификацию, шифрованный трафик между рабочими станциями и сервером, и самое главное – персонализацию доступа в БД. При этом он убедится, что все приложения, работающие с Oracle – от DOS-консоли до сложных ERP систем, работают с новым методом аутентификации без каких-либо переделок и доработок.
Источники:
- http://www.cnews.ru/newcom/index.shtml?2004/11/01/167428
- Демченко К.О., Додохов А.Л., Сабанов А.Г. “Русская версия “индийской защиты” или защита данных под управлением СУБД Oracle”. Журнал “Байт”, №8, 2004г.
- http://www.infowatch.ru/threats?chapter=147151396&id=157848009
- В.Митин. “Внутренние угрозы страшнее внешних”. PCWeek №5(467), 2005г.
|