Уязвимости баз данных

Автор работы: Пользователь скрыл имя, 26 Ноября 2009 в 16:07, Не определен

Описание работы

Главный источник угроз для СУБД лежит в самой природе баз данных. Основным средством взаимодействия с СУБД является язык SQL - мощный непроцедурный инструмент определения и манипулирования данными

Файлы: 1 файл

курс_Уязвимости БД.doc

— 137.50 Кб (Скачать файл)

 

Анализ защищенности баз данных

 

       Для подключения к SQL серверу (в дальнейшем будет рассматриваться СУБД Microsoft SQL Server, однако это не значит, что  остальные СУБД лишены недостатков  в защите) пользователи могут использовать различные сетевые протоколы - TCP/IP, Named Pipes, Encrypted Multi-Protocol. В первом случае, имя и пароль пользователя, проходящего аутентификацию на сервере базы данных, передаются в открытом виде и могут быть перехвачены при помощи простейшего анализатора протокола (sniffer). Аналогичным образом, можно поступить и при использовании протокола Named Pipes, в котором пароль посылается в формате UUENCODE, что также не является преградой для злоумышленников.

       Атакующий может перехватить пароль и имя  администратора базы данных (учетная  запись - sa). Тем самым он может  скомпрометировать всю информацию, хранимую в базе данных. Однако это  еще не все. Вся мощь систем управления базами данных встает на его сторону  и он может использовать ее не на благо, а во вред. Например, при помощи встроенной хранимой (stored) процедуры xp-cmdshell, позволяющей выполнять команды операционной системы Windows NT, злоумышленник может выполнять заданные команды так, как будто он работает за консолью сервера, а не удаленно. С помощью следующих SQL-команд злоумышленник, получивший доступ к СУБД, сможет создать пользователя с заданным паролем и правами администратора:

       xp_cmdshell 'NET USER Lexa password /ADD'

       go

       xp_cmdshell 'NET LOCALGROUP /ADD Администраторы Lexa'

       go

       С помощью первой команды злоумышленник  создает пользователя с именем Lexa с паролем password. А с помощью  третьей команды пользователь с  именем Lexa заносится в группу Администраторы. Работает это потому, что указанные  команды выполняются с привилегиями той учетной записи, под которой загружен SQL-Server. По умолчанию это учетная запись System. В качестве другого примера можно назвать использование расширенных хранимых процедур (extended stored procedures), которые при помощи OLE Automation позволяют контролировать другие приложения Windows NT. И таких примеров можно назвать множество не только для СУБД компании Microsoft, но и Sybase, Oracle и т.д.

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

       Правильно сконфигурированная не только СУБД, но и операционная система предотвратит возникновение проблем, связанных с защитой SQL-сервера. Однако зачастую администратор базы данных является и администратором всей сети и выполняет еще ряд задач, что не позволяет ему в должной мере обратить свой взгляд на защиту баз данных. У него не хватает времени на проведение работ по поиску уязвимостей в СУБД. А если сервер баз данных находится на другой территории, то эта задача становится практически неразрешимой. Это приводит к нарушению политики безопасности организации, компрометации важной информации, хранимой в БД, и т.д. Автоматизировать процесс поиска уязвимостей помогут средства анализа защищенности (Security Assessment System), называемые также сканерами безопасности (security scanner). Использование этих средств поможет определить уязвимости в корпоративной сети и устранить их до тех пор, пока ими воспользуются злоумышленники.

       Но, если средств анализа защищенности, работающих на уровне сети и операционной системы, существует не один десяток, то средств, анализирующих базы данных существует намного меньше. Если говорить конкретно, то на сегодняшний день всего два. Это система Database Scanner компании Internet Security Systems, Inc. (ISS) и система SQL <> Secure Policy компании BrainTree Security Software.

 

        Система Database Scanner

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

       Система Database Scanner обнаруживает различные проблемы, связанные с безопасностью баз  данных, начиная от "слабых" паролей  и заканчивая "проблемой 2000 года". Встроенная база знаний (Knowledge Base), доступная непосредственно из создаваемых отчетов, рекомендует корректирующие действия, которые позволяют устранить обнаруженные уязвимости. Система Database Scanner может быть использована для анализа защищенности систем управления базами данных Microsoft SQL Server и Sybase Adaptive Server [2]. Поддержка других СУБД (Oracle, Informix и т.д.) планируется обеспечить в конце второго квартала 1999 года.

       Текущая версия системы Database Scanner (2.0) обнаруживает около 200 уязвимостей названных СУБД. Система Database Scanner проводит различные проверки в трех основных областях: аутентификация, авторизация и целостность. Дополнительно СУБД проверяется на совместимость с проблемой "2000 года". Все проверки можно разделить на 17 категорий, в т.ч.:

       - Проверки подсистемы аудита СУБД;

       - Проверки подсистемы резервного  копирования (backup);

       - Проверки прав доступа пользователей  к объектам СУБД;

       - Проверки хранимых процедур (stored procedure);

       - Проверки возможности осуществления  различных атак;

       - И т.д. 

       Периодическое обновление базы данных уязвимостей позволяет поддерживать уровень защищенности Вашей корпоративной сети на необходимом уровне.

       В системе Database Scanner имеется подсистема Password Strength, которая позволяет проводить  анализ парольной подсистемы выбранной Вами СУБД. Такой анализ включает в себя использование как встроенного словаря часто используемых паролей (содержит более 30000 фраз), так и создание, и применение пользовательского файла паролей [3]. Кроме того, под системой Password Strength проводится ряд стандартных проверок:

       - "пустых" паролей; · паролей,  совпадающих с идентификатором;

       - паролей, совпадающих с идентификатором  с добавленной цифрой на конце

       - паролей, порядок букв в которых  обратен тому, который используется  в идентификаторе;

       - и т.д.

       Администратор безопасности, проводящий анализ защищенности баз данных Вашей корпоративной сети, может использовать либо один из трех изначально устанавливаемых шаблонов, определяющих степень детализации сканирования (Top Secret, Confidential, Secure), либо создавать на их основе свои собственные шаблоны, задающие только те проверки, которые должны проводиться для выбранных Вами серверов баз данных . Все созданные шаблоны могут быть сохранены для последующего использования.

       

       Один  из этапов настройки  шаблона для анализа  защищенности СУБД MS SQL Server

       Централизованное  управление процессом анализа защищенности всех баз данных Вашей корпоративной  сети с одного рабочего места делает систему Database Scanner незаменимым помощником специалистов отделов технической защиты информации или управлений автоматизации любой организации.

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

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

       Однако  при построении комплексной системы  защиты информации корпоративной сети анализом защищенности одних только баз данных дело не ограничивается. Выбор системы Database Scanner является идеальным  решением, поскольку компания Internet Security Systems предлагает целый спектр средств анализа защищенности, обнаруживающих уязвимости и на уровне сети (система Internet Scanner) и на уровне операционной системы (системы System Scanner и Security Manager). Общее число уязвимостей, которые обнаруживаются средствами компании ISS, превышает 1600, что на порядок превышает ближайших конкурентов.

 

        Система SQL <> Secure Policy

       Система SQL <> Secure Policy по своим возможностям очень похожа на систему Database Scanner, но помимо анализа защищенности выполняет и другие функции, связанные с защитой баз данных. Но, поскольку нас интересует только анализ защищенности, то рассмотрим только те компоненты системы SQL <> Secure Policy, которые отвечают за реализацию этого механизма. Подсистема Password Manager является аналогом Password Strength в Database Scanner и анализирует пароли на уязвимость и осуществляет управление процессом назначения паролей и продолжительностью их действий. Подсистема Policy Manager помогает пользователям производить оценку своих баз данных на предмет соответствия принятым стандартам корпоративной безопасности. Осуществляется это путем создания эталонного шаблона, описывающего политику безопасности баз данных Вашей организации, с которым затем сравнивается текущее состояние СУБД. Эти правила охватывают все аспекты безопасности баз данных, начиная с подсистемы аудита и параметров загрузки базы данных, и заканчивая подсистемой аутентификации и разграничения доступа к объектам базы данных.

       Настройка правил осуществляется при помощи т.н. Мастеров Правил (Rules wizards), которые позволяет очень точно и гибко настроить процесс оценки Ваших баз данных , учитывая специфику технологии обработки информации и политику безопасности, принятые в Вашей организации [4].

       

       Мастера Rules Wizard в подсистеме Policy Manager

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

       В настоящий момент система функционирует  под управлением операционных систем Windows 9x, Windows NT и работает с базами данных Oracle и Sybase.

       Как уже упоминалось выше, система SQL <> Secure Policy это не система анализа  защищенности "в чистом виде". Помимо поиска и устранения уязвимостей, она обладает возможностью анализа журналов, создаваемых подсистемой аудита, контроля используемых пользователем ранее паролей, использования единого пароля для множества распределенных баз данных (механизм Single Sign On) и т.д. Поэтому, если Вам необходима только система анализа защищенности, то, возможно, лучше воспользоваться системой Database Scanner, не отягощенной дополнительными, по отношению к анализу защищенности, функциями.

 

Заключение

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

       Другая  необходимая мера это тщательная настройка СУБД и операционной системы для работы с базой данных.

       В большинстве используемых СУБД периодически обнаруживаются все новые и новые уязвимости, которые тут же становятся достоянием общественности, и многие этими «дырами» пользуются. В ответ на это фирмы изготовители выпускают огромное количество обновлений, «заплаток» устраняющие эти уязвимости.

       Стоит отметить что большинство проблем, неисправностей, ошибок возникают все-таки из-за неправильной работы пользователей  или неверной настройки или установки  СУБД или каких-либо других компонентов  системы. Поэтому в большинстве  случаев для корректной и безопасной работы достаточно правильно настроить систему и создать надежную политику безопасности и разграничить доступ пользователям, что не является столь уж сложной задачей для администратора безопасности системы.

Информация о работе Уязвимости баз данных