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

 

Эволюция средств наблюдения

Если в девяностых ты уже работал в крупной компании, то, возможно, тоже припоминаешь тогдашний офис скорее как подобие тюрьмы, чем место для креатива в приятных условиях. Все рабочие места хорошо просматриваются. Между столами то и дело ходят начальники-надсмотрщики, а главный босс и его заместитель пытаются следить за всеми сразу. Они регулярно требуют отчеты о проделанной работе, на написание которых тратится уйма времени.

Сегодня такая модель организации труда уже плохо работает. Многие выполняют свои функции удаленно и редко появляются в офисе. Основные сотрудники если и работают в нем, то в небольших кабинетах и, порой, на разных этажах. Чем они там занимаются помимо своих обязанностей? Сколько оплачиваемого времени тратят впустую? Как за всеми уследить?

Любой директор фирмы задает себе эти вопросы, а вот какими будут ответы – зависит от квалификации админа. Одно дело повесить камеры в каждый угол и вести гигабайты логов для проформы, а другое – объективно оценивать эффективность сотрудников, быстро выявлять нарушения и вовремя их пресекать ценой разумных затрат. Для этого нужна какая-то продвинутая система регистрации и анализа событий на удаленных компьютерах.

 

Тайм-трекеры и их продвинутые аналоги

Софт для учета рабочего времени пишут давно, и он очень востребован. Обычно это тайм-трекеры с какими-то дополнительными функциями, вроде снятия скриншотов, генерации отчетов и их отправкой на почту. Наверняка ты слышал про BigTime, EmploTime, DeskTime, TMetric, Hubstaff, WorkPoint или подобные программы. Они больше пригодны для подведения итогов работы за какой-то период, чем для оперативного контроля.

Согласись, было бы здорово заодно организовать видеонаблюдение всех действий за компьютерами, но только не с внешних камер, а прямо с видеокарт. Конечно, тоже интеллектуальное – с хорошим сжатием, QoS и автоматической распознавалкой типичных нарушений. Иначе у админа вытекут глаза от обилия окон, а постоянная трансляция удаленных десктопов положит сеть, словно DDoS-атака.

Естественно, у админа должна быть возможность быстро вмешаться, не вставая с кресла. Что толку пассивно наблюдать, как твой сотрудник сливает корпоративные секреты конкурентам, или проворачивает мошенническую схему? Пока его нейтрализует служба безопасности, данные утекут, а фирме будет нанесен ущерб.

 

Доверяем, но проверяем

В эпоху развития нейросетей и облачных технологий, уже появляются сервисы, которые решают все вышеперечисленные задачи. Одним из них стал программный комплекс Kickidler от сингапурской компании Tele Link Soft (TLS).

Впервые в России он был представлен компанией «АйТи Сервис Менеджмент» на выставке InfoSecurity Russia 2015. С тех пор Kickidler сильно изменился в лучшую сторону – стал полностью локализованным, обзавелся русскоязычной техподдержкой, расширил функциональность, стал работать в Windows 10, MAC OS 10.xx и Linux с пакетными менеджерами Deb или RPM.

Мы протестировали Kickidler v.1.52, попытались обмануть его и обнаружить компонент скрытого мониторинга разными способами. Результатами спешим поделиться ниже – они довольно любопытные.

 

Экспресс через AD

У нас в «Хакере» все не как у людей, поэтому мы потратили кучу времени только на то, чтобы компоненты Kickidler увидели друг друга. Намучались с настройками роутера и пробросом портов за NAT, а в итоге проблема оказалась не в этом, и все заработало без сетевого шаманства. Впрочем, не будем спойлерить этот ценный опыт. Начнем по порядку.

В отличие от известных мне аналогов, программный комплекс Kickidler состоит из трех компонентов: сервера, вьювера (просмотрщика) и граббера (агента телеметрии). Первые два могут работать в одной системе, а граббер всегда ставится на компьютеры сотрудников, за которыми нужно наблюдать. Кстати, ничто не мешает следить и за самим админом, поскольку и серверов, и вьюверов может быть несколько в одной сети. Такая вот рекурсия.

Добавляем серверы и вьюверы
Добавляем серверы и вьюверы

Можно даже организовать перекрестный контроль, одновременно установив на несколько компьютеров и вьювер и граббер. Настройки видимости других сотрудников в каждом вьювере задаются индивидуально. Так снимается извечный вопрос: «Кто будет сторожить сторожей?» и повышается взаимное доверие.

Добавляем сотрудников и целые отделы
Добавляем сотрудников и целые отделы

Если у тебя стандартные рабочие места с полуголой ОС и парой программ, все компы в одной сети и видят друг друга, то никаких проблем с установкой Kickidler возникнуть не должно. Просто рекомендуется выполнять ее в следующей последовательности: сервер, граббер и вьювер.

После регистрации на портале my.Kickidler.com на указанный адрес почты придет персональный ключ активации, который нужно использовать в течение 30 дней. Программу можно бесплатно протестировать на любом количестве компьютеров и без каких-либо ограничений в течение одной недели. Причем срок начинает исчисляться только после установки всех трех компонентов.

Отслеживается этот факт очень просто – все они при запуске устанавливают соединение с Kickidler.com для проверки лицензии и рапортуют о своем состоянии. Если такая схема работы неприемлема, то можно связаться с техподдержкой и запросить локальный сервер лицензирования. По сути, это образ виртуальной машины со вшитой лицензией.

Личный кабинет my.kickidler.com
Личный кабинет my.kickidler.com

Первые грабли нас поджидали при установке сервера Kickidler. Мастер установки (в случае Windows это node.msi) аварийно завершал работу на этапе онлайн-регистрации и ругался на ошибку подключения, хотя коннект был стабильный. Проверяли локальные и внешние файрволлы, смотрели логи антивируса, заходили на my.kickidler.com из браузера – везде все окей, а сервер все равно не ставится.

Уже позже на трезвую голову вспомнили про давно установленный и скрытый AdGuard v.6.4. На всякий случай удалили его. Бинго! Оказалось, что Kickidler просто конфликтует со службой AdGuard, и это из-за нее было невозможно выполнить проверку регистрационного ключа KickidlerNode. При этом никаких сообщений о блокировке подключения не выдавалось. Мы передали тикет в саппорт и получили ответ, что скоро программный конфликт устранят. Пока что просто снесли AdGuard.

Следующие грабли нас поджидали на другом тестовом компе, куда мы установили Kickidler grabber как сервис. Когда я уже почти отчаялся наладить его взаимодействие c сервером и вьювером, обнаружился новый конфликт. Выяснилось, что если граббер был установлен в скрытом режиме, то он конфликтует с драйвером расширенного мониторинга AVZPM. Пока не выгрузишь этот драйвер, вьювер будет показывать ошибку соединения с граббером.

Думаешь, на этом забег по садовому инструментарию закончился? Ох, если бы! Как и любой сервер, Kickidler node настраивается через браузер, и для этого лучше использовать свежую версию Chrome или Firefox, поскольку в IE отсутствует необходимая поддержка JS. Пока не поставишь современный браузер, вместо элементов меню настройки сервера будут отображаться куски кода.

IE некорректно отображает веб-интерфейс
IE некорректно отображает веб-интерфейс

В общем, чтобы не пришлось героически преодолевать самостоятельно созданные трудности, перед установкой Kickidler поставь современный браузер и попробуй заранее исключить программные конфликты.

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

 

Око Саурона

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

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

Специально для таких ранимых натур с тонкой душевной организацией в Kickidler предусмотрен режим скрытой работы.

Настройка автозапуска Kickidler в скрытом режиме
Настройка автозапуска Kickidler в скрытом режиме

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

Например, маскировку процесса grabber.exe выявляет AVZ с запущенным AVZPM. Также его видно в диспетчере служб и драйверов.

Скрытый процесс граббера и его зависимости в AVZ
Скрытый процесс граббера и его зависимости в AVZ

Иногда явный режим работы оказывается предпочтительнее. С ним появляется компромиссный вариант: пользователь может сам отключить граббер и заниматься личными делами (понимая, что это время не будет оплачиваться как рабочее). В это время вьювер показывает «нет сессии» и пишет, с какого времени наблюдение не ведется.

Временное прекращение наблюдения
Временное прекращение наблюдения
 

Как поймать с поличным

С развитием технических средств конкурентная разведка становится все проще, а отлов инсайдеров – все сложнее. Kickidler помогает обнаружить «засланных казачков» и просто нечистых на руку сотрудников.

