Мне прислали архив
My_Wallet_XSGD__XSGD_.zipпредположительно кошелёк для XSGD, сингапурского стейблкоина. Внутри оказалось два файла:My Wallet 2026.exe(11 МБ) иXSGD.bin(580 КБ). Запустить я его не стал вместо этого разобрал статически. Вот что внутри.
Что такое XSGD и почему это важно
XSGD — это токен стандарта ERC-20, выпускаемый компанией StraitsX (бывший Xfers), привязанный к сингапурскому доллару один к одному. Торгуется на централизованных и децентрализованных биржах, используется для переводов внутри Юго-Восточной Азии.
Легитимного standalone-кошелька для XSGD в формате .exe в zip-архиве не существует. XSGD хранится в обычных Ethereum-кошельках MetaMask, Trust Wallet, аппаратных кошельках. Сам по себе факт существования такого файла красный флаг.

Первый слой: упаковщик
My Wallet 2026.exe — это PE32+ файл под x86-64, скомпилированный 18 марта 2026 года. Размер заголовков и секций — 326 КБ, всё остальное (11,1 МБ) это overlay данные после последней секции.
В overlay обнаруживается сигнатура PyInstaller: MEI\x0c\x0b\x0a\x0b\x0e. Это стандартный CArchive формат, которым PyInstaller упаковывает Python-приложения в один исполняемый файл. Внутри архива: Python 3.14, Tkinter/Tcl-Tk для GUI, стандартные модули и несколько нестандартных записей.
Одна из них называется Clip.exe.

Второй слой: Clip.exe
43 КБ, .NET Framework 4.5, скомпилировано с флагом asInvoker. При статическом анализе строк картина становится очень конкретной.
Пространства имён и классы:
Stub.TelegramAPI
Stub.TelegramAPI.SendDocument
Stub.Help.FileReplace
Stub.Help.StringHelper
Stub.Help.Modules.Loader
Stub.Startup
Stub.Protection
Stub.Install
Это не сторонние библиотеки. Это классы самого трояна с прозрачными именами.
Что умеет делать Clip.exe:
Клипбординг — основная функция. Классы GetClipboardText, SetText, GetBestWallet и поле addresses указывают на стандартную схему: мониторинг буфера обмена через AddClipboardFormatListener (Win32 API), при обнаружении крипто-адреса — подмена через SetText на адрес атакующего из локального списка addresses. Название GetBestWallet намекает на логику выбора: скорее всего, выбирает адрес подходящей сети под скопированный формат (Bitcoin начинается с 1, 3 или bc1; Ethereum с 0x; и т.д.).
Эксфильтрация через Telegram — поля botToken и chatId захардкожены в бинаре (при динамическом анализе их можно было бы извлечь из памяти). Метод SendDocument в комбинации с ScreenShot отправляет скриншоты жертвы в Telegram-бот атакующего. Это уже выходит за рамки простого клипбординга.
Закрепление в системе — три механизма одновременно: AddToStartup (ключ реестра HKCU\...\Run), autoRun_COM (регистрация как COM-объект — сложнее обнаружить), autoRun_Scheduler (Task Scheduler). Один из трёх почти наверняка переживёт поверхностную очистку.
Мониторинг USB — WatchUSB/USBWatcher отслеживают подключение новых устройств через WM_DEVICECHANGE. Вероятно, для распространения копии трояна на флешку.
Загрузчик — поля loaderFileUrl и apiUrl плюс класс Loader означают, что это не конечный payload. При определённых условиях (или просто при каждом запуске) скачивается что-то ещё.
Антиэмуляция — класс AntiEmulation присутствует. Что именно проверяется без динамического анализа неизвестно, но типичный набор: количество процессов, наличие виртуального дисплея, имена запущенных процессов (VBoxService, vmtoolsd и т.д.).
Зачистка следов — ZoneIDCleaner/RemoveZoneIdentifier удаляет Zone.Identifier ADS с файлов, скачанных из интернета. Это убирает предупреждение Windows Defender при первом запуске.
Сбор информации — GetHardwareId, GetIP, метод опроса WMI через ManagementObjectSearcher. Fingerprinting жертвы перед отправкой данных.
Как это работает в связке
Пользователь запускает My Wallet 2026.exe. Python-обёртка показывает какой-то Tkinter-интерфейс — достаточно убедительный, чтобы не вызвать немедленных подозрений. В фоне распаковывается и запускается Clip.exe. Он удаляет с себя Zone.Identifier, прописывается в трёх местах автозапуска, проверяет среду на признаки sandbox, получает IP жертвы и hardware ID, отправляет первый отчёт в Telegram.

