Classification: TLP:WHITE | Intelligence Category: Active Malware Campaigns & Criminal Tooling | Pulses Analyzed: 3
Threat Summary
Three concurrent OTX pulses paint a picture of a maturing criminal and espionage ecosystem that is converging on the same core technique: abusing legitimate, trusted infrastructure to hide command-and-control traffic and evade perimeter defenses.
C2Looper is a new Rust-based backdoor assessed with low-to-medium confidence to be delivered via multi-stage ClickFix social engineering chains — the same initial-access technique that has been tied to the Oyster/Lactrodectus loader ecosystem operated by initial access brokers (IABs). Its most notable feature is the use of GitHub as a C2 channel, meaning its traffic blends into developer-friendly egress that most organizations cannot block outright. Zscaler assesses it is likely operated by ransomware-affiliated actors, positioning C2Looper as a pre-ransomware staging implant: remote shell, host reconnaissance, and follow-on payload deployment.
Operation QUICSILVER is a China-nexus espionage campaign targeting Myanmar government personnel and diplomats. The infection chain begins with Burmese-language lures impersonating Myanmar's Information Technology and Cyber Security Department — including graduation ceremony invitations — delivering Virtual Hard Disk (VHD) files disguised as JPEG images. The payload, QUICAgent, is a Go-based backdoor that communicates over the QUIC protocol (UDP/443) through Cloudflare Workers, again hiding espionage traffic inside trusted cloud infrastructure.
Operation ASTERIX is not malware in the traditional sense but a full crypto-fraud pipeline exposed through an open directory on criminal infrastructure. The operator held datasets of roughly 885,000 phone numbers validated against cryptocurrency exchanges, account-enumeration tooling, phishing panels, voice-dialing scripts for vishing, and fake wallet applications impersonating Ledger, Trezor, and Exodus — Electron-based malware engineered for seed-phrase theft, with exfiltration via Telegram. The tooling shows hallmarks of AI-assisted development, including jailbreak-prompt artifacts.
Collective assessment: All three operations weaponize trust — trusted file types, trusted cloud platforms (GitHub, Cloudflare), and trusted brands (Ledger, Kraken, Trezor). Detection strategies must shift from blocking known-bad infrastructure to behavioral analytics on process execution, protocol anomalies, and cloud-service abuse.
Threat Actor / Malware Profile
C2Looper (Rust-based backdoor)
- Distribution: Multi-stage ClickFix infection chains — victims are socially engineered into pasting malicious commands into Run/Terminal dialogs, launching downloader stages.
- Payload behavior: Remote shell execution, system reconnaissance (host, user, network enumeration), and retrieval/deployment of additional payloads consistent with IAB pre-ransomware staging.
- C2 communication: Leverages GitHub infrastructure as a dead-drop/command channel, making C2 traffic indistinguishable from legitimate developer activity at the domain level. Related infrastructure observed at 45.158.196.0/24.
- Delivery technique: DLL sideloading is used to execute the payload under the cover of a legitimate signed binary.
- Anti-analysis: Rust compilation produces large, symbol-heavy binaries that break many YARA signatures tuned for C/C++ malware and frustrate static disassembly; dynamic API resolution obscures imports.
QUICAgent (Go backdoor — Operation QUICSILVER)
- Distribution: Spearphishing with Burmese-language lures (fake graduation invitations, IT department notices); VHD files masquerading as JPEG images. Mounting the VHD exposes the staged payload.
- Payload behavior: Go-based backdoor providing remote tasking against government and diplomatic targets.
- C2 communication: QUIC protocol (UDP/443) terminated at Cloudflare Workers — a double evasion: QUIC bypasses TCP-only inspection, and Cloudflare Workers provides reputable, hard-to-block egress.
- Target profile: Myanmar diplomats and government entities; adjacent Technology sector targeting noted.
Operation ASTERIX tooling (crypto fraud pipeline)
- Distribution: Vishing (voice phishing) using validated phone-number datasets (~885K numbers checked against exchanges such as Kraken), followed by phishing panels directing victims to fake wallet software.
- Payload behavior: Electron-based fake Ledger/Trezor/Exodus wallet applications that harvest seed phrases and wallet credentials; exfiltration over Telegram bots/API.
- Notable artifacts: Account-enumeration scripts, voice-dialing automation, and jailbreak-prompt remnants indicating AI-assisted code generation — lowering the skill barrier for the operators.
IOC Analysis
The indicator set across these pulses spans four types, each requiring different operational handling:
- IPv4 (C2Looper):
45.158.196.184,45.158.196.23— bulletproof-hosted infrastructure in a /24 that should be treated as hostile in full. Block at the firewall/egress proxy and retro-hunt netflow and DNS resolution logs for the past 30–90 days. - Domains (ASTERIX):
ledgerhelp.com— brand-impersonation phishing infrastructure. Block at DNS/web proxy; add to brand-monitoring watchlists. Expect lookalike rotation (e.g., ledger-, trezor- variants) — monitor DNS for fuzzy matches. - URLs (ASTERIX):
http://136.0.213.184:1337/api/kraken-numio— an account-enumeration API endpoint. The non-standard port 1337 and path structure are themselves detectable patterns. Block the IP:port pair; alert on outbound connections to uncommon high ports on bare IPs. - File hashes (SHA256/SHA1/MD5 across all three pulses): Load into your EDR blocklist and threat intel platform (MISP, ThreatConnect, Sentinel TI). Note QUICSILVER hashes cover VHD containers and Go payloads; ASTERIX hashes cover Electron wallet installers — hunt for these in email gateways, download caches, and software-inventory telemetry.
Operational tooling: Decode and pivot with Maltego or the OTX DirectConnect API for infrastructure relationships; CyberChef for any base64/encoded C2 configs extracted from samples; Wireshark with QUIC dissection for UDP/443 analysis (QUICAgent); VT Enterprise / Hybrid Analysis for sandboxing the hash corpus. For GitHub-abuse C2, pivot on repository API paths in proxy logs rather than the domain itself.
Detection Engineering
---
title: C2Looper ClickFix Execution and DLL Sideloading
id: 8f3a1c2e-4b5d-4e7a-9c1f-2a3b4c5d6e7f
status: experimental
description: Detects ClickFix-style user-executed commands and DLL sideloading patterns associated with C2Looper Rust-based backdoor delivery
author: Security Arsenal Threat Intel
logsource:
category: process_creation
product: windows
detection:
selection_clickfix:
ParentImage|endswith:
- '\explorer.exe'
- '\msedge.exe'
- '\chrome.exe'
- '\firefox.exe'
Image|endswith:
- '\powershell.exe'
- '\pwsh.exe'
- '\mshta.exe'
- '\rundll32.exe'
- '\cmd.exe'
CommandLine|contains:
- 'iex'
- 'Invoke-WebRequest'
- 'curl'
- 'DownloadString'
- 'FromBase64String'
selection_rust_artifact:
CommandLine|contains:
- '45.158.196'
condition: selection_clickfix or selection_rust_artifact
falsepositives:
- Legitimate admin scripting launched from explorer context menus (rare)
level: high
tags:
- attack.execution
- attack.t1059
- attack.t1204
- attack.t1574.002
---
title: QUIC C2 Over Cloudflare Workers or Non-Standard QUIC Egress
id: 1d2e3f4a-5b6c-7d8e-9f0a-1b2c3d4e5f6a
status: experimental
description: Detects QUIC (UDP/443) network connections from non-browser processes, consistent with QUICAgent Go backdoor C2 via Cloudflare Workers
author: Security Arsenal Threat Intel
logsource:
category: network_connection
product: windows
detection:
selection_quic:
DestinationPort: 443
Protocol: udp
Initiated: 'true'
filter_browsers:
Image|endswith:
- '\chrome.exe'
- '\msedge.exe'
- '\firefox.exe'
- '\brave.exe'
- '\opera.exe'
condition: selection_quic and not filter_browsers
falsepositives:
- Go-based legitimate applications using HTTP/3
- Some VPN clients and updater services
level: high
tags:
- attack.command_and_control
- attack.t1071.001
- attack.t1102
---
title: Fake Cryptocurrency Wallet Application Execution
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects execution of Electron-based fake wallet applications (Ledger, Trezor, Exodus impersonators) associated with Operation ASTERIX seed-phrase theft
author: Security Arsenal Threat Intel
logsource:
category: process_creation
product: windows
detection:
selection_wallet_names:
Image|contains:
- 'Ledger'
- 'Trezor'
- 'Exodus'
selection_suspicious_path:
Image|contains:
- '\AppData\Local\Temp\'
- '\AppData\Roaming\'
- '\Downloads\'
- '\Public\'
selection_c2:
CommandLine|contains:
- 'ledgerhelp.com'
- '136.0.213.184'
condition: (selection_wallet_names and selection_suspicious_path) or selection_c2
falsepositives:
- Legitimate wallet apps installed under AppData by default — validate code signature before dismissing
level: critical
tags:
- attack.credential_access
- attack.t1555
- attack.t1056
- attack.execution
// Unified hunt: C2Looper, QUICSILVER, and ASTERIX indicators + behaviors
let C2LooperIPs = dynamic(["45.158.196.184", "45.158.196.23"]);
let AsterixIP = "136.0.213.184";
let AsterixDomain = "ledgerhelp.com";
let PulseHashes = dynamic([
"f59f32c9af4fa8a5dbd4668df8893593bc0c4324816cbf9b956acedcbfb8cdb6",
"f96ff2f3abbff7f382ace509b90e54853b4b61c402ecde27d82f1c17b414867b",
"20675a659c338f7267fd09bacb431f4491f061d3acf42d07aca2dec3d25fa549",
"c4b4647795567ab15528edd1ab1bf37fb50e21b442e59a653051061973e87c02",
"0803521a7e9081f46f8f9f61d72371ecc1f49657f10202fffa9a33f581d8bb39"
]);
union isfuzzy=true
// Network IOC hits
(DeviceNetworkEvents
| where RemoteIP in~ (C2LooperIPs) or RemoteIP == AsterixIP
or RemoteUrl has AsterixDomain
| project TimeGenerated, DeviceName, InitiatingProcessFileName, RemoteIP, RemoteUrl, RemotePort),
// QUIC from non-browser processes (QUICAgent behavior)
(DeviceNetworkEvents
| where RemotePort == 443
| where InitiatingProcessFileName !in~ ("chrome.exe","msedge.exe","firefox.exe","brave.exe")
| where InitiatingProcessFileName has_any ("go", "agent", "quic")
or InitiatingProcessFolderPath has_any ("\Temp\", "\AppData\Roaming\")
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessFolderPath, RemoteIP, RemoteUrl),
// ClickFix-style process chains (C2Looper delivery)
(DeviceProcessEvents
| where InitiatingProcessFileName in~ ("explorer.exe","msedge.exe","chrome.exe")
| where FileName in~ ("powershell.exe","mshta.exe","rundll32.exe","cmd.exe")
| where ProcessCommandLine has_any ("iex", "DownloadString", "FromBase64String", "curl ")
| project TimeGenerated, DeviceName, FileName, ProcessCommandLine, InitiatingProcessFileName),
// VHD mount events (QUICSILVER delivery)
(DeviceProcessEvents
| where ProcessCommandLine has_any (".vhd", ".vhdx")
| where FileName in~ ("powershell.exe","diskpart.exe") or ProcessCommandLine has "Mount-VHD"
| project TimeGenerated, DeviceName, FileName, ProcessCommandLine),
// Hash hits
(DeviceFileEvents
| where SHA256 in~ (PulseHashes)
| project TimeGenerated, DeviceName, FileName, FolderPath, SHA256)
| sort by TimeGenerated desc
# Security Arsenal — C2Looper / QUICSILVER / ASTERIX Endpoint IOC Hunt
# Run elevated on suspected endpoints. Outputs consolidated findings to CSV.
$findings = @()
# --- 1. Network connections to pulse IOCs ---
$badIPs = @('45.158.196.184','45.158.196.23','136.0.213.184')
Get-NetTCPConnection -ErrorAction SilentlyContinue | Where-Object {
$_.RemoteAddress -in $badIPs
} | ForEach-Object {
$proc = Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue
$findings += [PSCustomObject]@{
Type='NetworkIOC'; Host=$env:COMPUTERNAME
Detail="Conn to $($_.RemoteAddress):$($_.RemotePort) by $($proc.ProcessName) ($($proc.Path))"
}
}
# --- 2. QUIC (UDP/443) listeners/senders from non-browser processes ---
Get-NetUDPEndpoint -ErrorAction SilentlyContinue | Where-Object {
$_.LocalPort -eq 443
} | ForEach-Object {
$p = Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue
if ($p.ProcessName -notmatch 'chrome|msedge|firefox|brave') {
$findings += [PSCustomObject]@{
Type='SuspiciousQUIC'; Host=$env:COMPUTERNAME
Detail="UDP/443 held by $($p.ProcessName) at $($p.Path)"
}
}
}
# --- 3. Persistence artifacts: Run keys, scheduled tasks with suspicious paths ---
$runKeys = @(
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce'
)
foreach ($key in $runKeys) {
if (Test-Path $key) {
Get-ItemProperty $key | ForEach-Object {
$_.PSObject.Properties | Where-Object {
$_.Value -match 'Temp|AppData|Public|rundll32|mshta|powershell'
} | ForEach-Object {
$findings += [PSCustomObject]@{
Type='Persistence'; Host=$env:COMPUTERNAME
Detail="$key :: $($_.Name) = $($_.Value)"
}
}
}
}
}
Get-ScheduledTask -ErrorAction SilentlyContinue | Where-Object {
$_.Actions.Execute -match 'powershell|mshta|rundll32' -and
$_.TaskPath -notmatch '\\Microsoft\\'
} | ForEach-Object {
$findings += [PSCustomObject]@{
Type='SuspiciousTask'; Host=$env:COMPUTERNAME
Detail="Task $($_.TaskName): $($_.Actions.Execute) $($_.Actions.Arguments)"
}
}
# --- 4. Fake wallet apps in user-writable paths (ASTERIX) ---
$walletPaths = @(
"$env:LOCALAPPDATA\Programs", "$env:APPDATA", "$env:USERPROFILE\Downloads", 'C:\Users\Public'
)
foreach ($path in $walletPaths) {
Get-ChildItem $path -Recurse -Include '*Ledger*','*Trezor*','*Exodus*' -ErrorAction SilentlyContinue |
Where-Object { $_.Extension -in '.exe','.msi' } | ForEach-Object {
$sig = Get-AuthenticodeSignature $_.FullName
if ($sig.Status -ne 'Valid') {
$findings += [PSCustomObject]@{
Type='FakeWalletApp'; Host=$env:COMPUTERNAME
Detail="$($_.FullName) [sig: $($sig.Status), sha256: $((Get-FileHash $_.FullName -Algorithm SHA256).Hash)]"
}
}
}
}
# --- 5. Recently mounted VHD/VHDX evidence (QUICSILVER) ---
Get-ChildItem "$env:USERPROFILE\Downloads", "$env:TEMP" -Recurse -Include '*.vhd','*.vhdx' -ErrorAction SilentlyContinue |
ForEach-Object {
$findings += [PSCustomObject]@{
Type='SuspiciousVHD'; Host=$env:COMPUTERNAME
Detail="$($_.FullName) created $($_.CreationTime)"
}
}
$findings | Format-Table -AutoSize
$findings | Export-Csv ".\pulse_hunt_$env:COMPUTERNAME.csv" -NoTypeInformation
Write-Host "[+] Hunt complete. $($findings.Count) finding(s) exported."
Response Priorities
Immediate (0–4 hours)
- Block
45.158.196.0/24,136.0.213.184, andledgerhelp.comat firewall, DNS sinkhole, and web proxy layers. - Push all pulse file hashes to EDR blocklists and email-gateway detonation rules.
- Run the KQL hunt across the fleet; isolate any host with a confirmed network IOC hit.
- Audit egress for outbound connections to bare IPs on non-standard ports (notably :1337).
24 Hours
- Credential response: ASTERIX targets wallet seed phrases and exchange credentials — any user who interacted with fake Ledger/Trezor/Exodus software must rotate exchange credentials, regenerate wallet seeds/move funds to new wallets, and reset hardware wallets.
- Review GitHub-bound API traffic for anomalous repository reads/writes from workstations (C2Looper C2 channel).
- Search email archives for VHD/VHDX attachments and Burmese-language lures if you have any Myanmar-adjacent business relationships; government-sector partners should be notified.
- Validate vishing exposure: brief help-desk and executive staff that crypto-themed vishing campaigns are actively dialing validated phone lists.
1 Week
- Architecture hardening: Block or alert on QUIC (UDP/443) from non-browser processes at the egress layer; deploy TLS/QUIC-aware inspection where policy permits.
- Disable auto-mount of VHD/VHDX files via Group Policy; add VHD to email attachment block lists alongside ISO/IMG.
- Implement ClickFix mitigations: restrict Run-dialog access for standard users, enforce PowerShell Constrained Language Mode, and enable ASR rules for child processes of browsers.
- Deploy application control (WDAC/AppLocker) to prevent unsigned Electron applications and binaries in user-writable paths.
- Enroll domains matching your crypto-brand exposure in lookalike-domain monitoring.
Related Resources
Security Arsenal Incident Response Managed SOC & MDR Services AlertMonitor Threat Detection From The Dark Side Intel Hub
Is your security operations ready?
Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.