| Resource Development | | C2 infrastructure uses legitimate cloud hosting providers (Alibaba Cloud, UCLOUD HK) to blend with normal enterprise traffic to hosted services. GoSerpent uses legitimate domain names as embedded secret keys (www.microsoft.com, www.spacex.com); Stowaway uses github.code, indicating a consistent methodology across tooling generations. | C2 connections to Alibaba Cloud and UCLOUD HK IP ranges that are not associated with any business service; embedded domain strings in Go binaries extracted during static analysis. |
|---|
| Initial Access | | The exact initial delivery mechanism for the 2025-2026 campaign has not been publicly documented. GoSerpent requires correct encrypted command-line arguments to operate, indicating operator-controlled deployment rather than self-spreading. The probable TetrisPhantom connection suggests prior use of trusted-channel access through hardware-encrypted USB drives; whether that vector was used in this campaign is unconfirmed. | First-seen execution of a Go-compiled binary with command-line arguments containing long base64-encoded strings; new processes masquerading as system names (lass.exe, updates.exe) in user-writable directories. |
|---|
| Execution | | ThumbcacheService and TmcLoader execute as registered Windows services. McMx is deployed by batch files using echo commands to write configuration files containing C2 parameters before executing the binary with those parameters. GoSerpent's remote shell command (Ss5 / Hello) can open interactive command access on the compromised host. | New service installation events (Event ID 7045) for ThumbcacheService and TmcLoader; cmd.exe with echo commands writing configuration files; process creation of Go binaries with base64 command-line arguments. |
|---|
| Persistence | | ThumbcacheService and TmcLoader both register as Windows services, surviving reboots. GoSerpent masquerades as legitimate system process names (lass.exe mimics lsass.exe; updates.exe mimics Windows Update processes) to evade visual inspection of running processes and process trees. The plausible naming is deliberate across all tools in the campaign. | Service creation for ThumbcacheService or TmcLoader (Event ID 7045); lass.exe or updates.exe executing from non-system directories; services registered with legitimate-sounding names that do not appear in the approved software baseline. |
|---|
| Defense Evasion | | ThumbcacheService uses XOR encryption with a single byte key (0x13) for string obfuscation. TmcLoader uses dynamic API resolution through circular XOR encryption combined with Base64 encoding to conceal API names. TmcPayload is decrypted in memory and injected into the svchost process, so no payload binary appears on disk. GoSerpent's command-line arguments are AES-CBC encrypted and base64-encoded before delivery. All tools use legitimate-sounding names. The network-share exfiltration channel looks identical to authorized file-copy operations. | Unusual memory segments in svchost not associated with a loaded DLL; XOR-heavy strings in service DLLs; base64 command-line arguments; a process accessing a network share with credentials belonging to a different user account than the process owner. |
|---|
| Credential Access | | Mimikatz, deployed via GoSerpent, dumps the LSASS process to extract credential material including Kerberos tickets and cached credentials. QuarksDumpLocalHash extracts local account password hashes from the SAM registry hive, providing material for offline cracking. The stolen credentials serve a specific operational purpose: they are used weeks later by TmcPayload to authenticate to internal network shares for exfiltration, producing no unusual authentication events because the credentials are legitimate. | LSASS handle access events with PROCESS_VM_READ from non-system processes (Event 10); mimikatz.exe or renamed variants; QuarksDumpLocalHash execution; SAM hive access from processes other than the Windows OS. |
|---|
| Discovery | | ThumbcacheService recursively scans the filesystem for documents with targeted extensions (.doc, .docx, .pdf, .xls, .xlsx), including the Recycle Bin for recently deleted files. The scanning is performed by a registered Windows service and is slow and persistent, not a rapid single-pass sweep, making it harder to distinguish from legitimate indexing services at the file-access level. | A Windows service process performing high-volume reads across user document directories and the Recycle Bin; file access patterns with a narrow extension filter across many directories over an extended time window; creation of the thumbcache_605a.db file in C:\Users\Public\. |
|---|
| Lateral Movement | | GoSerpent's Ss5 command establishes a SOCKS5 proxy on the compromised host, enabling the operator to route traffic through multiple compromised systems and mask the true origin of connections. Stowaway supports chained proxy paths across multiple hosts. TmcPayload uses SMB network shares with previously stolen credentials to transfer the collected data archive, mimicking legitimate file access. | New SOCKS5 listeners established by a Go binary; long-lived outbound connections at unusual hours from government workstations; svchost accessing a network share with credentials differing from the session user; SMB connections to non-administrative shares from a service process. |
|---|
| Collection | | ThumbcacheService targets documents across the filesystem including deleted files still in the Recycle Bin. Found files are archived using 7-Zip with a predefined password (@vx0a9n5W2M0c3D6.#) and a 20MB per-archive size limit. The archives are written into a database file (thumbcache_605a.db) in the C:\Users\Public\ directory, a world-writable location, and staged there for later retrieval. The monitoring of the Recycle Bin suggests deliberate targeting of files the victim attempted to delete. | 7-Zip executing as a service child process; creation of thumbcache_605a.db in C:\Users\Public\; password-protected 7-Zip archives in a 20MB pattern; a Windows service reading .doc, .docx, .pdf, .xls, .xlsx across many directories; access to $Recycle.Bin by a service process. |
|---|
| Command and Control | | GoSerpent encrypts all C2 communications using ChaCha20, with the SHA256 hash of the communication password as the encryption key. Stowaway uses AES-256-GCM or TLS over TCP, HTTP, or WebSocket, and supports chained SOCKS5 paths across multiple hosts. Both GoSerpent and Stowaway embed legitimate domain names (www.microsoft.com, www.spacex.com, github.code) as secret keys, which is both a credential mechanism and an obfuscation approach. Infrastructure uses legitimate cloud hosting to blend with normal traffic. | Encrypted outbound connections to Alibaba Cloud or UCLOUD HK IPs on non-standard ports; Go binary establishing SOCKS5 listeners; outbound HTTP or WebSocket sessions from system processes; ChaCha20-encrypted sessions that do not match known application profiles. |
|---|
| Exfiltration | | TmcPayload reads an encrypted configuration file (delivered separately by Stowaway) containing network share credentials and destination paths. It then transfers thumbcache_605a.db to the attacker-controlled destination using the stolen credentials over internal SMB file shares. The transfer looks identical to an authorized employee moving files because it uses valid credentials to access a legitimate internal share. No external data connection occurs during exfiltration. | svchost accessing a specific network share path using credentials not associated with the session user; transfer of thumbcache_605a.db; 7-Zip-format archives moved to a network share path matching a known destination pattern; SMB session authenticated by credentials previously seen in LSASS dump activity. |
|---|
| Reconnaissance / Privilege Escalation / Impact | — | No pre-attack reconnaissance or destructive impact has been documented. No privilege escalation techniques are described in current reporting; GoSerpent and the supporting tools operate with whatever privileges the initial foothold provides. The campaign is intelligence collection only. |
|---|