Бой с тенью: бестелесная угроза

Бизнес

Дикая охота на кибернебосклоне

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

Этот метод, безусловно, не нов. Случаи использования вредоносных программ, обнаруживаемых исключительно в оперативной памяти, известны с начала 2000-х годов. Но подобное случалось довольно редко, и, как правило, основной целью атаки было постоянство, то есть сохранение присутствия вредоносного кода в атакованной системе, поэтому бестелесные зловреды запускались внутри атакуемой инфраструктуры со своего рода «базы», где вредоносный код хранился в традиционном виде.

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

bodyless_main

«V» значит «Volatile»

В феврале 2013 года, после публикации обширного доклада о кибершпионской кампании APT1, или Comment Crew, всплеск интереса к проблеме бестелесных угроз со стороны вендоров и экспертов по безопасности произвел на свет новый термин. Чтобы дистанцироваться от уже устоявшегося выражения «Advanced Persistent Threat» (APT), применяемого по отношению к тщательно спланированным угрозам, долгое время находящимся в инфраструктуре жертвы, новое явление окрестили Advanced Volatile Threat (AVT), чтобы подчеркнуть, что угроза находится в энергозависимой памяти (Volatile Memory). Термин не снискал особой популярности и использовался главным образом для того, чтобы сеять страх, неуверенность и сомнения. Публике предъявлялись апокалиптические изображения новых ужасающих киберугроз (как правило, созданных при непременной поддержке недружественных государств), для противодействия которым необходимо приобретать новейшие (и весьма дорогие) защитные продукты и сервисы.

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

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

Вопросы терминологии

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

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

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

Сценарии и контрмеры

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

  • классический адресный фишинг с вредоносным вложением: после открытия которого (к примеру, специально созданного файла .docx) происходит внедрение зловреда в действующий процесс Microsoft Word в памяти компьютера через какую-либо уязвимость. После этого скомпрометированный процесс начинает выполнять не свойственные ему действия — например, загружать и запускать дополнительные фрагменты вредоносного кода прямо в памяти машины.
  • сценарий drive-by-атаки через ранее скомпрометированные популярные интернет-ресурсы: с помощью эксплойта либо осуществляется внедрение кода непосредственно в процесс браузера, либо в оперативной памяти запускается новый дочерний процесс.

Обратите внимание: злоумышленники также могут использовать совершенно легитимные программы, для того чтобы выполнять самый широкий спектр задач без необходимости взаимодействия с файловой системой. Чаще всего для этого используют интерпретатор PowerShell, который присутствует практически в любой современной ОС Windows, начиная с Windows 7.

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

Тем не менее можно противодействовать и такой атаке. Адекватная защитная система, построенная на принципе многоуровневости, должна предусматривать следующие средства:

  • продвинутые механизмы, использующие поведенческие методы для динамического обнаружения вредоносной активности на эндпойнтах. Даже если некий процесс легитимен, действия, которые он начинает совершать после внедрения вредоносного кода, особенно при анализе полной картины происходящего на устройстве, заметно отличаются от стандартных и благодаря этому могут быть обнаружены. В Kaspersky Endpoint Security для бизнеса, а также в Kaspersky Security для виртуальных сред | Легкий агент это обеспечивается подсистемой System Watcher.
  • специализированные методы противодействия эксплойтам. Их значение трудно переоценить, так как эксплуатация уязвимостей в ПО является одним из ключевых подходов, используемых злоумышленниками. Оба вышеупомянутых решения «Лаборатории Касперского» имеют этот уровень безопасности.
  • функцию контроля приложений при помощи динамических белых списков, в частности, с режимом запрета по умолчанию. Помимо блокировки сомнительных приложений он может ограничить работу потенциально опасных легитимных программ, в том числе отдельных компонентов системы, таких как интерпретатор PowerShell. Данная функция доступна как в Kaspersky Endpoint Security (начиная с уровня Select), так и в Kaspersky Security для виртуальных сред | Легкий Агент.