Сертификат AM Test Lab
Номер сертификата: 134
Дата выдачи: 31.07.2014
Срок действия: 31.07.2019
3. Системные требования «Гарда БД» 3.7
4. Функциональные возможности «Гарда БД» 3.7
5. Развертывание «Гарда БД» 3.7
Введение
На сегодняшний день существует немало международных и отраслевых стандартов и требований к безопасности информации, в которых описывается необходимость защиты баз данных. В качестве одного из примеров можно привести стандарт PCI DSS (Payment Card Industry Data Security Standard – стандарт безопасности данных в индустрии платежных карт). И в этом нет абсолютно ничего удивительного. Логгирование доступа к данным, выявление разных видов аномальных активностей позволяют отследить попытки внешних атак, а также некорректной работы сотрудников с данными.
Сегодня большие объемы информации хранятся в базах данных: бухгалтерия в базе 1С, списки клиентов и их персональные данные в базе CRM-системы, приказы и внутренние распоряжения в базе системы документооборота и пр. Поэтому несанкционированный доступ к информации в них может нанести организации серьезный вред. Ситуация усугубляется тем, что сегодня все чаще эти системы и, соответственно, связанные с ними базы становятся доступны из Интернета. В качестве примера рассмотрим ситуацию с банками. Практически у каждого из них есть услуга интернет-банкинга, которая подразумевает доступ пользователей к базам данных АБС (автоматизированная банковская система) из глобальной сети. Также нельзя забывать, что нарушения, связанные с работой с базами данных, редко бывают случайными. В подавляющем большинстве случаев несанкционированный съем информации осуществляется злоумышленниками с корыстной целью.
Угрозу несанкционированного доступа к информации, размещенной в базах данных, нельзя считать эфемерной. Наиболее актуальна она для тех БД, которые доступны из Интернета. По сути, это относится ко всем интернет-магазинам, многим веб-сервисам, в том числе и таким «критичным», как интернет-банкинг. Впрочем, если даже база данных и не подключена к Интернету, угроза остается не менее актуальной. Надо понимать, что в любой компании есть сотрудники, которые имеют привилегированные права в информационной системе, но которые не должны получать прямой доступ к информации из БД. Кроме того, нельзя сбрасывать со счетов воздействие вредоносных программ, «подкованных» в ИТ-пользователей, внешние SQL-атаки, которые выявляются анализом исключительных ситуаций и т.д.
Как раз для защиты от описанных выше угроз и разработано решение «Гарда БД». Принцип его действия достаточно прост. Продукт отслеживает все подключения к указанным ему базам данных и осуществляет мониторинг запросов к ним в соответствии с заданными при настройке правилами. Среди перехваченных запросов с помощью заданных критериев отыскиваются потенциально опасные, о которых оперативно извещается администратор безопасности. Таким образом можно «отловить», к примеру, множественные попытки подключения к базам с неудачной аутентификации, запросы SELECT администратора БД к тем таблицам, содержимое которых не должно его волновать, необычные действия в базе данных, попытки изменения схем баз, изменения прав доступа к ним, подозрительное уничтожение информации и т.д.
Архитектура «Гарда БД» 3.7
В состав «Гарда БД» 3.7 входят следующие модули:
- «Анализатор» – серверное приложение, которое осуществляет перехват и анализ подключений и запросов к базам данных;
- «Сервер БД» – серверное приложение, отвечающее за хранение собранной информации, настроек системы и т.д.;
- «Центр управления "Гарда БД» – клиентское приложение, с помощью которого осуществляется настройка системы;
- «Гарда БД. Отчет» – клиентское приложение для работы со статистическими отчетами и графиками.
Системные требования «Гарда БД» 3.7
АПК «Гарда БД», как и другие продукты «МФИ Софт», поставляется в виде готового программно-аппаратного комплекса, конфигурация которого составляется под индивидуальные потребности каждого клиента. Поэтому указывать какие-либо системные требования для сетевых компонентов не имеет смысла.
Таким образом, технические требования для запуска системы минимальны:
- Ethernet-порт 1 Гбит/сек;
- протокол IPv6 или IPv4 на локальной сети стандарта IEEE 802.3;
- Операционная система: Linux для анализатора и ЦУ, MS Windows 7 для рабочих мест.
Функциональные возможности «Гарда БД» 3.7
В «Гарда БД» 3.7 реализованы следующие функциональные возможности.
Поддержка наиболее распространенных СУБД
«Гарда БД» 3.7 способна поддерживает наиболее часто использующиеся в корпоративных информационных системах СУБД: Microsoft SQL Server и Oracle разных версий. При этом стоит отметить, что бесплатные СУБД, в частности, MySQL и PostgreSQL, не поддерживаются. Это, конечно, же, недостаток рассматриваемого продукта, поскольку частота использования данных СУБД в последнее время увеличивается.
Контроль доступа к веб-интерфейсу
Рассматриваемый продукт может перехватывать HTTP-трафик с указанного веб-сервера для контроля доступа пользователей к информационным системам с веб-интерфейсами. Для перехваченных HTTP-объектов существуют собственные критерии для анализа, а для обнаруженных подозрительных действий записываются их специфические свойства.
Кроме того, в комплексе предусмотрен модуль «Агент локальных подключений», установка которого позволяет контролировать подключения через терминальные сессии и непосредственные запросы с сервера БД.
Работа с зеркалируемым трафиком
«Гарда БД» 3.7 может работать как в качестве прокси-сервера, становясь между клиентами и СУБД, так и с зеркалируемым трафиком. При пассивной работе система не способна предотвратить выполнение подозрительных запросов. Но, с другой стороны, такой подход гарантирует отсутствие снижения производительности СУБД (нельзя забывать, что производительность СУБД является критичной для большинства информационных систем), а также риска нарушения доступа к ней при сбоях в работе системы защиты.
Кроме того, развертывание продукта осуществляется без изменения топологии используемых баз данных, что существенно экономит время и стоимость внедрения защиты.
Работа в качестве прокси-сервера
При подключении системы в разрыв возможна настройка блокировки несанкционированных действий пользователей баз данных.
Для повышения отказоустойчивости такой системы и для сохранения высокой производительности СУБД используются bypass-адаптеры, которые обеспечивают доступность системы в критических ситуациях. К примеру, даже если отключено электропитание сервера, контроль работы с базами данных будет продолжаться.
Высокая производительность
По заявлениям разработчиков, рассматриваемый продукт может осуществлять обработку данных со скоростью до 2 Гбит/с на одном сервере и в разы выше при кластеризации.
Тонкая настройка анализа операций с базами данных
Параметры анализа операций и выявления подозрительных действий настраиваются администратором безопасности в соответствии с потребностями. При этом может использоваться большое количество критериев:
- IP-адрес клиента;
- имя пользователя в базе данных;
- имя пользователя в операционной системе;
- дата и время запроса;
- название клиентского приложения, используемого пользователем;
- результат аутентификации (успешная или неуспешная);
- имя объекта баз данных (таблицы, синонимы, представления, процедуры, функции);
- список запрашиваемых или передаваемых полей объекта баз данных;
- объем данных ответа, превышающий указанную величину;
- объем данных запроса, превышающий указанную величину;
- тип команды SQL (SELECT/ALTER USER/DROP VIEW и др.).
Эти критерии можно объединять в сложные условия с использованием логических операторов.
Оповещение администраторов безопасности о подозрительной активности
В «Гарда БД» 3.7 реализованы настраиваемые оповещения администраторов безопасности и других ответственных лиц о подозрительной активности в контролируемых базах данных и о системных событиях в самой системе. Оповещение осуществляется путем отправки писем по электронной почте.
Единый контроль всех баз данных
Единый центр управления позволяет контролировать несколько абсолютно независимых друг от друга баз данных. Настройка системы, равно как и работа с собранной ею информацией осуществляется удаленно, непосредственно с рабочих мест администраторов безопасности и других ответственных сотрудников.
Управление правами доступа к системе защиты
В «Гарда БД» 3.7 предусмотрена возможность гибкой настройки прав доступа. В продукте реализованы разные уровни пользователей, их деление на отделы и группы. Права выдаются отдельно на выполнение функций в системе и на доступ к информации (по сеансам наблюдения). Таким образом, пользователям можно разрешить доступ только к нужным им данным.
Работа со статистикой
В рассматриваемом продукте реализован специальный клиент для работы со статистикой собранной системой информации и построения графических отчетов. Кроме того, в нем есть функция автоматического выявления статистических аномалий (заметных отклонений в ту или иную сторону количества запросов за определенный промежуток времени от среднестатистического).
Развертывание «Гарда БД» 3.7
Как мы уже говорили, «Гарда БД» 3.7 работает как с зеркалируемым трафиком, так и в качестве прокси-сервера. В наиболее простом случае общая схема подключения защиты в пассивном режиме выглядит так, как приведено на рисунке 1. В более сложных по архитектуре сетях схема может выглядеть иначе. Однако в целом принцип ее остается таким же. При работе в активном режиме установке «Гарда БД» осуществляется "в разрыв" между клиентами и серверами баз данных.
Рисунок 1. Схема встраивания «Гарда БД» 3.7 в инфраструктуру
Основными элементами «Гарда БД» 3.7 являются серверные приложения: "Анализатор" (их может быть несколько) и «Центр Управления». Предполагается, что они размещаются на разных серверах. Однако при работе с небольшими базами данных они могут быть расположены и на одной аппаратной платформе. Это решается на этапе проектирования системы защиты в каждом конкретном случае отдельно. Также в состав комплекса входит модуль «Монитор локальных подключений». Он инсталлируется на контролируемые сервера баз данных и осуществляет мониторинг локальных подключений к СУБД (в том числе и подключений через терминальные сессии).
Саму установку серверных приложений мы рассматривать не будем. Дело в том, что она выполняется специалистами разработчика (это даже декларируется в документации). Инсталляция клиентских приложений выполняется заказчиком самостоятельно. Однако и ее мы не описываем, поскольку устанавливаются эти программы абсолютно стандартно.
После завершения установок главному администратору «Гарда БД» 3.7 необходимо выполнить первичную настройку системы защиты. Осуществляется она с помощью приложения "Центр управления «Гарда БД». При первом запуске этой программы нужно в настройках указать адрес сервера с установленным приложением "Сервер БД" и порт подключения (по умолчанию 1002). После этого можно подключиться к серверу, используя свои логин и пароль. "Центр управления «Гарда БД» состоит из нескольких вкладок, каждая из которых используется для решения тех или иных задач.
Рисунок 2. Окно авторизации пользователя в программе "Центр управления «Гарда БД»
В первую очередь администратору нужно зарегистрировать все установленные анализаторы. Сделать это можно на вкладке "Анализаторы". Для каждой записи необходимо указать название и описание анализатора, его IP-адрес и другие параметры.
Рисунок 3. Создание нового анализатора в «Гарда БД» 3.7
После создания анализаторов нет необходимости подключать базы данных вручную – система сама в автоматическом режиме создаёт список баз данных, администратору необходимо лишь указать соответствующие настройки. Таким образом система способна выявлять в сети предприятия все неконтролируемые базы данных. При постановке базы на контроль указывается ее название и описание, имя хоста или IP-адрес, список портов, по которым возможно подключение и прочие параметры.
Автоматический поиск неконтролируемых баз данных помогает избежать негативных последствий человеческого вмешательства. Например, при изменении IP-адреса базы данных она снова будет поставлена на контроль с теми же параметрами.
Рисунок 4. Создание контролируемой базы данных в «Гарда БД» 3.7
Следующий этап подготовки системы защиты – формирование первоначального списка пользователей «Гарда БД». Для удобства управления учетные записи можно разбить по отделам и группам (иерархия: отдел – группы – пользователи). При создании пользователей, отделов и групп можно задавать права на выполнение в системе различных действий: управление анализаторами, учетными записями, сеансами, системными списками и т.д. (права пользователей на доступ к информации формируются при создании сеансов наблюдения, см. ниже). При необходимости можно задать одного или нескольких администраторов. Это привилегированные пользователи системы, которые производят мониторинг состояния БД, управляют учетными записями, анализаторами и пр.
Рисунок 5. Создание учетной записи пользователя в «Гарда БД» 3.7
Ну и заключительным этапом развертывания системы является формирование и настройка списков критериев и уровней их важности. Первые нужны для облегчения будущей работы с «Гарда БД» 3.7. Они представляют собой заданные наборы однотипных параметров (например, логины сотрудников, IP-адреса и т.д.). Примечательно, что создаваться они могут как вручную, так и путем загрузки из базы данных. Во втором случае необходимо указать БД, из которой будет извлекаться информация и ввести запрос (например, с помощью оператора SELECT можно выбрать логины пользователей и т.п.).
Рисунок 6. Создание списка критериев в «Гарда БД» 3.7
Уровни важности критериев позволяют разделить критерии на группы в зависимости от степени их угрозы. В рассматриваемом продукте предусмотрено три уровня: информационный, важный и критический. Добавлять к ним новые нельзя. Однако существующие надо настроить, в частности, включить или отключить уведомления по каждому из них и указать список получателей писем.
Рисунок 7. Настройка рассылки уведомлений в уровне важности критериев в «Гарда БД» 3.7
На этом базовую настройку «Гарда БД» 3.7 можно считать завершенной.
Работа с «Гарда БД» 3.7
В рамках регулярной работы с «Гарда БД» 3.7 пользователями выполняются следующие основные операции:
- создание и настройка сеансов наблюдения;
- просмотр результатов наблюдения;
- просмотр отчетов, статистики и выявление статистических аномалий.
Также пользователи в рамках выданных им прав доступа могут управлять анализаторами, учетными записями в системе защиты и выполнять прочие действия, описанные в предыдущем разделе обзора.
Сеансы наблюдения представляют собой наборы критериев, по которым выявляется подозрительная активность при работе с базами данных (аномальный объем выборок, большое количество ошибок авторизации, подключение к БД с использованием запрещенных приложений, аномальная активность в нерабочее время и т.п.). Для каждой БД можно формировать произвольное количество сеансов, которые будут отслеживать разные типы нарушений. Для удобства управления они могут быть разбиты на группы.
При создании сеанса наблюдения в первую очередь необходимо задать его наименование, описание и, при необходимости, группу. Также нужно выбрать его тип: обычный или сеанс перехвата бизнес-функций. Первый вариант используется для мониторинга произвольных запросов к базам данных. Второй применяется для анализа большого количества однотипных запросов, формирующихся пользовательскими приложениями (например, в процессе работы бухгалтера с программой 1С последняя формирует большое количество схожих запросов к своей базе данных). В этом случае пользователь имеет возможность указать интересующие поля ответа и переменные запроса в качестве дополнительного свойства перехваченного объекта. Эта функция обеспечивает быструю и удобную фильтрацию по содержимому. Кроме того, сеанс бизнес-функций позволяет обнаруживать аномальные значения количества запросов по какому-либо признаку.
Также при создании сеанса наблюдения можно включить или выключить перехват статистики шифрованных подключений к базе данных и автоматическое удаление данных сеанса. При активации первого параметра система будет сохранять общие данные о запросах, переданных по зашифрованному подключению (данные сервера базы данных и клиента, объемы запроса и ответа и пр.), содержимое самих запросов и ответов будет недоступно. Вторая функция обеспечивает автоматическое удаление самых старых данных в сеансах при критической загрузке хранилища «Гарда БД» 3.7.
Рисунок 8. Параметры сеанса наблюдения в «Гарда БД» 3.7
Далее для создания сеанса наблюдения необходимо сформировать критерии, то есть условия, при срабатывании которых будет фиксироваться нарушение. Типов критериев в системе довольно много. Среди них есть относящиеся к клиенту, отправившему запрос в базу данных (IP-адрес, логин, логин в БД, имя программы), результат аутентификации (успешный или неуспешный), дата и время запроса, объект БД (таблица, синоним, хранимая процедура, функция), имя вызываемой функции или процедуры, объемы запроса и ответа, конкретная команда БД (SELECT, DROP VIEW и пр.), ключевое слово в запросе или ответе и пр. Фактически, критерии позволяют охватить все параметры взаимодействия клиентов с контролируемыми базами данных.
Кстати, при их создании значения можно указывать вручную, а можно пользоваться предварительно подготовленными списками, о чем мы писали выше. Такие списки можно формировать вручную или через SQL-запросы в контролируемую БД непосредственно из консоли оператора системы. Например, так можно получить список определенных пользователей или полей для контроля. При этом система «Гарда БД» может автоматически синхронизировать эти списки.
Рисунок 9. Пример простого критерия в «Гарда БД» 3.7
Критерии могут быть не только простыми, но и составными. В этом случае сначала подготавливается два или несколько обычных условий, которые потом объединяются друг с другом логическими операциями И и ИЛИ. Это позволяет формировать критерии, которые обладают высокой степенью точности и низким процентом ложных срабатываний.
Следует учесть, что система позволяет перехватывать запросы по критериям даже в случае использования злоумышленником синонимов и представлений. Система автоматически забирает информацию о созданных синонимах и представлениях из контролируемой БД и подставляет ее в свойства перехваченного запроса.
Рисунок 10. Пример составного критерия в «Гарда БД» 3.7
Также в критериях указываются анализаторы и базы данных, для которых они будут работать. Здесь можно выбрать только одну БД, а можно и несколько. Только нужно учитывать, что в любом случае вся информация будет собираться в одном сеансе (даже если нарушения были зафиксированы в разных базах данных, указанных в критерии). Если перехваченный запрос подходит под несколько критериев анализа в разных сеансах, он отобразится в каждом из них.
Также система позволяет настроить критерий анализа «по образцу». То есть, обнаружив в перехваченных данных нелегитимный запрос или самостоятельно смоделировав такой, оператор системы может взять этот запрос за образец и легко настроить сеанс перехвата всех подобных запросов.
Ну и, конечно же, необходимо выбрать уровень важности заданных в сеансе критериев. Это позволяет настроить оповещения об обнаруженных запросах разным группам адресатов, в зависимости от уровня важности.
Заключительным этапом в создании сеанса наблюдения является назначение прав доступа к нему. Как мы уже говорили выше, права пользователям «Гарда БД» 3.7 можно выдавать на действия в системе и на работу с данными. И если первые задаются в свойствах учетных записей, то вторые – как раз в настройках сеансов. Здесь можно указать нужных пользователей и разрешить или запретить им те или иные действия из списка возможных: просмотр данных в сеансе, редактирование списка критериев, удаление данных, добавление заметок и пр.
Рисунок 11. Настройка прав доступа на сеанс наблюдения в «Гарда БД» 3.7
После формирования сеанса наблюдения он начинает работать. Все обнаруженные нарушения сохраняются в нем в виде списка действий клиентов. Просмотреть их можно прямо в дереве сеансов. События бывают пяти типов: доступ к данным (запросы SELECT, INSERT, UPDATE, DELETE), изменение структуры базы данных (все запросы, связанные с созданием, изменением и удалением таблиц, видов, процедур и пр.), изменение учетных записей пользователей (запросы, связанные с созданием, изменением и удалением пользователей), изменение прав пользователей, аутентификация пользователей. По каждому из них можно просмотреть подробную информацию, свойства связанных объектов, тексты запросов и ответов и пр.
Рисунок 12. Просмотр события в сеансе наблюдения в «Гарда БД» 3.7
Этот вариант лучше всего подходит для оперативного контроля, поскольку позволяет просматривать события по мере их поступления. Для аналитической же работы лучше использовать второй способ работы с данными – журнал данных (или журнал бизнес-функций для сеансов перехвата бизнес-функций). Он позволяет просматривать записи с фильтрацией и сортировкой по разным полям, самостоятельно выбирая столбцы для отображения.
Рисунок 13. Журнал данных в «Гарда БД» 3.7
Поиск объектов в «Гарде БД» осуществляется по всей базе накопленной информации. При этом полнотекстовый поиск осуществляется как по запросам, так и по содержимому ответов или переменных запроса, что позволяет, например, оперативно получить список всех обращений к определенным данным (номер паспорта или другие персональные данные).
Если в компании предполагается работать со статистикой запросов к базам данных, то при создании сеансов наблюдения необходимо включить сбор статистических данных и настроить параметры их хранения, пересчета и удаления. Сделать это можно в свойствах сеансов. Там же, при необходимости, можно активировать поиск аномалий и задать его параметры.
Рисунок 14. Параметры поиска аномалий в статистике сеанса в «Гарда БД» 3.7
Статистические отчеты создаются в системе пользователями. При создании такого отчета выбирается его тип (топ сотрудников или статистика по времени), вид (разовый за произвольные даты или автоматический - суточный, недельный или месячный), набор критериев, внешний вид (гистограмма, круговая диаграмма или график), сотрудники, по которым он будет строиться, и другие параметры.
Рисунок 15. Создание статистического отчета в «Гарда БД» 3.7
После создания отчета его можно просмотреть в любой момент. Он будет отображаться в приложении «Гарда БД. Отчет», которое запускается автоматически. Отчеты являются интерактивными, то есть в процессе работы с ними можно раскрывать списки сотрудников, просматривать данные по отдельным пользователям, осуществлять поиск данных и пр. Также их можно распечатывать и экспортировать в форматы DOC, XLS, PDF.
Рисунок 16. Пример статистического отчета в «Гарда БД» 3.7
Безусловно, мы рассмотрели не все, а только основные операции в «Гарда БД» 3.7. Но и они могут дать представление о возможностях этого решения.
Выводы
«Гарда БД» 3.7 – весьма актуальный продукт, который позволяет в значительной степени усилить защиту баз данных и предотвратить утечки конфиденциальной информации, которая в них хранится (в том числе, и через привилегированных пользователей информационной системы предприятия). Помимо этого данное решение упрощает управление рисками, связанными с доступом к таким данным, и аудит защищенности от утечек, в том числе, от утечек персональных данных.
Особенно актуален рассматриваемый продукт для организаций, которые являются крупными операторами персональных данных: банков, страховых компаний, пенсионных фондов, государственных учреждений, предприятий, занимающихся интернет-торговлей и.т.п. Во всех этих случаях именно в корпоративных базах скапливается значительный объем информации, требующей защиты от утечек. Что и позволяет реализовать «Гарда БД» 3.7.
Достоинства:
- работа с наиболее распространенными в корпоративных информационных системах СУБД;
- контроль нескольких независимых баз данных;
- большой выбор критериев для анализа;
- внедрение без снижения производительности СУБД и изменения существующей инфраструктуры;
- возможность тонкой настройки прав доступа;
- возможность блокировки нежелательных действий пользователей;
- удобные инструменты для просмотра собранных данных.
Недостатки:
- отсутствие поддержки бесплатных баз данных MySQL и PostgreSQL.