Если человек давно работает в организации, то обычно он обладает большим кредитом доверия и расширенными правами доступа. За ним и не следят особо. Представим, что в какой-то момент ему надоело быть подчиненным, и он решает открыть свою фирму аналогичного направления. Недолго думая изменник открывает CRM и копирует из нее все контакты. Зачем годами создавать клиентскую базу, если можно экспортировать готовую?

Сотрудник крадет данные из CRM
Сотрудник крадет данные из CRM

В большинстве случаев процедура занимает меньше минуты и остается незамеченной. Пользователь вошел в CRM? Он и так в нее каждый день логинится. В таких случаях Kickidler поможет быстро обнаружить утечку данных. Его логи отображаются с наглядной фильтрацией по типам активности и с возможностью визуализации всех действий. Можно создавать свои правила и назначать им любую цветовую кодировку.

Активность сотрудника и нарушения за последний час
Активность сотрудника и нарушения за последний час

На графике четко видно, что в 11:47 и в 11:52 дважды произошла выгрузка данных, причем вторая совпала по времени с активностью в мессенджере. Можно не проматывать весь день, а прицельно посмотреть видеозапись за этот период. Так мы сможем определить, успел ли он передать контакты кому-то, или просто сохранил их себе на флешку.

Если админ в это время наблюдал за процессом, то он мог сразу вмешаться и удаленно отключить через Kickidler устройства ввода (мышь, клавиатуру, или все сразу) на компьютере воришки. Ну а если не успел, детальные логи и видеозаписи станут надежным доказательством в суде.

 

Контроль во благо

Может сложиться впечатление, что Kickidler – это такой продвинутый бэкдор, который контролирует каждый вздох и пишет всю активность, словно на камеру. Однако в умелых руках он облегчает работу самим сотрудникам и превращается в мощный инструмент удаленного взаимодействия.

К примеру, функция «Учет рабочего времени» избавляет от необходимости вручную заполнять отчеты и сверять табели. Это ведь не только борьба с бездельниками, но и объективный учет трудовых подвигов. Для начисления почасовой зарплаты эта фича и вовсе незаменима.

Другой вариант: дистанционное обучение с обратной связью. Обычный вебинар дает запоздалый фидбэк, а с Kickidler лектор чувствует аудиторию. Он сразу видит, как студенты воспринимают его речь, выполняют задания, и с чем именно у них возникают сложности.

Также в Kickidler встроена функция удаленного доступа. Его можно использовать вместо Ammyy admin, TeamViewer и прочих RAT. Зачем ставить лишние программы, когда все функции есть в одной?

Только представь: ты стараешься, ведешь занятие, а какой-то лентяй зовет всех рубиться в онлайн-игрушки. Идти за розгами далеко и непедагогично. Гораздо эффективнее перехватить управление его компом и отключить ему клавиатуру или мышь.

Попробуй поиграть без мышки
Попробуй поиграть без мышки

Честно говоря, другой легитимной программы с такими функциями я пока не видел. Максимум аналоги Kickidler умеют выводить на удаленный десктоп картину Малевича «Черный квадрат», в то время как отрубить периферию – куда более действенный способ.

 

Каждому по заслугам

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

С Kickidler такой трюк не пройдет. Вся деятельность в нем сортируется на продуктивную, нейтральную и непродуктивную по заранее заданным правилам (к ним можно и нужно добавлять свои). Он фиксирует чистое время, потраченное именно на работу, причем обмануть его сложно. Отслеживается не просто запуск программ, а пользовательская активность в них. Если ее нет в течение минуты (такой интервал задан по умолчанию), начинается отсчет времени простоя.

Оценка эффективности
Оценка эффективности

Как можно видеть на скриншоте, сотрудник в ночную смену откровенно мается от безделья. Смотрит порнушку, играет, а заодно подыскивает себе новую работу. В это время у админа раздаются алерты, которые он также увидит в истории и видеозаписи.

Автоматическое распознавание нарушений на примере поиска вакансий
Автоматическое распознавание нарушений на примере поиска вакансий
 

Обнаружить, уничтожить

В ходе тестирования мы выяснили, что в скрытом режиме KickIdler grabber устанавливается как служба ngs с размещением по умолчанию: %PROGRAMFILES%\TeleLinkSoftHelper\bin\grabber.exe. Эта служба прописывается на автозапуск в ветке HKLM\System\CurrentControlSet\Services.

Можно установить граббер по нестандартному пути или даже попросить разработчиков переименовать файлы для лучшего сокрытия (они предлагают такую услугу). Скрипт-кидди на этом отсеются и не смогут найти агент Kickidler. Более продвинутым команда tasklist /SVC и оснастка services.msc покажет все как есть в любом случае.

Скрытая установка граббера
Скрытая установка граббера

После автостарта ngs запускает основной процесс grabber.exe и два дочерних процесса: grabberAgent.exe и grabberSubAgent.exe.

Скрытые процессы Kickidler grabber
Скрытые процессы Kickidler grabber

Интересно, что выгрузить эти процессы невозможно даже с правами админа.

Защита граббера от завершения процесса
Защита граббера от завершения процесса

Их можно прибить с правами системы (и высокой вероятностью последующего сваливания в BSoD), но зачем? Простому пользователю никак не уйти от недремлющего ока, а с правами админа служба ngs останавливается через services.msc и сама выгружает дочерние процессы.

Остановка службы граббера
Остановка службы граббера

При этом в KickIdler Viewer отображается «Нет соединения» и засчитывается время бездействия. Более того, попытка получить повышенные привилегии и уйти в партизаны будет зафиксирована в логах, которые хранятся на сервере.

Кулхацкер засветился
Кулхацкер засветился

При выполнении оффлайн-атаки все самоочевидно: загружаем свою операционку, в ней открываем реестр целевой системы и убираем автозапуск службы ngs, либо подменяем его на что угодно. В логах KickIdler Viewer в этом случае ничего не отображается. Он просто считает, что нет соединения, но тебе все время до восстановления связи будет учитываться как неактивное.

 

Имитация бурной деятельности

Более простые программы можно обмануть, банально прижав пробел чем-нибудь тяжелым. Ушел гулять, а глупая софтина считает, что ты усердно набираешь тексты. В Kickidler такой трюк не прокатит сразу по двум причинам: из-за ведения подробного лога нажатия клавиш и визуального контроля. Админ вряд ли расценит заполнение пробелами энного пустого листа как продуктивную деятельность, хотя по формальным признакам она и будет такой.

Можно ли обойти такой контроль? Отдельные компоненты Kickidler – да, но целиком систему – практически невозможно. Давай разберем варианты подробнее.

Первое, что приходит на ум – написать скрипт или батник для ИБД. Пусть он открывает окна разных приложений, отправляет рандомные нажатия клавиш и дергает курсор мыши, чтобы не засчитывалось время простоя. Чтобы админ не увидел наш эмулятор, скроем окно консоли. Победа? Разве что на короткое время. Такие поделки будет видно в списке запущенных программ, да и кейлоггер покажет случайный характер нажатий.

История нажатия клавиш
История нажатия клавиш

Пойдем дальше и напишем имитатор как полноценный экзешник. Чтобы Kickidler счел его полезной активностью, назовем winword.exe. Изменим также заголовок окна, поскольку вьювер отображает его в окне мониторинга. Как вариант – просто напиши название текущего документа и Microsoft Word через тире.

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

Поддельный экзешник дает зеленый свет
Поддельный экзешник дает зеленый свет

Однако видеонаблюдение и кейлоггер показывают, что это вовсе не Word (видно, откуда был скопирован и как переименован экзешник), а вся пользовательская активность сводится к нажатию кнопки «А». Не похоже на работу, верно?

Перейдем на аппаратный уровень и сделаем Evil HID на Arduino. Фишка в том, что он вставляется в USB и прикидывается клавиатурой, отправляя заранее записанные команды. Эдакий аппаратный имитатор бурной деятельности, который не будет видно в списке программ. Да и в скетче Arduino можно записать осмысленные телодвижения, даже набор целых фрагментов текста, а не просто «ааа». Все действия выглядят так, словно ты сам сидишь за клавой и пашешь за троих.

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

Думаю, наказывать за такую фальсификацию не стоит. Если сотрудник смог реализовать программу убедительной ИБД в самодельном HID, то разумный начальник просто переведет его в ИТ-отдел и поручит помогать с написанием правил для Kickidler. Чтобы поймать изощренных бездельников, нужно думать как они.

 

Выводы

За последние годы офисная культура изменилась и стала более либеральной, но задачи руководства остались неизменными. Как и прежде, нужно постоянно отслеживать активность сотрудников, включая действия самих контролеров. Разница лишь в том, что теперь это можно делать менее навязчиво и более результативно за счет комплексных средств уровня Kickidler.

На мой взгляд, в нем наиболее интересны три функции: видеозапись с трансляцией рабочего стола, автоматическое распознавание непродуктивных действий и удаленный перехват управления.

Программа быстро развивается, и обрастает новыми функциями. Лично мне бы хотелось видеть идентификацию приложений по контрольным суммам, полным путям и сертификатам (а не только по имени файла).

Check Also

Как подчинить конфиг. Учимся эксплуатировать новую уязвимость в PHP-FPM и Nginx

Недавно мои коллеги обнаружили опасную уязвимость в связке из Nginx и PHP-FPM, которая нер…

8 комментариев

  1. Аватар

    superspamer

    14.12.2018 at 07:12

    Нафиг работать в таких навозных гонторах где это используют. Выгораешь очень быстро. Кодить каждый день без перервыва по 8 часов, вы серьёзно? Если читаешь доку, man, rfc, код пытался понять что там происходит, то всё, не работал, т.к. не печатал. Также могут скомуниздить инфу которая попала в скриншоты, может попасть какое-нибудь всплывающие окно с паролями и т.п.

    • Аватар

      fidemdisp

      14.12.2018 at 09:53

      Взгляд под другим углом: все пароли, используемые на работе, относятся к рабочим вопросам, ничего личного. Вопрос их утечки — это вопрос доверия и контроля к сотрудникам, администрирующим данную систему.
      В статье написано, что время неактивности начинается с минуты бездействия, при чтении обычно скролят страницы. Кратковременные периоды неактивности поочередно с активностью можно проанализировать и настроить параметры простоя в логгере.
      Очевиднейшим использованим такого рода софта является, как и было написано в статье, контроль за работой низшего звена работников. Можно добавить что это также справедливо к удаленщикам. А вот зачем следить за продуктивными сотрудниками — это другой вопрос? Да и опять же, если такая система стоит скрытно и вы реально добросовестный сотрудник, вам никто слова не скажет за то что вы иногда чатитесь или смотрите видосики с котиками.

      • Аватар

        poddex

        18.12.2018 at 08:31

        «вам никто слова не скажет за то что вы иногда чатитесь или смотрите видосики с котиками.» — как раз скажут, а потом догонят и еще раз скажут, что «ты должен работать больше».
        У нормального руководства есть только один критерий — выполненное вовремя дело, а для этого руководство должно распределить ответственность (на то оно и руководство). И потом спрашивать согласно ответственности. Не выполнено дело — да какая разница, из-за чего оно не выполнено, из-за порнушки на рабочем месте или из-за кофераспивания.
        А это око «большого брата» — больше для идиотов, которым нечем заняться в качестве руководителя. Все эти фантазии о контроле рабочего времени происходят исключительно он некомпетентности управленцев.

  2. Аватар

    SlavikDV

    17.12.2018 at 13:27

    Все системы наблюдения (надзора) это «палка о двух концах».
    Я, обычный водитель, смог отбится не только от спорных моментов, но и явных подстав.

  3. Аватар

    poddex

    18.12.2018 at 08:21

    Базу клиентов можно просто на телефон с экрана сфоткать, и никто никогда не узнает. Про «слить базу клиентов на имэйл» лучше не писать, вокруг же не дети.

  4. Аватар

    elyn

    18.12.2018 at 12:39

    Отличный обзор, спасибо. Единственная поправка: TMetric https://tmetric.com/ не является средством слежения. В этом тайм трекере нет функции скриншотов экрана. Главная цель применения TMetric — точный подсчет рабочего времени, включая время, которое вы тратите на коммуникацию, работу в почте, создание документов, учет любой рабочей активности онлайн. Это очень удобно для организации удаленной работы, да и работы в офисе, так как тайм трекер позволяет гибкий график.

  5. Аватар

    Radoneer

    10.04.2019 at 19:19

    Ну не знаю. Попробовал — не зашло. По мне так для слежки лучше ставить прогу JETLOGGER, она делает всё то же самое, но сама по себе как-то проще и интуитивнее. ИМХО

    • Аватар

      lelepaul

      12.04.2019 at 17:19

      Рекламщика в тебе вижу я.
      Это то же самое, что сказать, мне КАМАЗ не зашел, лучше ездить на самокате. Он то же самое, но интуитивнее.

Оставить мнение