По некоторым исследованиям, на рабочих станциях операционные системы семейства Windows значительно опережают GNU/Linux. Но имеется и другая статистика (данные 2015 года), которая показывает, что из-за фактического провала Windows 8 операционные системы семейства GNU/Linux всё шире распространяются как базовая платформа для организации рабочих станций. Немаловажным фактором, действующим в пользу GNU/Linux, служит и то, что такая ОС может быть бесплатной (распространяется по лицензии GNU GPL), в отличие от исключительно проприетарных систем семейства Windows.
- Введение
- Возможности агента StaffCop Enterprise для GNU/Linux
- Отличия GNU/Linux-агента от агента для Windows
- Выводы
Введение
В РФ поставлена задача импортозамещения — замены иностранного оборудования и программного обеспечения отечественным. Российского аналога операционной системы Microsoft Windows не существует. Значит, в качестве импортозамещающего программного продукта может быть рассмотрено только ПО на базе GNU/Linux.
Отсюда возникает несколько проблем. Например, появляется необходимость контролировать активность пользователей на рабочих станциях, что является частью комплекса информационной безопасности. Агенты под Windows-платформу существуют у всех поставщиков ПО для контроля работы пользователей. Но агенты, собирающие информацию с рабочих станций под управлением операционных систем семейства GNU/Linux, доступны далеко не в каждом случае. В составе программного комплекса для контроля работы пользователей с элементами DLP-систем StaffCop Enterprise (актуальной версией продукта является 4.6) такой агент есть.
По своему «устройству» операционные системы семейства GNU/Linux сильно отличаются от ОС Windows, поэтому прямой перенос технологий и принципов сбора информации о действиях пользователя и функционировании рабочей станции невозможен. Как и у всех аналогичных программных комплексов, агент StaffCop Enterprise для GNU/Linux начал разрабатываться позже и поэтому немного отстаёт в своих возможностях от агента для Windows. Развитие GNU/Linux-агента идёт параллельно с развитием сервера: текущей версией является 0.6-master, соответствующая версии 4.6 серверного компонента. Некоторые возможности агенту для GNU/Linux пока недоступны — например, глобальный перехват сетевого трафика или анализ его по портам, а также вся функциональность, которая с этим сопряжена. Следует учитывать, что агент для GNU/Linux развивается весьма динамично, поэтому скоро он «догонит» версию для Windows и будет полностью повторять её возможности.
В настоящее время агент для GNU/Linux протестирован для следующих ОС: CentOS, Ubuntu Desktop, Debian, Gentoo Linux, Astra Linux, Arch Linux, Rosa Linux. С операционной системой Astra Linux достигнута полная интеграция: поддерживается проверенная цифровая подпись исполняемых файлов агента StaffCop Enterprise для работы в замкнутой среде.
Управление работой агента для GNU/Linux осуществляется так же, как и настройка Windows-версии — через конфигурацию в веб-интерфейсе. Дополнительно имеется возможность передачи команд агенту через окно терминала GNU/Linux, но только в том случае, если пользователь способен получить права пользователя root. Доступны следующие команды:
- bash agent-install.sh <IP-адрес сервера> <порт сервера>. Эта команда выполняет запуск скрипта, устанавливающего агент для GNU/Linux на рабочую станцию. В командной строке указывается адрес сервера.
- /usr/share/staff/agent config. Данная команда позволит получить конфигурацию, с которой работает агент. Это может быть полезным для решения проблем, возникающих при работе последнего, а также проверить, какую информацию он собирает. Естественно, для того чтобы сохранить информацию о конфигурации в файл для дальнейшего анализа, нужно воспользоваться стандартными средствами перенаправления потока вывода, которые используются в ОС GNU/Linux (символы «>» и «>>»).
- /usr/share/staff/agent zip. Эта команда формирует ZIP-архив с журналами работы агента. Не имея этого архива, невозможно решать возникающие проблемы.
- bash agent-install.sh uninstall. Такая команда является самой «опасной» для агента: она запускает скрипт, выполняющий его полное удаление с рабочей станции GNU/Linux. В частности, это показывает опасность предоставления пользователю прав суперпользователя (root) без особой необходимости.
Возможности агента StaffCop Enterprise для GNU/Linux
Как говорилось выше, агент для GNU/Linux имеет меньше возможностей, чем версия для Windows. В настоящее время в веб-интерфейсе не указано, поддерживается ли параметр либо опция конфигурации агентом для GNU/Linux: если использовать функцию, которая в текущей версии не работает, то агент просто не выполнит задание, при этом никакой ошибки ни в веб-интерфейсе, ни в агенте не возникает. Перечислим функции, которые агент GNU/Linux не поддерживает (обобщённо говоря, недоступно всё, что связано с сетевой активностью и зависит от неё):
- Мониторинг и блокировка запуска приложений. В настоящее время агент для GNU/Linux не поддерживает ни то, ни другое. Пользователь может запускать любые приложения — информация о запущенной программе появится на сервере только тогда, когда окно приложения будет открыто и пользователь начнёт с ним работать.
- Перехват содержимого электронной почты и переписки в интернет-мессенджерах — Skype, Telegram и т.д. Единственный способ читать такую переписку — делать скриншоты; в этом случае большинство сообщений будет перехватываться, но не как текст, а как изображение. После формирования пакета скриншотов можно запустить распознавание с помощью OCR-системы, входящей в состав серверной части StaffCop Enterprise.
- Запись звука, проигрываемого через колонки. К сожалению, в настоящее время никаких способов «обойти» эту неработающую функцию нет. Возможно, она появится в ближайших версиях агента.
- Инвентаризация (сбор информации об установленном оборудовании и установленном программном обеспечении). Полная инвентаризация рабочей станции под управлением ОС GNU/Linux появится в ближайших версиях агента. Пока что обойти эту функцию можно воспользовавшись стандартными командами ОС GNU/Linux для получения списка оборудования. В частности, для Ubuntu 16.04 это — команды lshw (для получения списка установленного оборудования) и dpkg -l (для получения списка установленных пакетов).
- Определение отсутствия сотрудника на рабочем месте и запрос причины. Эта функциональность также планируется в ближайших версиях агента.
- Контроль беспроводных сетей. В настоящее время такая возможность недоступна, но ожидается, что она скоро появится.
Полный список функций агента для рабочих станций, работающих под управлением ОС семейства GNU/Linux, можно найти в официальной документации. Рассмотрим отличия GNU/Linux-агента от агента для Windows, которые являются существенными.
Отличия GNU/Linux-агента от агента для Windows
Поскольку операционная система GNU/Linux предусматривает удалённое подключение к ней с помощью приложений, поддерживающих протокол SSH — например, приложения PuTTY, — GNU/Linux-агент при соответствующих настройках (мониторинге журнала аутентификации /var/log/authlog) может контролировать подключения пользователей. Успешные сеансы связи будут отображаться как события, если активирован контроль входа в систему. Невозможно распознать, подключается ли пользователь извне по SSH, или работает за консолью: события будут создаваться агентом от имени одного и того же пользователя, с одними и теми же свойствами. Поэтому, если стоит задача определить, каким образом было выполнено то или иное действие — через удалённое подключение или с консоли, — следует использовать различные идентификаторы пользователей для этих двух сценариев.
Внешне практически все системы на базе GNU/Linux отличаются друг от друга, так как имеют различные среды рабочих столов (KDE, Unity, Cinnamon, MATE и т.д.). Не имеет значения, какую среду рабочего стола применяет пользователь: главное, чтобы она работала под управлением X Window System (X11). Агент для GNU/Linux будет корректно собирать информацию в любой из таких сред.
При инсталляции ОС семейства GNU/Linux «из коробки» по умолчанию устанавливаются браузеры, которые изначально входят в состав дистрибутива (обычно — широко распространённый обозреватель Mozilla Firefox). Дополнительно можно установить Google Chrome, Opera или «Яндекс.Браузер» — то, к чему привык пользователь. Агент для GNU/Linux будет верно обрабатывать информацию о том, на какие сайты заходит пользователь, и передавать её на сервер в виде событий. Возможна также блокировка сайтов: если пользователь захочет посетить ресурс, который в конфигурации агента добавлен в список блокировки, то соответствующая попытка будет неудачной.
Очень часто представители семейства GNU/Linux используются в качестве серверных операционных систем. Там какие-либо среды рабочего стола отсутствуют в принципе — есть только режим командной строки (при этом возможны как удалённое подключение, так и работа непосредственно с консолью). Взаимодействуют с такими серверами, занимаясь их настройкой и обслуживанием, высококвалифицированные системные администраторы. Тем не менее их работу тоже надо контролировать, и GNU/Linux-агент способен помочь. Все сенсоры GNU/Linux-агента, за исключением оконных, доступны в режиме командной строки. В этом случае используется альтернативный кейлогер, работающий на уровне ядра GNU/Linux: он не нуждается в X Window System, хотя не учитывает при этом регистры клавиш (вроде Caps Lock или Num Lock), а также переключения языков. Нажатия передаются строго в формате QWERTY, при этом их «пропажа» невозможна в принципе.
Большое значение имеет контроль печати документов. Часто утечка информации происходит именно через несанкционированную распечатку конфиденциальных материалов. GNU/Linux-агент поддерживает (т.е. идентифицирует событие печати и сохраняет файл печатаемого документа, если это определено параметром конфигурации) все четыре основных сценария печати в гетерогенной инфраструктуре — при условии, что эти сценарии реализовываются через CUPS (Common UNIX Printing System, общая система печати UNIX):
- печать на принтере, подключённом к USB-порту рабочей станции;
- печать с помощью принт-сервера на основе технологии CUPS;
- печать на принт-сервере, установленном на компьютере с ОС семейства Windows (как Windows Workstation, так и Windows Server);
- direct print (т.н. «прямая печать») — передача данных напрямую по IP-адресу печатающего устройства.
Если печать реализовывается не через CUPS (такие способы существуют), то событие печати распознано не будет, и перехватить печатаемый документ не получится.
В доменных структурах, создаваемых на платформах Windows, есть средства массированного развёртывания программного обеспечения: как с помощью стандартных средств (групповых политик), так и с помощью специализированного программного обеспечения (средства Microsoft System Center или, например, Kaspersky Server). В средах на платформах ОС GNU/Linux также имеется такая возможность. К числу наиболее распространённых методов относится развёртывание с помощью пакета ansible.
Выводы
Таковы основные возможности агента StaffCop Enterprise для операционной системы GNU/Linux. Очевидно, что существуют широкие возможности для развития его функциональности. В настоящее время ведутся работы по улучшению контроля терминальных сессий. Ожидается, что в ближайшем выпуске StaffCop Enterprise появится возможность записывать работу в терминальной сессии или консоли в виде виртуального GIF-видео. Это позволит осуществить давнюю мечту сотрудников служб информационной безопасности — поставить под тотальный контроль работу системных администраторов. В этом случае утаить какие-либо действия по настройке (или перенастройке) серверов не удастся.