BRICKSTORM: UNC5221 Espionage Campaign Targeting VMware Infrastructure and Microsoft Identity
Source report →BRICKSTORM is a family of cross-platform backdoors attributed to the Chinese state-sponsored threat actor UNC5221, with Linux variants targeting VMware vCenter and ESXi hypervisor infrastructure and Windows variants observed in separate intrusions. The group targets organizations across the government, technology, defense, and legal sectors and has sustained confirmed dwell times exceeding 17 months. At least 12 distinct samples have been identified spanning Go-based, Rust-based, and .NET ahead-of-time compiled variants, reflecting active and ongoing malware development throughout the campaign.
According to GTIG, UNC5221 gains initial access through exploitation of zero-day and recently disclosed vulnerabilities in edge devices, though initial vectors are often unconfirmed due to log retention limits. Using stolen service account credentials, the actor moves via RDP to domain controllers to copy ntds.dit and harvest the full Active Directory credential set. On vCenter, BRICKSTEAL is deployed as a malicious Java Servlet filter that silently captures AD and SSO credentials from Tomcat authentication traffic. The actor also clones virtual machines hosting domain controllers or secrets vaults, mounts the offline filesystems to extract credentials, then destroys the clone without ever powering it on, bypassing any EDR coverage on the guest OS. The actor escalates privileges via sudo, deploys BRICKSTORM to paths mimicking legitimate VMware binaries, and modifies the init script for persistent execution. On Windows hosts, persistence is achieved through scheduled tasks.
BRICKSTORM provides a full remote access capability across the hypervisor filesystem, including file listing, upload, download, and deletion through a covert embedded web server, and also operates as a SOCKS proxy that enables the actor to route lateral movement traffic through the implanted vCenter host without exposing their own infrastructure. Because all file operations execute as internal API calls within the implant rather than spawning child processes, they produce no process creation events or command-line artifacts, making the activity invisible to EDR tooling even on systems where agent coverage exists. Command-and-control communications route through DNS over HTTPS using public resolvers from Cloudflare, Google, Quad9, and NextDNS, with the resolved endpoints reached via HTTPS with WebSocket upgrade and an additional nested TLS layer. C2 traffic is relayed through serverless hosting infrastructure including Cloudflare Workers, Heroku, and sslip.io, blending with legitimate cloud egress and making the connections resistant to blocking. BRICKSTORM also includes a self-watching mechanism that reinstalls the implant if its files are removed.
The actor uses the SOCKS proxy capability to move laterally via SMB to Active Directory Federation Services servers and exfiltrate ADFS token signing certificates, a high-value credential that enables unlimited token forgery against any federated identity provider. UNC5221 also backdoors high-privilege enterprise applications by granting mail.read and full_access_as_app permissions, enabling persistent tenant-wide email collection via Microsoft Graph and Exchange Web Services that survives subsequent credential rotations.
IOCs (18)
Scan your environment for IOCs →SHA256 FILE HASH 12
aaf5569c8e349c15028bc3fac09eb982efb06eabac955b705a6d447263658e38013211c56caaa697914b5b5871e4998d0298902e336e373ebb27b7db30917eaf57bd98dbb5a00e54f07ffacda1fea91451a0c0b532cd7d570e98ce2ff741c21db3b6a992540da96375e4781afd3052118ad97cfe60ccf004d732f76678f6820a22c15a32b69116a46eb5d0f2b228cc37cd1b5915a91ec8f38df79d3eed1da26bf7cda90174b806a34381d5043e89b23ba826abcc89f7abd520060a64475ed50639b3d8a8aedffc1b40820f205f6a4dc041cd37262880e5030b008175c45b0c4673fe8b8fb4bd7776362fd356fdc189c93cf5d9f6724f6237d829024c10263fe577b49c854afd6746fee393711b48979376fb910b34105c0e18a3fdc24ea31d5c6a67a9769a55ec889a5dd4199b2fc08965d39d737838836853bc13c81c56a800ed907d39efd5750236b075ca9fbb1f090d7bf578578c38faab24210d298a60ae24a11a26a2586f4fba7bfe89df2e21a0809ad85069e442da98c37c4add369a0cIP ADDRESS 1
149.248.11.71FILE NAME 2
vsm-boot-monitordvcentervsm-monitordvcenterMD5 FILE HASH 2
8af1c3f39b60072d4b68c77001d58109c65d7f8accb57a95e3ea8a07fac9550fDOMAIN 1
ms-azure.azdatastore.workers.devDetections (10)
Enable detections →Connect your environment for suggestions and queries personalized to your security telemetry.
- High-Risk Application Permission Granted to Service Principal
- Linux Init Script Modified by Root Process
- Bulk SharePoint File Download by Single User
- BRICKSTORM Indicator File Dropped to VMware Appliance System Path
- Outbound DNS-over-HTTPS to Public Resolver IP from Appliance Management Network
- ADFS Token Signing Certificate Private Key Accessed or Exported
- Sudo Privilege Escalation on VMware vCenter Appliance by Non-Standard Account
- VM Clone of Domain Controller or Secrets Vault for Offline Credential Extraction
- Outbound Connection from Appliance Management IP to Cloudflare Workers, Heroku, or sslip.io