Содержание
- Введение
- Ключевые цели.
- Пострадавшие отрасли.
- Географический фокус.
- Цепочка заражения.
- Первоначальные результаты
- Взгляд в документ-приманку
- Технический анализ
- Этап 1 – Вредоносный LNK-скрипт
- Этап 2 – Псевдополиглотский трюк: все в одном.
- Этап 3 – Финальная полезная нагрузка: LOTUSHARVEST
- Инфраструктура и атрибуция.
- Заключение
- Seqrite Защита.
- МНК
- MITRE ATT&CK.
- Авторы
Введение
SEQRITE Лаборатория APT-Team отслеживает угрозы по всему миру и недавно обнаружила кампанию, нацеленную на вьетнамские ИТ-отделы и HR-рекрутеров, с использованием поддельных резюме, составленных на основе псевдо-полиглотических языков. Другие исследователи Мы также наблюдали такую же активность. Мы назвали кампанию «Операция «Ханойский вор»» из-за конечной полезной нагрузки, её возможностей, ориентированных на кражу данных, и географического расположения в резюме, которое находится недалеко от Ханоя, столицы Вьетнама. Злоумышленник в основном использует тип файла, который мы называем псевдополиглотной полезной нагрузкой, чтобы скрыть вредоносные намерения.
В этой статье мы объясним всю цепочку заражения, начиная с поведения кампании и давая технический анализ этой многоэтапной кампании. На первом этапе мы увидим ZIP-файл, который является вредоносным фишинговым вложением к электронному письму. ZIP-файл содержит два файла: документ, который служит одновременно приманкой и полезной нагрузкой второго этапа, и LNK-файл, запускающий первоначальную реакцию. Позже мы рассмотрим полезную нагрузку заключительного этапа — C++ DLL-имплант, который мы называем LOTUSHARVEST и который выполняется посредством загрузки DLL на целевой компьютер. И наконец, мы сосредоточимся на инфраструктуре и других деталях кампании.
Ключевые цели
Затронутые отрасли
- Информационные технологии
- Рекрутинговые и кадровые агентства
Географический фокус
- Вьетнам
Цепочка заражения

Первоначальные результаты
Первоначально, 3 ноября 2025 года, наша команда обнаружила вредоносный фишинговый ZIP-файл с именем Le-Xuan-Son_CV.zip, который появился как в нашей частной телеметрии, так и в известном общедоступном корпусе вредоносных программ, который через VirusTotal. ZIP-архив содержит два файла.

Первый файл — это LNK-файл с именем CV.pdf.lnk. Второй файл — это то, что мы называем псевдополиглотной полезной нагрузкой, offsec-certified-professional.png, которая служит приманкой и одновременно контейнером для полезной нагрузки .bat(пакетного) скрипта. Теперь давайте сначала рассмотрим приманку-приманку.
Взгляд в документ-приманку
При запуске PDF-файла с помощью универсального анализатора PDF-файлов или средства просмотра документов мы видим, что он содержит резюме человека по имени «Ле Суан Сон».

При изучении содержимого приманки, которая на момент нашего исследования, по нашему мнению, была разработана для проведения предвыборной кампании, мы обнаружили, что человек претендует на должность разработчика программного обеспечения, однако имя файла, которое мы видели ранее, offsec-certified-professional, относящееся к области информационной безопасности, вызывает опасения, связанные с виктимологией, поскольку резюме, доступное в ZIP-архиве, принадлежит специалисту по программной инженерии.
Ну, как уже упоминалось, чтобы завоевать доверие жертвы и создать репутацию под ее влиянием, а также усилить мотивы социальной инженерии, злоумышленник также прикрепил URL-адрес GitHub аккаунта, который был создан еще в 2021 году. В резюме указано местонахождение заявителя: Ханой, Вьетнам.