Дальше — ожидание. Как только пользователь копирует что-то похожее на адрес кошелька, буфер обмена подменяется. Деньги уходят атакующему. Жертва видит только то, что транзакция прошла не туда, и, как правило, уже после подтверждения.
Параллельно Clip.exe периодически делает скриншоты и отправляет их оператору на случай если в буфер обмена попадут seed-фразы, пароли, данные входа в биржи.
Индикаторы компрометации
| Что | Значение |
|---|---|
SHA256 My Wallet 2026.exe | 86476e72184b949fac65596c76a98a644d8521b57dffed0648174e6660d974e9 |
SHA256 Clip.exe (распакованный) | f90327d282e4bbd97cf561965f0397e2d2f942fdd7cde5a0ad7d030d7ee33dcf |
| Timestamp | 2026-03-18 09:05:41 UTC |
| .NET GUID | 57E49C7E-C361-4A7F-8890-D665B3B9CB4F |
Если файл уже запускался, нужно проверить:
HKCU\Software\Microsoft\Windows\CurrentVersion\Runналичие новых записейHKCU\Software\Classes\CLSID\— COM-записи с нестандартными GUID- Task Scheduler — задачи без явного источника
- Процессы с именами
Clip.exeили производными - Исходящие соединения на
api.telegram.org
Почему это работает
Клипбординг существует давно — первые образцы под Bitcoin появились около 2017 года. Живучесть схемы объясняется просто: пользователи не проверяют адрес после вставки. Адрес кошелька это 42 символа случайного вида, сравнивать первые 4 и последние 4 лень, сравнивать полностью не приходит в голову.
Атакующие это знают и генерируют адреса с совпадающим префиксом и суффиксом так называемый vanity address. Инструменты для этого общедоступны. Жертва, даже если и смотрит на адрес, видит знакомые символы в начале и конце и не замечает подмены в середине.
Встраивание в поддельный кошелёк добавляет слой доверия: человек сам ищет нишевый инструмент, находит «официальный» архив, запускает. Сценарий работает лучше, чем рассылка по почте.
Что делать, если запустил
Отключить машину от сети сразу. Не пытаться «просто удалить файл» три механизма автозапуска это не лечат.
Дальше — загрузка с внешнего носителя, полная проверка системы антивирусом (Defender в этой ситуации может не увидеть часть, потому что Zone.Identifier уже удалён). Все крипто-активы перевести на новые адреса немедленно, потому что seed-фразы могут быть уже скомпрометированы через скриншоты. Пароли от бирж и Exchange-аккаунтов сменить!
Восстановление из чистого снапшота если он есть самый надёжный путь.
Этот образец — не особо изощрённый. .NET без обфускации, имена классов говорящие, Telegram как C2 без дополнительного слоя анонимизации. Но он рабочий, свежий (март 2026), и цепочка доставки через поддельный нишевый кошелёк достаточно убедительная для своей целевой аудитории.
BTC (Legacy): 1Br6Thztoei1HqqGDZY1ksJdn7v4h6kXar, 1K3bQ5hyCqouLKGm4YChmu7uDdZo3ucREy, 1Pq1nwLoMhTWqzRsAH8t1WrYgBHhHBSciq, 1BuKbHhBPURpkRdhW1buD9Bg9h9FMVG4h5
BTC (P2SH): 3HxybeHMFdPd8jAyysUR7iyJ12zteJY8VG, 3BufmhW2UEeTZq2CVXk3maPesghUubMzsy, 37pnNBT1862CKWFqFbDPrYyTCQtSouRP49
BTC (Bech32): bc1qpapycp55qem39g52k4u6clzxqs0dadtz4x6c2s, bc1qxcqgg8zq5k5nsgewcyfmadudfqmc9yktmzklt7
ETH/ERC-20 (XSGD): 0xBE372a40Ea19DB6F4641963B4741B1fF6a0De734, 0xCaf2C54E400437da717cF215181B170F65187aBf, 0x86e83a28BAc0359Ff6672bB6e1A474E527264641
TRON: TQyW71eg3DZrWEiK4nBKjR6Z7mr2YBhYPo, TAbCekcoiqvqkuW9p27HM1AEmKJ5hcuJES
Плюс Monero, XRP, Stellar, Zcash, Dash, BNB, TON, Solana всего ~15 монет охвачено.
Для проверки: BTC — mempool.space или blockstream.info, ETH — etherscan.io, TRON — tronscan.org. ETH-адреса особенно интересны — именно там живёт XSGD.