Программы-вымогатели для целевых атак: не просто шифрование данных

Часть 1. «Старые и новые друзья»

Говоря о программах-вымогателях, мы должны четко различать то, чем они были раньше, и то, чем они являются в настоящее время. Почему? Потому что сейчас программы-вымогатели не просто занимаются шифрованием — в первую очередь они крадут данные. Только после этого злоумышленники шифруют файлы, оставляя убедительное доказательство своего присутствия в сети жертвы, а затем переходят к этапу вымогательства. И речь идет не только и не столько о потере информации, сколько о публикации украденных данных в интернете. Поэтому давайте назовем такие атаки Ransomware 2.0.

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

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

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

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

Группы, стоящие за разными программами-вымогателями, используют разные тактики и техники и разные методы шифрования. Сегодня мы поговорим о двух из них — Ragnar Locker и Egregor — ветеране и новичке. Обе программы достаточно самобытны и не похожи друг на друга.

Ragnar Locker

Первые варианты этой вредоносной программы были обнаружены в 2019 году, однако известным зловред Ragnar Locker стал только в первой половине 2020 года, когда начал атаковать крупные организации.

Ragnar Locker предназначен для целевых атак: каждый отдельный образец затачивается под конкретную организацию. Стоящая за ним группа любит взламывать RDP, а в качестве метода оплаты выкупа предпочитает биткойны.

Эта группа владеет тремя доменами .onion в сети Tor и одним доменом в видимом сегменте интернета, зарегистрированным 16 июня 2020 года.

Если жертвы отказываются платить, их украденные данные публикуются в разделе «Стена позора».

Скриншот «стены позора», на которой выставляются украденные данные

Любопытно, что эта группировка позиционирует себя как команду охотников за багами. Они заявляют, что выкуп — это их вознаграждение за обнаружение эксплуатируемых уязвимостей, расшифровку файлов, обучение жертвы концепции операционной безопасности (OpSec) и, наконец, за неразглашение украденных данных. Разумеется, если жертва отказывается платить, данные становятся достоянием общественности. Кроме того, если жертва вступает в переписку с вымогателем, использующим Ragnar Locker, и в итоге не платит, то переписка публикуется вместе с украденными данными.

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

Пример жертвы, данные которой предположительно предоставлены Maze и опубликованы на «стене позора» Ragnar Locker

Более подробную информацию о программе-вымогателе Maze можно найти здесь.

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

География жертв Ragnar Locker (скачать)

Жертвы Ragnar Locker по сфере деятельности (скачать)

Техническое описание

Для анализа мы выбрали недавно обнаруженный образец зловреда: 1195d0d18be9362fb8dd9e1738404c9d

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

Если страна не входит в приведенный выше список, программа приступает к остановке служб с именами, содержащими жестко прописанные в образце вредоносного ПО и обфусцированные с помощью RC4 подстроки:

После этого Ragnar Locker завершает запущенные процессы, опираясь на другой список подстрок, также содержащийся в теле троянца:

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

Для шифрования файлов Ragnar Locker использует нестандартный поточный шифр на основе Salsa20. Вместо стандартных «магических» констант инициализации sigma = «expand 32-byte k» и tau = «expand 16-byte k», обычно используемых в Salsa20, троянец генерирует новые случайные значения для каждого обрабатываемого файла. Этот необязательный шаг делает шифр несовместимым со стандартной версией Salsa20, но при этом не повышает его безопасность.

Для каждого файла также генерируются уникальный ключ и nonce (одноразовый код), которые зашифровываются вместе с упомянутыми константами посредством RSA с использованием публичного 2048-битного ключа, жестко прописанного в теле троянца.

Генератор случайных чисел основан на функции CryptGenRandom из MS CryptoAPI, которая считается безопасной, и алгоритме хэширования SHA-256. Реализация генератора случайных чисел выглядит немного неуклюжей, но мы не обнаружили в нем никаких критических недостатков.

Псевдокод генератора случайных чисел, используемого в последнем варианте Ragnar Locker

По завершении шифрования каждого файла Ragnar Locker добавляет к нему зашифрованные ключ, nonce и константы инициализации, а также маркер «!@#_®agna®_#@».

Последние байты файла, зашифрованного Ragnar Locker

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

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

Egregor

Программа-вымогатель Egregor является новым зловредом, который был обнаружен в сентябре 2020 года. После первоначального анализа мы заметили сходство кода этой новой угрозы, шифровальщика Sekhmet и нашумевшего вымогателя Maze, создатели которого 1 ноября 2020 года объявили о закрытии проекта.

Egregor имеет как минимум один домен в зоне .onion и два домена в видимом сегменте интернета. Первый был зарегистрирован 6 сентября 2020 года, а второй — 19 октября 2020 года. На момент написания статьи оба домена в видимом сегменте интернета работали с перебоями. Вероятно, поэтому на главной странице домена .onion опубликован дисклеймер:

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

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

Выплата выкупа обсуждается и согласовывается в отдельном чате для каждой жертвы. Злоумышленники принимают платежи в BTC.

Пример чата, в котором ведутся переговоры о выплате выкупа

Техническое описание

Для этого раздела мы взяли образец b21930306869a3cdb85ca0d073a738c5

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

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