Изучив профиль GitHub, упомянутый в резюме, мы обнаружили, что у учетной записи нет обновлений или активности, что указывает на высокую вероятность того, что она была специально создана для этой фишинговой кампании.
В следующем разделе мы рассмотрим, как LNK-файл выполняет многоязычную полезную нагрузку и как работает полученный вредоносный DLL-файл.
Технический анализ
Мы разделим наш анализ на три части. Во-первых, мы рассмотрим вредоносный файл ярлыка (.LNK). Во-вторых, мы перейдём к анализу второго этапа, также известного как псевдополиглот, и того, как вредоносная командная строка, присутствующая в файле ярлыка (.LNK), использует уникальный способ запуска псевдополиглота. В-третьих, и наконец, мы сосредоточимся на DLL-импланте, известном как LOTUSHARVEST. Затем, в другой части, мы рассмотрим мельчайшие детали кампании, такие как инфраструктура и многое другое.
Этап 1 – Вредоносный LNK-скрипт
При распаковке ZIP-файла первым исполняемым документом является LNK-файл, который отвечает за выполнение псевдополиглотной полезной нагрузки второго этапа.

Теперь, просматривая сведения о LNK, мы обнаружили интересный параметр в аргументах командной строки, а именно использование ftp.exe для выполнения псевдополиглотного файла с флагом, известным как -s; при выполнении LNK-файла он выводит резюме на экран, в то время как, с другой стороны, пакетный сценарий, с которым мы познакомимся в следующей части, выполняется с использованием LOLbin ftp.exe.
Что ж, назвать это злоупотреблением LOLBIN было бы не совсем простым поведением, ориентированным на TTP, и мы объясним это в следующем разделе.
Этап 2 – Псевдополиглотский трюк: все в одном.

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

Заглянув в шестнадцатеричный редактор, мы обнаружили, что он содержит набор вредоносных скриптов, которые выполняются до появления заголовков PDF Magic. Поэтому мы выделили этот скрипт.


А теперь немного интересная, но простая часть, которая была обнаружена исследователи безопасности Несколько лет назад, несмотря на то, что ftp.exe используется для подключения к FTP-серверу и выполнения таких команд, как загрузка или эксфильтрация, в ходе этой кампании мы наблюдали, как исполняемый файл FTP вызывал команды на локальном компьютере, отмеченные знаком «!». Таким образом, исполняемый файл ftp.exe выполнял указанные выше команды или скрипты на целевой машине.
Теперь, изучая скрипт, мы видим, что он изначально использует LOLBIN, известный как DeviceCredentialDeployment.exe, который по сути привык прятать Двоичный файл cmd.exe. Далее, анализируя команды скрипта, он находит двоичный файл certutil.exe и переименовывает его в lala.exe. Затем пакетный скрипт начинает работу с переименования файла offsec-certified-professional.png в CV-Nguyen-Van-A.pdf, а затем запускает Проводник для отображения поддельного PDF-файла жертве.

Затем скрипт ищет в файле псевдополиглота фрагмент данных, закодированный в формате Base64, для полезной нагрузки, встроенной в его содержимое. Затем он извлекает эти закодированные данные, декодирует их и создает DLL-файл с именем MsCtfMonitor.dll, помещая его в C: \ ProgramData каталог, который мы отслеживаем как имплант LOTUSHARVEST.

Скрипт также копирует исходный файл ctfmon.exe из папки System32 в то же место, что и DLL-файл, а затем запускает его. Как мы видели, декодированная DLL-библиотека называется MsCtfMonitor.dll, что является файлом библиотеки, импортированным двоичный файл ctfmon.exe, в соответствии с порядком поиска DLL Windows сначала проверяет ту же папку, что и исполняемый файл, и загружает эту DLL оттуда, таким образом, это случай загрузки DLL извне.
В следующем разделе мы рассмотрим работу вредоносного DLL-импланта, известного как LOTUSHARVEST, который является последней полезной нагрузкой кампании.
Этап 3 – Финальная полезная нагрузка: LOTUSHARVEST

Первоначально мы проверили наличие вредоносного ПО с помощью инструментов анализа файлов, и, как обычно, оказалось, что это 64-битный PE-файл. Анализ DLL-файла показал, что вредоносная нагрузка функционирует как средство кражи информации. В следующем разделе блога мы подробно рассмотрим его функционал.
![]()
Прежде чем углубляться в основные функции и особенности этого импланта, мы также обнаружили интересный путь PDB, который TA обозначил как DEV-LOADER. Но мы отслеживаем его как LOTUSHARVESTER.
Антианалитические проверки

