Содержание:
- Введение
- Профиль угрозы
- Цепочка заражения
- Кампания-1
- Анализ приманки:
- Технический анализ
- Отпечаток вредоносного ПО ROKRAT
- Кампания-2
- Анализ приманки
- Технический анализ
- Подробный анализ декодированного tony31.dat
- Заключение
- Seqrite Протекторы
- MITRE Att&ck:
- МНК
Введение:
Исследователи безопасности Seqrite В ходе недавних расследований были обнаружены две отдельные кампании, проведенные APT-группой «Kimsuky», также известной как «Black Banshee». Эта группа активно нацелена на Южную Корею, используя постоянно меняющуюся тактику. В рамках этих кампаний злоумышленники использовали в качестве приманки два документа, связанных с южнокорейским правительством, целенаправленно атакуя государственные структуры Южной Кореи.
В этой статье мы подробно рассмотрим технические детали кампаний, выявленных в ходе нашего анализа. Мы рассмотрим различные этапы заражения, начиная с фишингового письма, содержащего вложение в виде LNK-файла (ярлыка). LNK-файл был разработан для распространения обфусцированного скрипта VBA (Visual Basic for Applications). После деобфусцирования скрипта мы обнаружили, что он отвечал за распространение двух дополнительных файлов: одного PDF-файла и одного ZIP-файла. ZIP-файл содержал четыре вредоносных файла: два файла журнала (1.log и 2.log), один VBA-скрипт (1.vba) и один PowerShell-скрипт (1.ps1). Обе кампании включали один и тот же набор вредоносных файлов.
Инфекционная цепь:

Первоначальные выводы:
Кампания-1:
В ходе первой кампании мы обнаружили документ, связанный с уменьшением налоговых ставок и уплатой налога с доходов, который содержал тот же вредоносный LNK-вложение. Это вложение впоследствии внедряло вредоносный код VBScript, что способствовало дальнейшей компрометации.

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

Злоумышленники воспользовались распространением этой информации и документа, распространяя их по электронной почте, замаскировав под именем файла 성범죄자 신상정보 고지.pdf.lnk (Уведомление о личной информации сексуального преступника.pdf.lnk). Это вложение содержит вредоносный LNK-файл, представляющий угрозу кибербезопасности для получателей.
Технический анализ и методология:
Кампания 1 и 2:
Мы скачали файл 28f2fcece68822c38e72310c911ef007f8bd8fd711f2080844f666b7f371e9e1.lnk из кампании 1 и файл «성범죄자 신상정보 고지.pdf.lnk» из кампании 2 (Sex Offender Personal Information Notification.pdf.lnk), отправленный по электронной почте. Анализ этого LNK-файла показал, что он, по всей видимости, загружает дополнительные файлы с внешнего сервера C2, как показано на снимке экрана ниже.


Файл был загружен с URL-адреса, указанного выше, и сохранен в папке Temp, как указано ниже.




Файл, загруженный с сервера C2, по всей видимости, представляет собой обфусцированный VBScript. После обфусцирования скрипта с помощью DE мы обнаружили два дополнительных файла: один PDF-файл и один ZIP-файл.

Первый раздел файла закодирован в строках Base64.

После декодирования мы нашли один PDF-файл.

Вторая часть VBScript также закодирована в Base64. После её расшифровки мы обнаружили ZIP-файл.


ZIP-файлы содержат указанное ниже количество файлов.

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


Файл 1.vbs использует продвинутые методы обфускации, используя функции chr() и CLng() для динамического конструирования символов и вызова команд во время выполнения. Эта стратегия эффективно обходит механизмы обнаружения на основе сигнатур, позволяя скрипту избегать обнаружения во время выполнения.
После завершения скрипта объединенные символы образуют полную команду, которая затем выполняется. Эта команда, вероятно, предназначена для вызова скрипта PowerShell 1.ps1, передающего 1.log в качестве аргумента для дальнейшей обработки.

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

При запуске файла 1.vbs происходит запуск файла 1.ps1, как показано на снимке экрана ниже.


Скрипт 1.ps1 включает функцию, предназначенную для декодирования данных в кодировке Base64 из файла 1.log и выполнения полученного скрипта.


Скрипт 1.ps1 извлекает серийный номер BIOS, уникальный идентификатор системы, из скомпрометированного хоста. Этот серийный номер впоследствии используется для создания специального каталога во временной папке системы, обеспечивая хранение файлов, связанных с атакой, в месте, специфичном для скомпрометированной машины, как показано на снимке экрана выше.
Будучи образцом, поддерживающим виртуальную машину, скрипт проверяет, выполняется ли он в среде виртуальной машины. Если он обнаруживает виртуальную машину, он удаляет все четыре файла, связанных с атакой (1.vbs, 1.ps1, 1.log и все файлы полезной нагрузки, хранящиеся в каталоге, названном по серийному номеру), фактически останавливая выполнение, как показано на рисунке.
Скрипт включает 11 функций, определяющих последующие этапы работы вредоносного ПО, включая кражу данных, кражу информации из криптовалютного кошелька и установление связи с командно-административным центром (C2). Эти функции являются неотъемлемой частью реализации атаки, облегчая достижение целей вредоносного ПО и обеспечивая постоянную связь с источником угрозы.
Список вредоносных функций, извлеченных из 1 файла журнала:
- Загрузить файл ():
Функция загрузки извлекает данные, передавая их на сервер блоками по 1 МБ, что позволяет эффективно обрабатывать файлы больших размеров. Скрипт ожидает ответа от сервера и, если получает HTTP-код статуса «200», продолжает выполнение. Если ответ отличается, скрипт завершает работу. Каждый блок отправляется HTTP-запросом POST, при этом функция проверяет успешность каждой итерации загрузки перед продолжением.

