Маленькое лирическое вступление.
По моему скромному опыту. Люди занимающиеся в ИТ безопасностью данных, делятся (помимо прочего) на две большие группы. С хорошим финансированием своей деятельности и не очень. Я имею в виду, прежде всего техническое оснащение и специализированное программное обеспечение.
В контексте контроля слива данных от внутренних нарушителей – инсайдеров, ситуация выглядит примерно следующим образом. Имеются специализированные системы контроля данных, Data Leak Prevention системы. Бизнес хочет защитить данные, но когда видит ценник в несколько миллионов для обеспечения такой защиты, энтузиазм резко гаснет.
Еще больше он гаснет, когда выясняется, что 100% надежного контроля данных система обеспечить не может. Умный пользователь сумеет обмануть систему. Бизнес вопрошает: «За что плотим, то тогда? Давай ка батенька, крутись как хочешь, но чтоб и овцы были целы и волки сыты.»
В результате ИТ безопасник с силовыми корнями, выпускает кучу запретительных бумаг, проникновенно грозит народу кулачищем, мол только попробуйте слить. А безопасник технарь, вчерашний админ, начинает изобретать велосипед с квадратными колесами с целью, хоть как-то контролировать информацию. (А сочетание обоих подходов, вообще хорошо :)
Об одной системе, которую можно встроить в велосипед, речь и пойдет.
Среди открытых решений контроля над данными мне попалось только два.
Это OpenDLP и MyDLP.
Из них MyDLP показалось более зрелым и функционально продвинутым.
MyDLP, открытое программное обеспечение предотвращения (контроля) утечек данных. Существует 2 лицензии использования. Бесплатная Community и платная Enterprise. Принципиальная разница между ними в Архивации передаваемых данных.
Если идет сработка на защищаемый файл, то Community, только вывесит Алерт на событие. Enterprise еще и сохранит копию файла.
Итак, идем на сайт www.mydlp.com и забираем 2 файла.
Серверную часть – ISO образ.
Агентскую часть – msi файл.
Установка серверной части.
Сервер построен на дружелюбной Убунте. Вставляем диск, Некст-Некст-Ребут. Серверная часть готова. Это действительно так :)
Назначаем серверу ip адрес и выпускаем его в интернет (это необходимо для обновлений и проверки лицензии).
В случае затруднений с установкой, инструкция там же на сайте.
www.mydlp.com/documents
Далее открываем любой браузер и заходим на наш сервер.
Видим симпатичное окно.
![](https://habrastorage.org/r/w780q1/storage2/a42/f27/9b2/a42f279b2837f451429995bb4e0ccfc2.jpg)
Теперь нам надо перейти по ссылке на secure.mydlp.com и получить Community лицензию.
Там тоже все очевидно.
После регистрации (сервер лезет в интернет, для проверки лицензии!), вводим дефолтные Логин и Пароль.
login:mydlp pass:mydlp
![](https://habrastorage.org/r/w780q1/storage2/c3e/37d/04b/c3e37d04b0d06719e84905939d8ef750.jpg)
И мы в серверной части.
Чтобы контролировать Почту и Веб трафик, нужно дополнительно настроить сервер шлюзом к вашим proxy и smtp серверам. Я данную функцию не тестировал, но о ней также подробно написано в документации.
Установка Агента.
Берем инсталлятор агента размером 88 Мб mydlp_0_9_104.msi и устанавливаем.
Большой размер инсталлятора объясняется тем, что включает в себя окружения Erlang, Java, cygwin и собственно сами компоненты программы, общий размер каталога агента после установки составит около 200 мб.
В процессе установки, инсталлятор задаст только 1 вопрос, какой адрес у сервера. После этого процесс инсталляции собственно и завершается.
Инсталятор можно распространить и через групповые политики, адрес сервера в этом случае забивают с помощью батничка по пути
[HKEY_LOCAL_MACHINE\SOFTWARE\MyDLP]
«ManagementServer»=«MYDLP_SERVER».
Обзор серверной части системы.
Возвращаемся к серверу.
В системе 7 закладок:Dashboard, Policy, Objects, Options, Logs, Endpoints, Revision.
Из них первая и последняя особого интереса не представляют. Панель часто используемых задач и версия системы.
Остальные более интересны…
+Policy
![](https://habrastorage.org/r/w780q1/storage2/cfe/6f9/c51/cfe6f9c51b335b70c0f04bd973f3856f.jpg)
Здесь у нас формируются правила контроля данных.
Слева источники данных и ключевые объекты контроля. Справа сами правила. Сейчас их три.
+Objects
Здесь можно посмотреть готовые предопределенные типы данных (документы Word,Excel и тд), создать свои.
![](https://habrastorage.org/r/w780q1/storage2/7d9/14d/e60/7d914de600b59de5cd02e9a80d809067.jpg)
+Options
Различные настройки интервала опроса агентов, определение пользователей на доступ к серверной части. Здесь единственное, на чем заострю внимание, это на необходимости поставить галочку Print Monitor, для глобального включения контроля принтеров.
Остальное можно не трогать.
![](https://habrastorage.org/r/w780q1/storage2/48e/b51/ac2/48eb51ac209db52fe776a0bfb77c2d57.jpg)
+Logs
Собственно, то для чего все это затевалось. Лог мониторинга защищаемых данных.
![](https://habrastorage.org/r/w780q1/storage2/d40/2af/5ec/d402af5ecaca11a57bb8480b9de72abb.jpg)
Можно фильтровать по дате, юзеру, правилам, ip и тд.
+Endpoints
Список агентов онлайн и оффлайн.
![](https://habrastorage.org/r/w780q1/storage2/893/411/b8f/893411b8ffeb35fb32c961319d51e8b7.jpg)
Обзор агентской части.
Немаленький агент устанавливается жестко в Program Files в каталог MyDLP. Путь поменять нельзя. Внутри каталога можно видеть компоненты java, erlang и cygwin. Так-же инсталлируются 3 службы и 1 драйвер.
Похоже отслеживается типичный опенсорс подход, 1 компонент – 1 задача. :)
При первом запуске, агент сканирует установленные принтеры, и создает их виртуальные дубли. Ничуть не смущаясь, называя их по следующему принципу — (MyDlp)название_Вашего_принтера. Наивно ставит один из дублей принтером по умолчанию.
Потребляют все компоненты в сумме около 50 мегабайт оперативки, в злостном пожирании процессора замечены не были.
Для контроля принтеров под XP, дополнительно нужно выполнить хитрый батничек (лежит на сайте).
Под семеркой и так все работает.
Настройка серверной части.
Итак, в разделе Policy нажав на кнопку Add Rule, мы можем выбрать из 5 типов контролируемых каналов.
![](https://habrastorage.org/r/w780q1/storage2/045/f1d/0cf/045f1d0cff35acd6c8e3d0c42294906b.jpg)
Web и Почта заработает если, как я писал выше, сервер будет шлюзом для этих каналов.
Endpoint Rule – это контроль съемных устройств и перемещение защищаемых данных на них (данные получаются с агентской части).
Printer Rule –контроль печати (данные получаются с агентской части).
Discovery, перемещение защищаемых данных внутри локальной сети.
Выбрав канал контроля, нужно назвать новое правило уникальным именем и оно появится в общем списке.
На скриншоте выше у меня 2 правила для контроля съемных носителей и одно правило принтеров.
В каждом правиле нужно определить Источник контроля (Source) и тип Данных для контроля (файлы и содержимое).
Источники и Типы данных у нас описаны левой части, просто перетаскиваем их мышкой на наши правила.
Во всех 3 правилах Источник у меня один – вся сеть. Это значит собирать события со всех агентов независимо от их ip адреса.
![](https://habrastorage.org/r/w780q1/storage2/c9e/be9/d10/c9ebe9d106fafd7c6bec44c28068a2c9.jpg)
Тип данных описывает данные для контроля. Можно фильтровать как по типу, так и вставлять регулярные выражения для поиска по содержимому.
![](https://habrastorage.org/r/w780q1/storage2/1b2/343/fa2/1b2343fa230b6b5f93967bb3c2ab1b11.jpg)
И последнее, доступные действия, при срабатывании правила: Pass – пропустить, Block – заблокировать, Log – записать в лог. Функция Archive – создание теневой копии не доступна.
В моем случае 2 последних правила логируют все события без разбора, вывод на печать и копирование на флешку любого файла. Это правила Printer и Remote_drive.
Первое же правило выбрасывает алерт, только если в файле, скопированном на флешку, есть ключевое слово (слова). Это правило Secret_keywords.
Чтобы правила подхватили все агенты, нажимаем на большую кнопку Install Policy в правом верхнем углу.
![](https://habrastorage.org/r/w780q1/storage2/73d/475/933/73d475933f3f51f547ccf13765b2c590.jpg)
Тестирование системы.
Упор сделал на интересующей меня части, а именно контроль принтеров и съемных носителей.
Что можно сказать.
Контроль принтеров смотрится, просто никаким. Обход элементарный. Пользователю достаточно выбрать принтер оригинал, а не дубль, и агент ничего не увидит. Более того, агент не видит новые принтеры, установленные после его запуска.
![](https://habrastorage.org/r/w780q1/storage2/1dd/01e/2fa/1dd01e2fa6169bd679ccbdb03f97a3a4.jpg)
А так все работает, отправляем на виртуальный принтер документ – видим запись в логе.
По съёмным носителям ситуация лучше.
Набиваем ключевые слова в правило Secret_keywords, можно использовать регулярные выражения. В лог начинают сыпаться файлы, в которых эти слова встречаются. Все остальное заливается в лог с пометкой правила Remote_drive.
Русские слова парсятся нормально, цифры и латиница и подавно.
![](https://habrastorage.org/r/w780q1/storage2/3ad/057/3dd/3ad0573dd6507744c5c9defac2aca3f1.jpg)
Соответственно можно сделать группы правил по типу.
Банковские данные, Бухгалтерия, Резюме, Научка и тд, в каждой свои ключевики. Тогда можно видеть, какой примерно тематики ходят файлы по флешкам юзеров.
Итог
Конечно система еще сыровата, вываливаются мелкие косячки. Однако по возникающим вопросам можно обратится к сообществу, а то и самому порыться в исходничках и серверной части. Думаю после доработки напильником, система вполне юзабельна.
ps. Пользуясь случаем, хочу попросить Хабраюзеров поделится практическим опытом использования и внедрения коммерческих DLP решений. На сайте вендоров, как обычно, одна рекламма. Про косяки и трудности никто не расскажет.
По моему скромному опыту. Люди занимающиеся в ИТ безопасностью данных, делятся (помимо прочего) на две большие группы. С хорошим финансированием своей деятельности и не очень. Я имею в виду, прежде всего техническое оснащение и специализированное программное обеспечение.
В контексте контроля слива данных от внутренних нарушителей – инсайдеров, ситуация выглядит примерно следующим образом. Имеются специализированные системы контроля данных, Data Leak Prevention системы. Бизнес хочет защитить данные, но когда видит ценник в несколько миллионов для обеспечения такой защиты, энтузиазм резко гаснет.
Еще больше он гаснет, когда выясняется, что 100% надежного контроля данных система обеспечить не может. Умный пользователь сумеет обмануть систему. Бизнес вопрошает: «За что плотим, то тогда? Давай ка батенька, крутись как хочешь, но чтоб и овцы были целы и волки сыты.»
В результате ИТ безопасник с силовыми корнями, выпускает кучу запретительных бумаг, проникновенно грозит народу кулачищем, мол только попробуйте слить. А безопасник технарь, вчерашний админ, начинает изобретать велосипед с квадратными колесами с целью, хоть как-то контролировать информацию. (А сочетание обоих подходов, вообще хорошо :)
Об одной системе, которую можно встроить в велосипед, речь и пойдет.
Среди открытых решений контроля над данными мне попалось только два.
Это OpenDLP и MyDLP.
Из них MyDLP показалось более зрелым и функционально продвинутым.
MyDLP, открытое программное обеспечение предотвращения (контроля) утечек данных. Существует 2 лицензии использования. Бесплатная Community и платная Enterprise. Принципиальная разница между ними в Архивации передаваемых данных.
Если идет сработка на защищаемый файл, то Community, только вывесит Алерт на событие. Enterprise еще и сохранит копию файла.
Итак, идем на сайт www.mydlp.com и забираем 2 файла.
Серверную часть – ISO образ.
Агентскую часть – msi файл.
Установка серверной части.
Сервер построен на дружелюбной Убунте. Вставляем диск, Некст-Некст-Ребут. Серверная часть готова. Это действительно так :)
Назначаем серверу ip адрес и выпускаем его в интернет (это необходимо для обновлений и проверки лицензии).
В случае затруднений с установкой, инструкция там же на сайте.
www.mydlp.com/documents
Далее открываем любой браузер и заходим на наш сервер.
Видим симпатичное окно.
![](https://habrastorage.org/storage2/a42/f27/9b2/a42f279b2837f451429995bb4e0ccfc2.jpg)
Теперь нам надо перейти по ссылке на secure.mydlp.com и получить Community лицензию.
Там тоже все очевидно.
После регистрации (сервер лезет в интернет, для проверки лицензии!), вводим дефолтные Логин и Пароль.
login:mydlp pass:mydlp
![](https://habrastorage.org/storage2/c3e/37d/04b/c3e37d04b0d06719e84905939d8ef750.jpg)
И мы в серверной части.
Чтобы контролировать Почту и Веб трафик, нужно дополнительно настроить сервер шлюзом к вашим proxy и smtp серверам. Я данную функцию не тестировал, но о ней также подробно написано в документации.
Установка Агента.
Берем инсталлятор агента размером 88 Мб mydlp_0_9_104.msi и устанавливаем.
Большой размер инсталлятора объясняется тем, что включает в себя окружения Erlang, Java, cygwin и собственно сами компоненты программы, общий размер каталога агента после установки составит около 200 мб.
В процессе установки, инсталлятор задаст только 1 вопрос, какой адрес у сервера. После этого процесс инсталляции собственно и завершается.
Инсталятор можно распространить и через групповые политики, адрес сервера в этом случае забивают с помощью батничка по пути
[HKEY_LOCAL_MACHINE\SOFTWARE\MyDLP]
«ManagementServer»=«MYDLP_SERVER».
Обзор серверной части системы.
Возвращаемся к серверу.
В системе 7 закладок:Dashboard, Policy, Objects, Options, Logs, Endpoints, Revision.
Из них первая и последняя особого интереса не представляют. Панель часто используемых задач и версия системы.
Остальные более интересны…
+Policy
![](https://habrastorage.org/storage2/cfe/6f9/c51/cfe6f9c51b335b70c0f04bd973f3856f.jpg)
Здесь у нас формируются правила контроля данных.
Слева источники данных и ключевые объекты контроля. Справа сами правила. Сейчас их три.
+Objects
Здесь можно посмотреть готовые предопределенные типы данных (документы Word,Excel и тд), создать свои.
![](https://habrastorage.org/storage2/7d9/14d/e60/7d914de600b59de5cd02e9a80d809067.jpg)
+Options
Различные настройки интервала опроса агентов, определение пользователей на доступ к серверной части. Здесь единственное, на чем заострю внимание, это на необходимости поставить галочку Print Monitor, для глобального включения контроля принтеров.
Остальное можно не трогать.
![](https://habrastorage.org/storage2/48e/b51/ac2/48eb51ac209db52fe776a0bfb77c2d57.jpg)
+Logs
Собственно, то для чего все это затевалось. Лог мониторинга защищаемых данных.
![](https://habrastorage.org/storage2/d40/2af/5ec/d402af5ecaca11a57bb8480b9de72abb.jpg)
Можно фильтровать по дате, юзеру, правилам, ip и тд.
+Endpoints
Список агентов онлайн и оффлайн.
![](https://habrastorage.org/storage2/893/411/b8f/893411b8ffeb35fb32c961319d51e8b7.jpg)
Обзор агентской части.
Немаленький агент устанавливается жестко в Program Files в каталог MyDLP. Путь поменять нельзя. Внутри каталога можно видеть компоненты java, erlang и cygwin. Так-же инсталлируются 3 службы и 1 драйвер.
Похоже отслеживается типичный опенсорс подход, 1 компонент – 1 задача. :)
При первом запуске, агент сканирует установленные принтеры, и создает их виртуальные дубли. Ничуть не смущаясь, называя их по следующему принципу — (MyDlp)название_Вашего_принтера. Наивно ставит один из дублей принтером по умолчанию.
Потребляют все компоненты в сумме около 50 мегабайт оперативки, в злостном пожирании процессора замечены не были.
Для контроля принтеров под XP, дополнительно нужно выполнить хитрый батничек (лежит на сайте).
Под семеркой и так все работает.
Настройка серверной части.
Итак, в разделе Policy нажав на кнопку Add Rule, мы можем выбрать из 5 типов контролируемых каналов.
![](https://habrastorage.org/storage2/045/f1d/0cf/045f1d0cff35acd6c8e3d0c42294906b.jpg)
Web и Почта заработает если, как я писал выше, сервер будет шлюзом для этих каналов.
Endpoint Rule – это контроль съемных устройств и перемещение защищаемых данных на них (данные получаются с агентской части).
Printer Rule –контроль печати (данные получаются с агентской части).
Discovery, перемещение защищаемых данных внутри локальной сети.
Выбрав канал контроля, нужно назвать новое правило уникальным именем и оно появится в общем списке.
На скриншоте выше у меня 2 правила для контроля съемных носителей и одно правило принтеров.
В каждом правиле нужно определить Источник контроля (Source) и тип Данных для контроля (файлы и содержимое).
Источники и Типы данных у нас описаны левой части, просто перетаскиваем их мышкой на наши правила.
Во всех 3 правилах Источник у меня один – вся сеть. Это значит собирать события со всех агентов независимо от их ip адреса.
![](https://habrastorage.org/storage2/c9e/be9/d10/c9ebe9d106fafd7c6bec44c28068a2c9.jpg)
Тип данных описывает данные для контроля. Можно фильтровать как по типу, так и вставлять регулярные выражения для поиска по содержимому.
![](https://habrastorage.org/storage2/1b2/343/fa2/1b2343fa230b6b5f93967bb3c2ab1b11.jpg)
И последнее, доступные действия, при срабатывании правила: Pass – пропустить, Block – заблокировать, Log – записать в лог. Функция Archive – создание теневой копии не доступна.
В моем случае 2 последних правила логируют все события без разбора, вывод на печать и копирование на флешку любого файла. Это правила Printer и Remote_drive.
Первое же правило выбрасывает алерт, только если в файле, скопированном на флешку, есть ключевое слово (слова). Это правило Secret_keywords.
Чтобы правила подхватили все агенты, нажимаем на большую кнопку Install Policy в правом верхнем углу.
![](https://habrastorage.org/storage2/73d/475/933/73d475933f3f51f547ccf13765b2c590.jpg)
Тестирование системы.
Упор сделал на интересующей меня части, а именно контроль принтеров и съемных носителей.
Что можно сказать.
Контроль принтеров смотрится, просто никаким. Обход элементарный. Пользователю достаточно выбрать принтер оригинал, а не дубль, и агент ничего не увидит. Более того, агент не видит новые принтеры, установленные после его запуска.
![](https://habrastorage.org/storage2/1dd/01e/2fa/1dd01e2fa6169bd679ccbdb03f97a3a4.jpg)
А так все работает, отправляем на виртуальный принтер документ – видим запись в логе.
По съёмным носителям ситуация лучше.
Набиваем ключевые слова в правило Secret_keywords, можно использовать регулярные выражения. В лог начинают сыпаться файлы, в которых эти слова встречаются. Все остальное заливается в лог с пометкой правила Remote_drive.
Русские слова парсятся нормально, цифры и латиница и подавно.
![](https://habrastorage.org/storage2/3ad/057/3dd/3ad0573dd6507744c5c9defac2aca3f1.jpg)
Соответственно можно сделать группы правил по типу.
Банковские данные, Бухгалтерия, Резюме, Научка и тд, в каждой свои ключевики. Тогда можно видеть, какой примерно тематики ходят файлы по флешкам юзеров.
Итог
Конечно система еще сыровата, вываливаются мелкие косячки. Однако по возникающим вопросам можно обратится к сообществу, а то и самому порыться в исходничках и серверной части. Думаю после доработки напильником, система вполне юзабельна.
ps. Пользуясь случаем, хочу попросить Хабраюзеров поделится практическим опытом использования и внедрения коммерческих DLP решений. На сайте вендоров, как обычно, одна рекламма. Про косяки и трудности никто не расскажет.