Разбираем феномен целевых атак

Разбираем феномен целевых атак

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

Материал подготовлен специально для колонки в издании “Хакер”

В новостях то и дело мелькает: «В результате таргетированной атаки преступникам удалось украсть два миллиарда долларов из 40 банков и финансовых организаций по всему миру…», «…Жертвами атаки, направленной на промышленные компании, стали более 500 энергетических, металлургических и строительных компаний более чем в 50 странах…», «…Эффективные и грамотно размещенные вредоносные программы, предназначенные для реализации атак на систему SWIFT, позволили киберпреступникам украсть миллионы…» и так далее, и так далее.

Таргетированные атаки (они же APT) — настоящий бич нашего времени, и на защите от них уже построен не один многомиллионный бизнес. Заглядываешь на любую выставку, посвященную ИБ, и видишь: для продающей стороны APT — это теперь важная часть предложения, а для покупающей — одна из насущных проблем. Причем актуальна она уже не только для крупного бизнеса, наученного горьким опытом, но и для среднего и даже малого. Если атакующий хочет добраться до корпорации, то мелкий подрядчик вполне может оказаться промежуточной целью.

Не просто слова

К сожалению, термины «таргетированная атака» и «целенаправленная атака» некорректны. Почему? Вспомним классическое определение компьютерной атаки: «Компьютерная атака — целенаправленное несанкционированное воздействие на…». Стоп, стоп, уже достаточно! Получается, что цель-то есть у любой атаки, а не только у «таргетированной».

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

Слышу возмущенные крики из зала: «Люди деньги теряют, а он к терминам цепляется!» Однако академическая точность описания проблемы чрезвычайно важна для создания той самой «серебряной пули».

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

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

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

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

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

Проблема решения

Получается, что избежать риска компрометации фактически невозможно. Соответственно, нужны системы выявления неизвестных атак в уже скомпрометированной среде. Этот класс решений носит гордое название post-breach («после взлома») и чаще всего решает задачу response/mitigation, то есть реагирования и смягчения.

А вот методов и построенных на их основе решений для своевременного детекта угроз (post-breach detection) в действительности не так много. Например, один из них — это сети ловушек, которые широко известны как «ханипоты».

Уровни, на которых может быть реализована система ловушек (по мнению Gartner)

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

Известны способы адаптивного развертывания систем ловушек, а также поиска аномалий в функционировании компонентов системы. Гораздо сложнее найти рекомендации, как выбирать параметры развертывания ханипотов. Сколько нужно фейковых рабочих станций в сети? Какие фейковые аккаунты и на каких машинах создать? Еще сложнее проанализировать полученные таким способом данные. «Окей, Google, кто-то воспользовался фейковой учеткой на компьютере нашего бухгалтера. Что теперь делать?»

Неопознанное ≠ сверхъестественное

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

Звучит сложно? На самом деле все сводится к трем ключевым особенностям: непрерывности, целенаправленности и нетривиальности.

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

Целенаправленность — характеристика, которая определяет степень ручной работы со стороны атакующего для реализации несанкционированного доступа или воздействия и учитывает индивидуальные особенности целевой инфраструктуры.

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

Жизненный цикл атаки

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

Жизненный цикл атаки (по материалам Gartner)

Давай на примерах разберем каждую стадию жизненного цикла атаки и проиллюстрируем стратегии реализации этапов. Назовем атакующего Василием.

Вася атакует

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

Разведка, подготовка

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

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

Василий нашел профили нескольких сотрудников организации в социальных сетях и их корпоративные email-адреса. На основе полученных данных Василий подготовил следующий план действий.

  1. Попытаться скомпрометировать рабочие станции обнаруженных сотрудников.
  2. Если это не удастся, Василий попробует использовать публичные эксплоиты, чтобы атаковать серверы организации, доступные из интернета, а также роутеры Wi-Fi в офисах компании.
  3. Параллельно с первыми двумя шагами Василий будет искать уязвимости в публичном веб-приложении в надежде, что скомпрометированное приложение предоставит ему доступ к внутренней инфраструктуре.

Чтобы реализовать все это, Василий готовит текст письма с вредоносным вложением сотрудникам, кастомизирует найденные эксплоиты, а также запускает перебор пароля для админки обнаруженного веб-ресурса.

Доставка, эксплуатация, закрепление

Как ты думаешь, какой из пунктов имеет больший шанс на успех? Быть может, ты видел отчеты консалтинговых компаний и скажешь, что это веб-приложение. Или вспомнишь про человеческий фактор и некомпетентность персонала в вопросах ИБ и предположишь, что победит фишинговое письмо с вложением. Но Васе все равно, что ты думаешь, потому что он уже сидит с ноутбуком в офисе компании и ждет подключений мобильных устройств ее сотрудников.

Так или иначе, итог этой стадии: отстук загруженного вредоносного кода на управляющий сервер Василия.

Действие

Вот тут начинается все самое интересное. На практике часто оказывается так, что злоумышленник вынужден проводить целую спецоперацию и создавать новые точки присутствия для того, чтобы обеспечить себе постоянный контроль (persistent). Ему придется проводить разведку внутри скомпрометированной инфраструктуры и перемещаться к ценным ресурсам. Это называется lateral movement: вряд ли полученный доступ к компьютеру бухгалтера удовлетворит заказчиков Василия — их скорее интересует интеллектуальная собственность компании. Ну и в конечном счете Васе нужно будет провести незаметный вывод данных (exfiltration).

Противодействие

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

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

Alt text

Не ждите, пока хакеры вас взломают - подпишитесь на наш канал и станьте неприступной крепостью!

Подписаться

Денис Макрушин

Inspired by Insecure