Имплант действительно использовал некоторые из методов антианализа, которые мы обнаружили, например, он проверяет, запущена ли программа в виртуальной среде, и если он обнаруживает такое состояние, то принудительно вызывает сбой. для этого и многое другое, о чем говорится ниже.
IsProcessorFeaturePresent: Он проверяет определенную функцию ЦП и, если она обнаружена, немедленно инициирует быстрое завершение работы в качестве меры противодействия анализу, чтобы избежать выполнения на современных ЦП, виртуальных машинах или защищенных средах.
IsDebuggerPresent: Очень распространенный метод, при котором проверяется, подключен ли отладчик пользовательского режима. Если отладчик обнаружен, программа аварийно завершает работу.
Поддельные исключения: Программа имитирует сбой, создавая поддельное исключение и поддельное состояние процессора, меняет место, где код «притворяется» работающим (RIP/RSP), а затем отправляет его в UnhandledExceptionFilter(). Это обманывает отладчики, портит стек вызовов и скрывает истинную работу программы.
Теперь перейдем к той части, где имплант фокусируется на сборе учетных данных на основе браузера.
Сбор истории браузера и сохраненных учетных данных

Теперь мы увидели, что другой экспорт, известный как DoMsCtfMonitor, содержит вредоносный код, который выполняет определенные функции.

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



Как мы видим, имплант нацелен на такие браузеры, как Google Chrome, Microsoft Edge, и он делает это, изначально открывая и считывая содержимое файлов, затем, после их сбора, имплант прикрепляет имя компьютера и имя пользователя жертвы, которые были возвращены такими функциями, как GetComputerNameA и GetUserNameA, прежде чем начать извлечение данных, создавая уникальную запись на стороне субъекта угрозы.

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

Затем он открывает Данные для входа базы данных, считывает до пяти сохраненных учетных данных и пытается расшифровать каждый пароль, используя классический API CryptUnprotectData.
Эксфильтрация данных

В следующей функции мы наблюдали, как имплант извлекает данные, используя API Windows WinINet. Он открывает HTTP-сеанс и подключается к контролируемому злоумышленником серверу eol4hkm8mfoeevs.m.pipedream.net через порт 443. После установления соединения он отправляет POST-запрос к конечной точке /service и отправляет украденную информацию о браузере в виде JSON-данных.
Теперь, в следующей части, мы рассмотрим инфраструктурные детали, связанные с кампанией.
Инфраструктура и атрибуция
В ходе анализа мы обнаружили, что полезная нагрузка взаимодействует с несколькими внешними конечными точками. Одним из выявленных доменов был uuhlswlx[.]requestrepo[.]com, представляющий собой случайно сгенерированный поддомен, в то время как другой домен, eol4hkm8mfoeevs[.]m[.]pipedream[.]net , также является случайно сгенерированным поддоменом, который в первую очередь использовался для кражи собранных учётных данных. Итак, это краткое описание инфраструктуры, связанной с этим имплантом.

Используя самый простой поиск OSINT, мы также обнаружили тот факт, что контактный номер, который ТА использовал в поддельном резюме, а именно +84912345678, принадлежит хорошему магазину в районе города Ханой, хотя это и не может быть точно установлено, поскольку зачастую в разных местах указываются неправильные или поддельные контактные номера.