После распаковки двух уровней вредоносного упаковщика мы получаем обфусцированный бинарный файл, который все еще не подходит для статического анализа. Методы обфускации, используемые в Egregor, сильно похожи на те, что используются в Maze и Sekhmet: код «раздирается на куски» методом обфускации потока управления с помощью условных и безусловных переходов, PUSH+JMP вместо RETN и так далее.

Пример обфускации потока управления

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

армянский (Армения)
азербайджанский (кириллица, Азербайджан)
азербайджанский (латиница, Азербайджан)
белорусский (Беларусь)
грузинский (Грузия)
казахский (Казахстан)
киргизский (Киргизская Республика)
румынский (Молдова)
русский (Молдова)
русский (Россия)
таджикский (кириллица, Таджикистан)
татарский (Россия)
туркменский (Туркменистан)
украинский (Украина)
узбекский (латиница, Узбекистан)

Затем выполняется попытка завершить следующие процессы:

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

Egregor использует гибридную схему шифрования файлов, основанную на поточном шифре ChaCha и асимметричном шифре RSA.

Публичный мастер-ключ RSA-2048 встроен в тело троянца. При выполнении на машине жертвы Egregor генерирует новую уникальную пару сессионных ключей RSA. Приватный сессионный ключ RSA экспортируется и шифруется алгоритмом ChaCha с помощью сгенерированного уникального ключа и nonce, затем ключ и nonce шифруются с помощью публичного мастер-ключа RSA. Результаты сохраняются в бинарном файле (в нашем случае он называется C:\ProgramData\dtb.dat), а также в виде base64-строки в записке с требованием выкупа.

Для каждого обрабатываемого файла Egregor генерирует новый 256-битный ключ ChaCha и 64-битный nonce, шифрует содержимое файла с помощью ChaCha, затем шифрует ключ и nonce с помощью публичного сессионного ключа RSA и сохраняет их вместе со вспомогательной информацией в конце зашифрованного файла.

Последние 16 байт каждого зашифрованного файла состоят из динамического маркера: случайного DWORD и этого же DWORD, но гаммированного (операция XOR) со значением 0xB16B00B5, что соответствует BIGBOOBS на так называемом литспике, который, по данным Википедии, изначально был «языком хакеров», позднее перекочевав в мейнстрим.

Часть псевдокода процедуры шифрования файлов

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

В архивном разделе сайта перечислены жертвы вымогателей и ссылки для скачивания украденных данных.

Судя по информации о жертвах, которые отказались платить, географический охват Egregor намного шире, чем у Ragnar Locker:

География жертв Egregor (скачать)

То же самое относится и к количеству атакованных отраслей:

Жертвы Egregor по сфере деятельности (скачать)

Выводы

К сожалению, Ransomware 2.0 никуда не денется. Когда мы говорим о 2.0, мы имеем в виду целевые вымогательские атаки с извлечением данных. Злоумышленники требуют выкуп в первую очередь за то, чтобы данные жертвы не были опубликованы в интернете, а только потом за расшифровку. Почему для жертв так важно, чтобы их данные не попали в широкий доступ? Потому что возможные судебные иски и штрафы, связанные с нарушением таких норм, как акт HIPAA (закон США об обеспечении доступности и подотчетности в медицинском страховании), PIC («Предварительное обоснованное согласие» — документ, регулирующий импорт и экспорт опасных химикатов) или GDPR (общий регламент ЕС по защите данных), могут привести к огромным финансовым потерям, ущербу для репутации и потенциальному банкротству.

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

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

Как защититься от Ransomware 2.0

Чтобы защитить вашу компанию от атак с использованием программ-вымогателей, специалисты «Лаборатории Касперского» рекомендуют:

  1. Запретить подключаться к службам удаленного рабочего стола (таким как RDP) из общественных сетей, если в этом нет серьезной необходимости, и всегда использовать надежные пароли для таких служб.
  2. Оперативно устанавливать доступные исправления для коммерческих VPN-решений, обеспечивающих подключение удаленных сотрудников и выступающих в качестве шлюзов в вашей сети.
  3. Всегда обновлять программное обеспечение на всех используемых устройствах, чтобы предотвратить эксплуатацию уязвимостей.
  4. Сосредоточить стратегию защиты на обнаружении горизонтальных перемещений и эксфильтрации данных в интернет. Обращать особое внимание на исходящий трафик, чтобы выявлять коммуникации киберпреступников. Регулярно выполнять резервное копирование данных. Убедиться, что в экстренной ситуации вы можете быстро получить доступ к бэкапу.
  5. Использовать защитные решения, которые помогают выявить и остановить атаку на ранних стадиях, например Kaspersky Endpoint Detection and Response и Kaspersky Managed Detection and Response.
  6. Обучать и инструктировать своих сотрудников по вопросам обеспечения безопасности корпоративной среды. В этом могут помочь специализированные курсы, которые можно найти, например, на платформе Kaspersky Automated Security Awareness Platform. Бесплатный урок по защите от атак программ-вымогателей доступен здесь.
  7. Использовать надежное решение для защиты рабочих мест, такое как Kaspersky Endpoint Security для бизнеса, в котором реализован механизм противодействия эксплойтам, а также функции обнаружения аномального поведения и восстановления системы, позволяющие выполнить откат в случае вредоносных действий. Kaspersky Endpoint Security для бизнеса также располагает средствами самозащиты, которые помешают киберпреступникам его удалить.

Публикации на схожие темы

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *