Seqrite Analyzes Operation Dragon Weave’s Azure-Based C2 Campaign

· Original article ↗

Summary

Seqrite details a spearphishing campaign targeting the Czech Republic and Taiwan that delivers AZUREVEIL, an Adaptix C2 agent using Azure Blob Storage. The researchers assess a China-based link with moderate confidence.

Key points

  • The campaign used region-specific lures and ZIP attachments targeting people and organizations in the Czech Republic and Taiwan.
  • Two delivery paths—a malicious LNK with VBScript and PowerShell, or a Rust-compiled executable—converged on DLL sideloading and the RUSTCLOAK loader.
  • RUSTCLOAK used sandbox checks, layered decryption and Windows fibers to load AZUREVEIL in memory.
  • AZUREVEIL is an Adaptix C2 agent with 36 commands, including file operations, data exfiltration, proxying and in-memory BOF execution.
  • The agent used Azure Blob Storage at note1ggbbhggdwa1[.]blob[.]core[.]windows[.]net for dead-drop command-and-control over HTTPS.
  • Seqrite links the campaign to a China-based threat actor with moderate confidence but does not attribute it to a specific known group.

Article Details

Attack Vectors
  • Spearphishing ZIP attachments used region-specific Czech and Traditional Chinese lures to deliver a malicious LNK file or executable.
  • The LNK path launched empty.vbs and Profile.ps1 to decrypt 1.dat and execute RuntimeBroker_update.exe; the executable path extracted and launched components directly.
  • RuntimeBroker_update.exe sideloaded a malicious UnityPlayer.dll, which loaded the RUSTCLOAK loader and then AZUREVEIL in memory.
  • AZUREVEIL used Azure Blob Storage as dead-drop command-and-control and supported file exfiltration, remote commands, proxying, and in-memory BOF execution.
Defensive Notes
  • Monitor for the campaign's reported Azure Blob Storage C2 hostname, note1ggbbhggdwa1[.]blob[.]core[.]windows[.]net, while accounting for legitimate Azure traffic.
  • Investigate the listed SHA-256 hashes and the reported LNK, executable, DLL, script, and encrypted-payload artifacts.
  • Inspect suspicious ZIP contents and chains involving hidden VBScript or PowerShell execution, RuntimeBroker_update.exe, and UnityPlayer.dll sideloading.
  • Sandbox analysis may be evaded: RUSTCLOAK reportedly exits when the computer name matches its hardcoded list of analysis-system names.

Indicators of compromise

TypeIndicatorContext
DOMAINnote1ggbbhggdwa1[.]blob[.]core[.]windows[.]netReported Azure Blob Storage dead-drop C2 hostname used by AZUREVEIL.
SHA25602542a49b3bd6bd2795afb67840acb4557b17e017f7503dd03ebe3aeeb28720eSHA-256 of the decoy PDF embedded in the executable dropper, listed in the IOC table.
SHA256047687548605734348792e2a9d771b6cba42facd0d0d7d44d778290a25848574SHA-256 of 1.dat, the encrypted container decrypted by Profile.ps1 to produce RuntimeBroker_update.exe.
SHA256080ab9bc2893ba7bad354551604a667af40ed2ae2d042d2323c2bd9ad3122192SHA-256 of the malicious UnityPlayer.dll sideloading component listed in the article's IOC table.
SHA256096372d19b4787e989f44e04c5ecc29885aa927c34ae8666628d6c0eb20bb447SHA-256 of the malicious LNK delivery file listed in the article's IOC table.
SHA2561c56228cbd1bdebb9e5ea55c2749150fee06c865ede4a3754e8bd6843e51d2d4SHA-256 of the executable dropper listed in the article's IOC table.
SHA25624aa4e780ccd66cef13da9ef98c32954105cf2a32ec643efab0ba1aa2d6352f4SHA-256 of Com.dat, the encrypted payload read by RUSTCLOAK, listed in the IOC table.
SHA2565ed14c2b7f7433a1a72dd6b668413f935a217ba10b69d89b774a82990fa12fe1SHA-256 of BrowserViewUtility.exe, a component used in the executable delivery path and listed in the IOC table.
SHA25661f7d9cd2d8ce7df950639b23ce90085b300b0c6dd0d8d934bba8fdecb670f15SHA-256 of RuntimeBroker_update.exe, the executable used for DLL sideloading, listed in the IOC table.
SHA256783661d0f7edb338d2d50be087764d82dbbc9ee7989ddc57db1801e4ec9045b0SHA-256 of azureveil.exe, the final payload listed in the article's IOC table.
SHA256823d5969db3f3b72ebbdce1b78752717ea849884a0fb40d86146416c38e128deSHA-256 of Profile.ps1, the script that decrypts 1.dat and executes the next-stage binary.
SHA2568ae7c82a3e4f742777e590b25a1c563d19bd9bcba2a387d004aae72c4b2828f9SHA-256 of a lure PDF found in the extracted archive, listed in the IOC table.
SHA256a4e9f9919d62589b57cfa08c9ccb89e386b09f683271373413cd8e8c8c7d1c5aSHA-256 of empty.vbs, the script that launches the PowerShell stage, listed in the IOC table.

MITRE ATT&CK

T1016 · System Network Configuration DiscoveryAZUREVEIL supported network-adapter enumeration, including MAC address, IP address, and adapter type.T1027 · Obfuscated Files or InformationThe chain used XOR, modified RC4, Base64, and SM4-CBC processing to conceal payloads.T1041 · Exfiltration Over C2 ChannelThe agent uploaded files and execution results to Azure Blob Storage through its C2 channel.T1057 · Process DiscoveryAZUREVEIL supported listing running processes.T1059.001 · PowerShellThe LNK-triggered chain launched Profile.ps1 through PowerShell to decrypt 1.dat and execute RuntimeBroker_update.exe.T1059.005 · Visual Basicempty.vbs acted as a VBScript bridge that launched the PowerShell stage.T1083 · File and Directory DiscoveryAZUREVEIL supported listing directory contents and logical drives.T1090 · ProxyAZUREVEIL supported SOCKS proxy control and port forwarding for pivoting.T1102.001 · Dead Drop ResolverAZUREVEIL used Azure Blob Storage as a dead-drop resolver for exchanging commands and results.T1105 · Ingress Tool TransferAZUREVEIL supported dropping files from C2 to the victim system and queuing file downloads.T1204.002 · Malicious FileThe infection chain began when a victim clicked the LNK or ran the executable from the archive.T1497.001 · System ChecksRUSTCLOAK checked the computer name against a hardcoded list of sandbox and analyst-system names and exited on a match.T1566.001 · Spearphishing AttachmentThe campaign used spearphishing ZIP attachments containing a malicious LNK or executable and regional lure documents.T1573 · Encrypted ChannelThe agent exchanged encrypted beacons, commands, and results through HTTPS Azure Blob Storage traffic.T1574.002 · DLL Side-LoadingRuntimeBroker_update.exe loaded the malicious UnityPlayer.dll placed in the same folder.

Malware

Vendors

Products

Tools

Countries

Industries

Related Articles