- GetExWFile():
GetExWFile Функция перебирает набор предопределённых хеш-таблиц, содержащих расширения криптовалютных кошельков. При обнаружении совпадения она идентифицирует связанные с этими расширениями файлы .ldb и .log для извлечения данных. Эти файлы затем переносятся в указанную папку назначения, как указано в $Storepath Переменная.

- GetBrowserData():
Скрипт проверяет, запущен ли какой-либо из следующих браузеров — Edge, Firefox, Chrome или Naver Whale — и извлекает данные профиля пользователя, включая файлы cookie, учётные данные, закладки и веб-данные. Перед сбором этой информации скрипт завершает процессы браузера, чтобы обеспечить бесперебойный доступ. Затем он извлекает данные об установленных расширениях и файлах кэша, таких как webcacheV01.dat, для каждого идентифицированного браузера. Для некоторых браузеров он также выполняет операции дешифрования для разблокировки зашифрованных ключей, что позволяет извлечь конфиденциальную информацию, которая затем сохраняется вместе с расшифрованным главным ключом шифрования.

- Скачать файл () :
Функция загрузки файла загружает любой файл на основе команды C2.

- RegisterTask() :
Он создает постоянство для файлов «1.log» и «1.vbs».

- Отправлять ():
Функция send() загружает всю собранную информацию на сервер, предварительно сжимая её в ZIP-файл с именем «init.zip». Затем она переименовывает ZIP-файл в «init.dat» и удаляет все файлы резервных копий из системы после загрузки.

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



Расшифрованное содержимое файла 2.log показано выше. Он содержит скрипт, импортирующий основные функции Windows API для обнаружения нажатий клавиш, получения заголовков окон и управления состояниями клавиатуры. Скрипт выполняет такие действия, как мониторинг буфера обмена, регистрация нажатий клавиш и запись заголовков окон.


Заключение
Как уже отмечалось, злоумышленники используют трудоемкие, многокомпонентные методы, взаимосвязанные между собой, для повышения своей скрытности. В отличие от других программ-похитителей данных, эта в основном фокусируется на информации, связанной с сетью, которая может быть использована для активной разведки. Учитывая, что программа-похититель данных нацелена на конфиденциальные данные пользователей, крайне важно защитить себя с помощью надежного решения в области безопасности, такого как... Seqrite Антивирусы в современном цифровом пространстве. Seqrite В нашей лаборатории мы обеспечиваем возможности обнаружения подобных вредоносных программ на различных стадиях заражения, а также защиту от новейших угроз.
Seqrite Степень защиты:
- Троян.49424.SL
- Троян.49422.C
MITRE ATT&CK:
| Первоначальный доступ | T1566.001 | Фишинг: Целевое фишинговое вложение |
| Типы | T1059.001
T1059.005 |
Интерпретатор команд и сценариев: PowerShell
Интерпретатор команд и сценариев: Visual Basic |
| Настойчивость | T1547.001 | Выполнение автозапуска при загрузке или входе в систему: ключи запуска реестра / папка автозагрузки |
| Уклонение от защиты | T1140 | Деобфускация/декодирование файлов или информации |
| Доступ к учетным данным | T1555.003 | Учетные данные из хранилищ паролей: Учетные данные из веб-браузеров |
| Дискавери | T1082 | Обнаружение системной информации |
| | T1056.001 | Захват ввода: кейлоггинг |
| Управление и контроль | T1071.001 | Протокол прикладного уровня: веб-протоколы |
| эксфильтрации | T1041 | Эксфильтрация через канал C2 |
IoC:
| MD5 | Название файла |
| 1119A977A925CA17B554DCED2CBABD8 | *.lnk |
| 64677CAE14A2EC4D393A81548417B61B | 1. журнал |
| F0F63808E17994E91FD397E3A54A80CB | 2. журнал |
| A3353EA094F45915408065D03AE157C4 | prevenue.hta |
| CE4549607E46E656D8E019624D5036C1 | 1.vbs |
| 1B90EFF0B4F54DA72B19195489C3AF6C | *.lnk |
| 1D64508B384E928046887DD9CB32C2AC | 성범죄자 신상정보 고지.pdf.lnk |
C2
- hxxps[:]//cdn[.]glitch[.]global/
- hxxp[:]//srvdown[.]ddns.net
Авторы
Диксит Панчал
Картик Дживани
Соумен Бирма



