Статья: Роль вредоносных программ в промышленном шпионаже
ЗАЩИТА И ПРЕДОТВРАЩЕНИЕ
В силу специфики проблемы никакие программно-технические средства не гарантируют защиту от данной угрозы. Существенно усложнить задачу злоумышленника способны классические, грамотно спланированные меры обеспечения ИБ: защита внешнего периметра, шифрование информации, продуманные внутренние политики и плановые внешние тесты безопасности. Чрезвычайно важна осведомленность сотрудников в вопросах безопасности, так как наиболее эффективным и плохо поддающимся контролю вектором внедрения вредоносного кода является социотехнический вектор.
СЕГОДНЯ вредоносные программы – троянцы, вирусы, бэкдоры и шпионы – постоянная тема новостных колонок, посвященных информационной безопасности. Они представляются чем-то очень распространенным, но относительно безопасным – по крайней мере, для тех, у кого установлен антивирус.
Не стоит забывать о том, что программышпионы по-прежнему с успехом используются в профессиональном промышленном и финансовом шпионаже – с целью обеспечения скрытного доступа к внутренней сети организации, ее конфиденциальным ресурсам либо в качестве автоматизированного инструмента для снятия информации. Что неудивительно: внедрить незаметную программу через одного из сотрудников (ничего об этом не подозревающего) безопаснее и дешевле, чем использовать с той же целью инсайдера.
ОБЗОР ПРОБЛЕМЫ
Публичные источники информации не дают оснований судить о роли вредоносных программ в инцидентах, связанных с компрометацией ИБ. Тому имеется ряд причин. 1. Инциденты утечки информации и тем более результаты их расследования редко предаются огласке, так как это способно повредить репутации компании. 2. Техническое расследование необходимой глубины не может быть произведено, если у следователя недостаточно компетенций для выявления профессионального руткита или же если подозреваемые серверы были скоропалительно "пущены под снос".
Если программа-шпион грамотно разработана, то в процессе ее работы пострадавшая сторона никогда не заподозрит неладное, а к моменту раскрытия факта утечки атакующий успевает "замести следы" – удалить шпионскую программу и очистить системные логи 3. Об эффективности использования программных средств с целью получения доступа к внутренним IT-ресурсам организации и необходимых привилегий можно судить по тому факту, что в арсенале любой серьезной организации, проводящей "Тесты на проникновение" (Penetration testing), обязательно имеется тест на внедрение постороннего кода1. По данным представителей нескольких подобных организаций, указанный способ проникновения в сеть является одним из наиболее эффективных в ходе выполнения "Тестов на проникновение". Существует ли надежная защита от таких вредоносных программ? Проблема в том, что целевые шпионские программы крайне редко попадают в антивирусные лаборатории по причинам, перечисленным выше. Антивирус против них бессилен и еще по одной причине: бюджеты на разработку инструментов для промышленного шпионажа вполне покрывают расходы разработчика на решение задачи обхода всех существующих на рынке защитных средств2. Что касается современных DLP-решений: они предназначены в первую очередь для защиты от непреднамеренных или дилетантских утечек информации и не способны обеспечить надежную защиту от профессионально спланированной кампании.
СОВРЕМЕННЫЕ ЦЕЛЕВЫЕ ШПИОНСКИЕ ПРОГРАММЫ
Стоит выделить три разновидности шпионских программ, применяемых в качестве инструментов для промышленного шпионажа и финансового мошенничества.
1. Руткит – вредоносная программа, скрывающая свое присутствие в системе от пользователя и утилит.
2. Троянец – обыкновенная шпионская программа, не скрывающаяся в системе.
3. Закладка – шпионский код, встроенный в легитимное ПО. Большинство подобных программ являются целевыми, т.е. разработанными на заказ с учетом IT-инфраструктуры конкретной организации.
С целью сбора информации шпионская программа устанавливается на ключевой сервер в сети организации или на рабочую станцию ответственного сотрудника.
Перечислим основные векторы внедрения шпионской программы в целевую систему. 1. Программа инсталлируется при помощи инсайдера. 2. Программа внедряется через одного из сотрудников (без его согласия) при помощи методов социальной инженерии. Это может быть присланная по каналам e-mail, IM, социальных сетей ссылка на программу (якобы от имени знакомого сотрудника или администратора организации) или подброшенный диск с презентациями.
3. Программа внедряется "снаружи", после взлома сетевого периметра.
Необходимость в проведении анализа серверов организации на предмет шпионских программ возникает в следующих случаях.
1. Профилактика: в составе комплекса мер по внедрению ПО для защиты от утечек или в ходе проведения плановых тестов ИБ. 2. Диагностика: зафиксировано аномальное поведение компьютерных систем – "лишние" процессы, несанкционированные сетевые соединения, ненормальный объем трафика или потребляемых процессорных ресурсов.
3. Инцидент: в составе комплекса мер по техническому расследованию инцидента утечки данных или финансового мошенничества.
На этапе анализа обнаруженной шпионской программы возможно получение ценной информации об инциденте, такой как сетевой адрес атакующего, свидетельства уровня его осведомленности о внутренней инфраструктуре целевой организации, точный перечень переданных злоумышленнику данных.
Методика выявления шпионских программ В ходе поиска шпионских программ необходимо учитывать два возможных варианта компрометации системы, так как для каждого из них используется своя методика анализа.
1. Шпионская программа скрывается в системе – целевой руткит.
В рамках этого случая решение задачи сводится к выявлению и анализу системных аномалий, косвенно свидетельствующих о наличии скрытой программы. Такими аномалиями считаются расхождения в системных данных, полученных из разных источников, несанкционированные модификации кода ядра, несанкционированные системные "ловушки" (hooks, callbacks). 2. Шпионская программа не скрывается, но маскируется – троянец или закладка.
В данном случае для полного решения задачи достаточно глубокого анализа системной конфигурации и проверки целостности системных файлов и исполняемых файлов приложений. Комплекс мер по выявлению шпионских программ должен учитывать оба вышеописанных случая. Таким образом, он включает в себя следующие этапы. 1. Анализ конфигурации системы.
Производится экспертное обследование списков объектов автозапуска, в том числе различных веток системного реестра, списков сервисов, зарегистрированных драйверов и других точек. В ходе анализа должны быть рассмотрены все возможные источники прямой и косвенной загрузки исполняемого модуля при старте операционной системы. 2. Выявление и анализ системных аномалий.
Во-первых, при помощи специализированных утилит производится серия тестов и сопоставлений системной информации, полученной разными способами: с помощью вызова стандартных системных API, вызова функций ядра, внешнего сканирования системы. Таким образом может быть диагностировано наличие в системе агента, искажающего выводимую информацию.
Во-вторых, анализируются на предмет аномалий – несанкционированных модификаций и несоответствий стандартам – различные системные структуры, считанные при помощи низкоуровневых механизмов (таких как отладчик ядра или прямое чтение с диска).
Перечень объектов, подлежащих такому анализу, включает в себя: списки файлов, списки открытых портов, сетевых соединений, дампы сетевого трафика, системные логи и логи приложений, списки зарегистрированных в системе и загруженных в память модулей ядра, таблицы указателей и код функций ядра и многое другое. 3. Проверка целостности исполняемых файлов.
Для контроля отсутствия нежелательных модификаций в исполняемых модулях производится проверка контрольных сумм файлов в соответствии с дистрибутивами соответствующего ПО и верификация цифровой подписи файлов.
4. Анализ выявленных шпионских программ.
--> ЧИТАТЬ ПОЛНОСТЬЮ <--