Роль вредоносных программ в промышленном шпионаже
Роль вредоносных программ в
промышленном шпионаже
Алиса Шевченко
ЗАЩИТА И
ПРЕДОТВРАЩЕНИЕ
В силу
специфики проблемы никакие программно-технические средства не гарантируют
защиту от данной угрозы. Существенно усложнить задачу злоумышленника способны
классические, грамотно спланированные меры обеспечения ИБ: защита внешнего
периметра, шифрование информации, продуманные внутренние политики и плановые
внешние тесты безопасности. Чрезвычайно важна осведомленность сотрудников в
вопросах безопасности, так как наиболее эффективным и плохо поддающимся
контролю вектором внедрения вредоносного кода является социотехнический вектор.
СЕГОДНЯ
вредоносные программы - троянцы, вирусы, бэкдоры и шпионы - постоянная тема
новостных колонок, посвященных информационной безопасности. Они представляются
чем-то очень распространенным, но относительно безопасным - по крайней мере,
для тех, у кого установлен антивирус.
Не стоит
забывать о том, что программышпионы по-прежнему с успехом используются в
профессиональном промышленном и финансовом шпионаже - с целью обеспечения
скрытного доступа к внутренней сети организации, ее конфиденциальным ресурсам
либо в качестве автоматизированного инструмента для снятия информации. Что
неудивительно: внедрить незаметную программу через одного из сотрудников
(ничего об этом не подозревающего) безопаснее и дешевле, чем использовать с той
же целью инсайдера.
ОБЗОР
ПРОБЛЕМЫ
Публичные
источники информации не дают оснований судить о роли вредоносных программ в
инцидентах, связанных с компрометацией ИБ. Тому имеется ряд причин. 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. Анализ
выявленных шпионских программ.
Производится
reverse engineering и детальный анализ кода обнаруженного руткита или закладки
с целью извлечения дополнительной информации об инциденте. 5. Восстановление
чистоты системы.
Сервер может
быть надежно "вылечен" без необходимости переустановки операционной
системы.
В силу
значительной трудоемкости данной методики она применяется с целью выявления
шпионских программ только на серверах. Решение аналогичной задачи для большого
количества рабочих станций производится по упрощенной схеме и с более обширным
использованием средств автоматизации анализа.
Следует
заметить, что приведенный базовый алгоритм не полностью покрывает один
достаточно редкий и специфический кейс, а именно: случай, когда шпионский код
внедрен в легитимное ПО в виде недекларированных возможностей (НДВ), на уровне
дистрибутива. В таком случае проверка целостности исполняемых файлов и
конфигурации системы рискует не выявить никаких аномалий. Покрытие данного
кейса требует глубокого анализа подозрительного программного обеспечения.
1 Хотелось
бы подчеркнуть, что в ходе "Тестов на проникновение" используются
эмуляторы, то есть программы, имитирующие отдельные особенности вредоносного ПО
(такие, как обход защиты и повышение уровня привилегий в системе), полностью
подконтрольные специалисту и не содержащие вредоносных функций.
2 На черном
рынке (см. хакерские Web-форумы) открыто котируются только простые троянцы,
нацеленные на массовое заражение пользователей, преимущественно с целью
создания ботнетов. О ценах на целевые руткиты можно судить, умножая
соответствующие котировки в десятки раз.
КОММЕНТАРИЙ
ЭКСПЕРТА
Илья Сачков,
руководитель направления, группа информационной безопасности Group-IB
К сожалению,
в последнее время специалисты по информационной безопасности стали относиться к
вредоносному коду очень несерьезно, как к самой банальной угрозе информационной
безопасности, про которую все известно. На практике же вредоносное ПО, а в
особенности программы-шпионы, до сих пор являются одними из самых эффективных
методов проведения несанкционированного съема информации. Это не миф, не сказка
для студентов и не банальный маркетинговый ход антивирусных компаний.
В нашей
практике мы часто сталкиваемся с двумя основными инцидентами, инструмент
проведения которых - программы-шпионы: утечка информации и финансовое
мошенничество. Промышленный шпионаж, как и корпоративная разведка, - это
действительность. Правда, по отношениюко второму типу инцидентов - событие
менее распространенное. В основном программы-шпионы сейчас используются в
российских корпоративных ИТ-средах для кражи ключевых элементов систем
Интернет-банкинга и перевода денег со счетов юридических лиц на пластиковые
карты физических лиц (это позволяет преступникам в день перевода обналичить
денежные средства).
Алиса
Шевченко, руководитель компании eSage Lab
Список литературы
Информационная
безопасность" № 6, октябрь-ноябрь 2009