Что ж, сосредоточение внимания на деталях, связанных с атрибуцией, требует конкретных доказательств по нескольким параметрам, таким как повторное использование тактик, методов и процедур, повторное использование инфраструктуры и виктимология. Как мы уже видели ранее, примерно в марте 2025 года, вероятно, Спонсируемая Китаем государственная группировка нацелилась на Вьетнам с поддельной приманкой на основе CV, где название приманки выделяется как CV-Nguyen-Lam-San-Xuat-Noi-Dung-Compress.pdf; также в этой же кампании мы видели название приманки как `CV-Nguyen-Van-A, использовалась похожая номенклатура, что добавляет очень мало уверенности в отнесении обеих кампаний к схожему кластеру одной и той же угрозы.
Ну, еще одним очень распространенным, но простым совпадением между обеими кампаниями является использование случайных доменов, ориентированных на DGA, для доставки имплантов, а также серверов управления и контроля (C2), которые использовались в обеих кампаниях, что снова добавляет очень мало уверенности в атрибуции обеих кампаний, и последнее, но не менее важное сходство между обеими кампаниями заключается в использовании схожей виктимологии, то есть таргетингового программного обеспечения и сферы рекрутинга.
Теперь, как исследователи, мы считаем, что наша предвзятость должна быть релевантна не только совпадениям, но также и уникальным не похожим артефактам. В данном случае мы видим, что злоумышленник использовал имплант LOTUSHARVEST, который функционирует как похититель информации. Это вызывает опасения, что спонсируемое китайским государством злоупотребление DLL-Sideloading, однако они используют известные импланты, такие как PlugX и многое другое. Поэтому рассмотрение похитителя было бы противоречивой и уникальной метрикой.
Таким образом, со средней степенью уверенности, сосредоточившись на совпадениях и различиях между предыдущими кампаниями угроз, свидетелями которых мы были, их ТТП и многом другом, мы решили отнести эту угрозу к китайскому происхождению, хотя для того, чтобы отнести ее к категории спонсируемой государством, на данный момент по-прежнему требуются другие важные показатели.
Заключение
SEQRITE Группа APT идентифицирует операцию «Ханойский вор» как целевую фишинговую кампанию, направленную на IT-специалистов и специалистов по подбору персонала во Вьетнаме. Для обмана жертв используются поддельные резюме и файлы ярлыков, после чего злоумышленники используют доверенные инструменты Windows для запуска скрытых скриптов. Финальная полезная нагрузка, называемая LOTUSHARVEST, представляет собой DLL-внедрение, которое крадет учетные данные и историю браузера, а затем отправляет их на серверы злоумышленников. Тактика и совпадения с более ранней деятельностью указывают на китайское происхождение хакера, хотя государственное финансирование не подтверждено.
Seqrite Protection
- Троян.50086.SL
- Троян.A18678918
- Области применения
МНК
| Хеш (SHA-256) | Тип вредоносного ПО |
| 1beb8fb1b6283dc7fffedcc2f058836d895d92b2fb2c37d982714af648994fed | Файл ZIP |
| 77373ee9869b492de0db2462efd5d3eff910b227e53d238fae16ad011826388a | Файл LNK |
| 693ea9f0837c9e0c0413da6198b6316a6ca6dfd9f4d3db71664d2270a65bcf38 | Псевдополиглотная полезная нагрузка (PDF, пакет) |
| 48e18db10bf9fa0033affaed849f053bd20c59b32b71855d1cc72f613d0cac4b | DLL файл |
MITRE ATT & CK
| тактика | Идентификатор техники | Название техники |
| Первоначальный доступ | T1566.001 | Вложение для целевого фишинга |
| Развитие ресурсов | T1587.001 | Разработка полезных нагрузок: вредоносное ПО |
| Типы | T1204.002 | Пользовательское выполнение: вредоносный файл |
| T1218 | Выполнение подписанного бинарного прокси-кода | |
| Уклонение от защиты | T1036.007 | Маскарад: вводящее в заблуждение расширение файла |
| T1140 | Деобфускация файла | |
| Повышение привилегий | T1574.002 | Боковая загрузка DLL |
| Дискавери | T1082 | Обнаружение системной информации |
| T1012 | Обнаружение файловой системы для данных браузера | |
| Доступ к учетным данным | T1555.003 | Учетные данные из хранилищ паролей |
| | T1005 | Данные из локальной системы |
| эксфильтрации | T1041 | Эксфильтрация через канал C2 |
| Управление и контроль | T1071.001 | Веб-протокол: HTTPS |
Авторы
- Субхаджит Сингха
- Прия Патель



