Финальный ответ модели
start @ 0x140045A50 (MinGW CRT __mingw_CRTStartup)TlsCallback_0 @ 0x140024610, TlsCallback_1 @ 0x140045AE0, TlsCallback_2 @ 0x140045B70) — все являются стандартными функциями библиотеки std Rust для управления thread-local storage; выполняются до входа в PE-точкуpe_entry; они выглядят как CRT/runtime и не несят вредоносной логикиБинарник импортирует 12 DLL:
CreateProcessA, OpenProcess, AddVectoredExceptionHandler, CreateFileA, ReadFile, TerminateProcess, CloseHandle, Sleep, GetModuleFileNameA, GetTickCount64RegCreateKeyExA, RegOpenKeyExA, RegQueryValueExA, RegSetValueExA, RegDeleteKeyA, RegDeleteValueA, OpenSCManagerA, OpenServiceA, ControlService, EnumServicesStatusExA, StartServiceA, GetUserNameAWinHttpOpen, WinHttpConnect, WinHttpOpenRequest, WinHttpSendRequest, WinHttpReceiveResponse, WinHttpReadData, WinHttpCloseHandleCryptUnprotectData (дешифровка Chrome/Edge master key)BitBlt, GetDIBits, CreateCompatibleBitmap, CreateCompatibleDC, SelectObject, DeleteObject, DeleteDCcapCreateCaptureWindowA (захват экрана)GetExtendedTcpTablesub_14000F9D1)Функция проверяет наличие запущенных процессов браузеров и читает их профили:
chrome.exe): ищет файлы Cookies, Login Data в профиле %LocalAppData%\Google\Chrome\User Data\Default\, читает SQLite-базы, дешифрует master key через CryptUnprotectDatamsedge.exe): аналогично, путь %LocalAppData%\Microsoft\Edge\User Data\Default\firefox.exe): сканирует профили через FindFirstFileA/FindNextFileA, ищет файлы cookies.sqlite, logins.json%AppData%\Discord\Строки лога:
"[Chrome] Not running.\n[Chrome] Decrypting cookies...\n" @ 0x140080120"[Edge] Not running.\n[Edge] Decrypting cookies...\n" @ 0x140080202"Cannot decrypt master key.\n" @ 0x1400801dd"Discord is not running.\n" @ 0x14007ffee"Telegram is not running.\n" @ 0x140080331Функция-бэкон: sub_140001000 (2223 байта)
"Initializing HTTP transport..." @ 0x14007DB29WinHttpOpen → WinHttpConnect → WinHttpOpenRequest (GET) → WinHttpSendRequest → WinHttpReceiveResponse → WinHttpReadDatasub_140003CA0(v35, v15 + v32, v33, v94) — передача собранных данных в основной модуль кражиФункция POST-загрузки: sub_140012584 (678 байт)
WinHttpOpenRequest с методом POST ("aPost" @ 0x140080c9b контекст)WinHttpSendRequest с телом запроса (украденные данные)WinHttpReceiveResponse → WinHttpReadData для получения новых команд от C2"WinHttpReceiveResponse FAILED" @ 0x140080c9bSoftware\\Microsoft\\Windows\\CurrentVersion\\Run @ 0x14007fd88RegCreateKeyExA, RegSetValueExA для добавления записиRegOpenKeyExA (9 вызовов), RegQueryValueExA, RegDeleteValueA (4 вызова), RegDeleteKeyA (2 вызова)"HKCRHKEY_CLASSES_ROOTHKCUHKEY_CURRENT_USERHKLM" @ 0x1400806a8 — работа с несколькими корнями реестраBitBlt, GetDIBits, CreateCompatibleBitmap, CreateCompatibleDC, SelectObject, DeleteObject, DeleteDCcapCreateCaptureWindowA"src/modules/screenshot.rs" @ 0x14007efb0OpenSCManagerA, OpenServiceA, ControlService, EnumServicesStatusExA, StartServiceA, CloseServiceHandleAddVectoredExceptionHandler — регистрация VEH для обработки исключенийOpenProcess (2 вызова) — проверка на отладчики/процессы анализаsub_1400128AB() и sub_14001286D() — функции анти-отладки/анти-анализаGetTickCount64() % (2 * (v30 / 0x64) + 1) + v30 - v30 / 0x64CreateProcessA (5 вызовов) — запуск процессов, возможно для проверки браузеров или выполнения задач от C2TerminateProcess, CloseHandle — управление процессами.text (код), .rdata (данные/строки), .idata (импорт), .data (данные), .pdata (исключения), .tls (TLS-данные), .buildid.tls @ 0x1400a3000–0x1400a4000Бинарник представляет собой стелс-вор учётных данных (info-stealer), написанный на Rust (MinGW-компилятор). Основные функции:
CurrentVersion\Run)Бинарник не содержит жёстко закодированных URL C2 — адрес сервера, вероятно, загружается из ответа бэкон-запроса или конфигурируется отдельно. Дешифровка браузерных данных использует CryptUnprotectData (DPAPI) для master key Chrome/Edge.