Back to Intelligence

Operation STANDOFF + Offside Wallet Theft Factory: Raccoon/RedLine Stealer Ecosystem & Malicious Firefox Extension Campaign — OTX Detection Pack

SA
Security Arsenal Team
August 20, 2026
11 min read

Threat Summary

Two live OTX pulses reveal a maturing, industrialized credential-theft economy that security teams should treat as a single defensive problem: the browser, the wallet, and the enterprise identity are now one attack surface.

Pulse 1 — Operation STANDOFF (VMRay Labs / AlienVault): A Russian-speaking, multi-operator intrusion campaign that blends a pay-per-install (PPI) loader with a proxy-botnet monetization layer. Victims receive a rotating cast of commodity stealers — Raccoon Stealer, RedLine, Amadey, SmokeLoader, Socelars, and Glupteba — plus XMRig cryptomining payloads. The operation's hallmark is infrastructure camouflage: C2 coordination hides behind GitHub redirects while backend panels sit on Russian hosting provider TimeWeb. Beyond theft, infected hosts are silently enrolled as residential proxy nodes, which are then resold to downstream actors — including, per campaign tags, operators running Telegram account farms and AI-driven influence operations. Notably, the pulse references CVE-2021-34527 (PrintNightmare) and Active Directory targeting tags, indicating post-infection lateral movement and privilege escalation ambitions beyond smash-and-grab stealer activity.

Pulse 2 — Offside Wallet Theft Factory (Socket / AlienVault): A coordinated campaign of 77 Firefox extensions (40 confirmed malicious) impersonating legitimate Web3 and cryptocurrency wallet tools. The extensions exfiltrate recovery phrases, private keys, and credentials using a resilient delivery chain: Supabase projects acting as remote-kill/configuration switches, Cloudflare Workers as exfiltration relays, and hardcoded fallback C2 domains. This is a factory model — templated, reproducible, and designed to survive individual extension takedowns.

Collective read: Both campaigns monetize the same raw material — credentials, session data, and wallet secrets — through different insertion points (PPI malware droppers vs. trusted browser extension stores). Both abuse legitimate cloud/developer platforms (GitHub, Supabase, Cloudflare Workers) to blend C2 with normal enterprise traffic. Defenders must assume any stealer infection now includes proxy enrollment, follow-on AD compromise, and resale of access.

Threat Actor / Malware Profile

Operation STANDOFF Malware Stack

FamilyRoleBehavior
SmokeLoaderLoader / dropperInitial PPI stage; pulls secondary payloads via HTTP C2; known for plugin-based modular delivery
AmadeyLoader / botLightweight bot with screenshot, recon, and payload-delivery plugins
Raccoon StealerInfostealerHarvests browser cookies/passwords, crypto wallets, system fingerprint; exfil via C2 API endpoints (e.g., /api/setStats.php pattern)
RedLineInfostealerTargets browser credential stores, FTP/VPN clients, crypto wallet files, Discord tokens
SocelarsStealerHarvests session cookies and stored credentials
GluptebaProxy botnet / rootkitEnrolls hosts as residential proxies; blockchain-resilient C2 (Bitcoin transaction OP_RETURN fallback); deep persistence
XMRigMinerMonero mining on idle resources

Distribution: PPI loader chains — typically malvertising, cracked-software sites, SEO-poisoned downloads. C2 communication: HTTP(S) panels on TimeWeb infrastructure; GitHub-hosted redirect/dead-drop layer obscures real panel addresses; Glupteba adds Bitcoin-blockchain C2 resilience. Persistence: Run keys, scheduled tasks, and Glupteba rootkit components (compromised driver / boot-level techniques observed historically). Anti-analysis: VMRay's execution-level reporting implies sandbox-evasion behavior — multi-stage unpacking, environment checks, and dead-drop resolution that only reveals true C2 at runtime. Post-exploitation risk: CVE-2021-34527 (PrintNightmare) reference and active-directory-targeting tag indicate the operators escalate to domain-level compromise where enterprise footholds are found.

Offside Wallet Theft Factory

Distribution: Firefox Add-ons ecosystem; extensions impersonate legitimate wallets/Web3 tools. Payload behavior: Injected content/background scripts capture recovery phrases, private keys, and form credentials at input time; data staged and exfiltrated via HTTPS. C2 communication: Supabase REST endpoints as remote configuration/kill switches; Cloudflare Workers as exfil proxies; hardcoded domains (browser-app.com, browsify.net, etc.) as fallback. Persistence: Native browser extension persistence — survives until manually removed; auto-updates can refresh malicious logic. Anti-analysis: Remote switches keep extensions dormant/benign during review periods, activating theft logic only when the operator flips the Supabase-controlled flag.

IOC Analysis

Indicator composition across both pulses (214 total):

  • Domains / Hostnames: Primary blocking targets. Pulse 1 C2 and lure infrastructure: listincode.com, www.listincode.com, wfsdragon.ru, topniemannpickshop.cc, all-mobile-pa1ments.com.mx, buy-fantasy-gxmes.com.sg. Note the homoglyph typosquats (pa1ments, gxmes) — characteristic of lure/redirect domains. Pulse 2 exfil/fallback domains: browser-app.com, browsify.net, gemachriverdale.org, e-wl.com (the .org is likely a compromised legitimate site — investigate rather than assume operator-owned).
  • URLs: http://wfsdragon.ru/api/setStats.php — stealer panel API endpoint. URL-path-level detection (/api/setStats.php) catches C2 even if the domain rotates.
  • FileHash-SHA256 (164-indicator pulse): Malicious extension XPI payloads and stealer binaries. Feed into EDR blocklists and retro-hunt DeviceFileEvents.
  • CVE: CVE-2021-34527 flags a privilege-escalation vector — treat unpatched print spoolers on stealer-infected hosts as critical-path exposures.

Operationalization guidance:

  1. Push domains/URLs to DNS sinkhole, web proxy, and EDR network blocks. Add wildcard rules for homoglyph patterns where feasible.
  2. Load SHA256 hashes into EDR reputation/blocking and run 30-day retrospective hunts.
  3. Hunt for the behavior, not just the indicator: GitHub/Supabase/Cloudflare Workers are legitimate services — detection must key on context (unknown process egress to api.github.com / raw.githubusercontent.com, browser extension processes POSTing to *.workers.dev or *.supabase.co).
  4. Decode and pivot: detonate suspicious XPI files and loader samples in a sandbox (VMRay, ANY.RUN, Joe Sandbox); use VirusTotal/OTX pivoting on panel paths to surface sibling infrastructure before it is used against you.

Detection Engineering

YAML
---
title: Operation STANDOFF Stealer Loader Execution and C2 Indicators
id: 7c3a1f2e-9b41-4d2a-a5e8-standoff0001
status: experimental
description: Detects process execution and network behaviors associated with Operation STANDOFF commodity stealer/loader chains (SmokeLoader, Amadey, Raccoon, RedLine, Socelars, Glupteba) including known C2 domains and panel API paths.
author: Security Arsenal Threat Intelligence
date: 2026/08/20
references:
    - https://www.vmray.com/execution-level-analysis-of-a-russian-speaking-multi-operator-intrusion-campaign-operation-standoff/
logsource:
    category: network_connection
    product: windows
detection:
    selection_domain:
        DestinationHostname|contains:
            - 'listincode.com'
            - 'wfsdragon.ru'
            - 'topniemannpickshop.cc'
            - 'all-mobile-pa1ments.com.mx'
            - 'buy-fantasy-gxmes.com.sg'
    selection_path:
        DestinationHostname|contains:
            - 'wfsdragon.ru'
        Image|endswith:
            - '\rundll32.exe'
            - '\regsvr32.exe'
            - '\powershell.exe'
            - '\mshta.exe'
    condition: selection_domain or selection_path
falsepositives:
    - Rare; homoglyph lure domains have no legitimate enterprise use
level: high
tags:
    - attack.command_and_control
    - attack.t1071.001
    - attack.t1105
---
title: Suspicious Egress from Browser Processes to Supabase or Cloudflare Workers Exfiltration Endpoints
id: 8d4b2e3f-1c52-4e3b-b6f9-offside00002
status: experimental
description: Detects browser processes making outbound connections to Supabase projects or Cloudflare Workers domains, consistent with the Offside Wallet Theft Factory malicious Firefox extension exfiltration chain.
author: Security Arsenal Threat Intelligence
date: 2026/08/20
references:
    - https://socket.dev/blog/firefox-crypto-wallet-theft
logsource:
    category: network_connection
    product: windows
detection:
    selection_browser:
        Image|endswith:
            - '\firefox.exe'
    selection_exfil:
        DestinationHostname|endswith:
            - '.supabase.co'
            - '.workers.dev'
    selection_ioc:
        DestinationHostname|contains:
            - 'browser-app.com'
            - 'browsify.net'
            - 'gemachriverdale.org'
            - 'e-wl.com'
    filter_legit:
        DestinationHostname|contains:
            - 'mozilla.org'
            - 'firefox.com'
    condition: (selection_browser and selection_exfil and not filter_legit) or selection_ioc
falsepositives:
    - Legitimate extensions using Cloudflare Workers backends; baseline known-good extensions before enforcement
level: high
tags:
    - attack.exfiltration
    - attack.t1041
    - attack.t1071.001
    - attack.t1176
---
title: Stealer Persistence via Run Key or Scheduled Task Followed by Print Spooler Exploitation (CVE-2021-34527)
id: 9e5c3f4a-2d63-5f4c-c7aa-standoff0003
status: experimental
description: Detects registry Run key persistence or scheduled task creation combined with suspicious Print Spooler (spoolsv.exe) child process activity, matching Operation STANDOFF post-infection privilege escalation behavior referencing PrintNightmare.
author: Security Arsenal Threat Intelligence
date: 2026/08/20
logsource:
    category: process_creation
    product: windows
detection:
    selection_spooler_child:
        ParentImage|endswith: '\spoolsv.exe'
        Image|endswith:
            - '\cmd.exe'
            - '\powershell.exe'
            - '\rundll32.exe'
            - '\regsvr32.exe'
            - '\net.exe'
            - '\whoami.exe'
    selection_lolbin_dll:
        Image|endswith: '\rundll32.exe'
        CommandLine|contains:
            - '\Temp\'
            - '\AppData\Local\Temp\'
            - '\ProgramData\'
    condition: selection_spooler_child or selection_lolbin_dll
falsepositives:
    - Legitimate print driver installation generating rundll32 activity; correlate with preceding stealer IOCs
level: critical
tags:
    - attack.privilege_escalation
    - attack.t1068
    - attack.t1547.001
    - attack.t1053.005
KQL — Microsoft Sentinel / Defender
// OTX Hunt: Operation STANDOFF stealer C2 + Offside Wallet Theft Factory exfiltration
// Microsoft Sentinel / Defender — 14-day lookback
let StandoffDomains = dynamic(["listincode.com","www.listincode.com","wfsdragon.ru","topniemannpickshop.cc","all-mobile-pa1ments.com.mx","buy-fantasy-gxmes.com.sg"]);
let OffsideDomains = dynamic(["browser-app.com","browsify.net","gemachriverdale.org","e-wl.com"]);
let ExfilSuffixes = dynamic([".supabase.co",".workers.dev"]);
let StandoffHashes = dynamic(["08b7b064fa9a41b06774315d944ffddff705ab727222a0c3bcac64a77553bf2f","4d0912d575087dab5f468214a2fd259bc386472a8b2b93b6e2441cde4bd941cb","26427220b9965e22deca0e617657c2c65b78f750183355d1265c147818367bd7","252119fc48ad93b0c930d7a62fb49420cf8986716539e4e9d4d5c1bad700d435"]);
union isfuzzy=true
(
    DeviceNetworkEvents
    | where TimeGenerated > ago(14d)
    | where RemoteUrl has_any (StandoffDomains) or RemoteUrl has_any (OffsideDomains)
       or RemoteUrl has "/api/setStats.php"
       or (InitiatingProcessFileName =~ "firefox.exe" and RemoteUrl has_any (ExfilSuffixes))
    | project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, RemoteUrl, RemoteIP, RemotePort, ActionType
),
(
    DeviceFileEvents
    | where TimeGenerated > ago(14d)
    | where SHA256 in~ (StandoffHashes)
    | project TimeGenerated, DeviceName, InitiatingProcessFileName, FileName, FolderPath, SHA256
),
(
    DeviceProcessEvents
    | where TimeGenerated > ago(14d)
    | where InitiatingProcessFileName =~ "spoolsv.exe"
      and FileName in~ ("cmd.exe","powershell.exe","rundll32.exe","net.exe")
    | project TimeGenerated, DeviceName, InitiatingProcessFileName, FileName, ProcessCommandLine, AccountName
)
| sort by TimeGenerated desc
PowerShell
# OTX IOC Hunt — Operation STANDOFF stealer persistence + Offside Wallet Theft Factory
# Run elevated on suspected endpoints. Outputs to C:\Temp\OTX_Hunt_<hostname>.txt

$out = "C:\Temp\OTX_Hunt_$env:COMPUTERNAME.txt"
"=== OTX HUNT :: $env:COMPUTERNAME :: $(Get-Date) ===" | Out-File $out

# 1. Run-key persistence entries (stealer persistence)
"`n[RUN KEYS]" | Out-File $out -Append
$runKeys = @(
    'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
    'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
    'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run'
)
foreach ($k in $runKeys) {
    if (Test-Path $k) {
        Get-ItemProperty $k | Select-Object * | Out-String | Out-File $out -Append
    }
}

# 2. Scheduled tasks pointing at user-writable paths (loader persistence)
"`n[SUSPICIOUS SCHEDULED TASKS]" | Out-File $out -Append
Get-ScheduledTask | ForEach-Object {
    $actions = $_.Actions | ForEach-Object { "$($_.Execute) $($_.Arguments)" }
    if ($actions -match 'AppData|Temp|ProgramData|Downloads') {
        "$($_.TaskName) :: $actions" | Out-File $out -Append
    }
}

# 3. Live network connections to campaign infrastructure
"`n[NETWORK IOC CHECK]" | Out-File $out -Append
$badHosts = @('listincode.com','wfsdragon.ru','topniemannpickshop.cc','all-mobile-pa1ments.com.mx','buy-fantasy-gxmes.com.sg','browser-app.com','browsify.net','gemachriverdale.org','e-wl.com')
foreach ($h in $badHosts) {
    try {
        $ips = (Resolve-DnsName $h -ErrorAction Stop).IPAddress
        foreach ($ip in $ips) {
            $conns = Get-NetTCPConnection -State Established -ErrorAction SilentlyContinue | Where-Object { $_.RemoteAddress -eq $ip }
            if ($conns) { "ACTIVE CONNECTION to $h ($ip) :: PID $($conns.OwningProcess -join ',')" | Out-File $out -Append }
        }
    } catch {}
}
Get-NetTCPConnection -State Established -ErrorAction SilentlyContinue |
    Where-Object { $_.RemotePort -in 80,443 } |
    ForEach-Object { "$($_.RemoteAddress):$($_.RemotePort) PID=$($_.OwningProcess) $((Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue).ProcessName)" } |
    Out-File $out -Append

# 4. Firefox extensions audit (Offside Wallet Theft Factory)
"`n[FIREFOX EXTENSIONS]" | Out-File $out -Append
$profiles = Get-ChildItem "$env:APPDATA\Mozilla\Firefox\Profiles" -Directory -ErrorAction SilentlyContinue
foreach ($p in $profiles) {
    $extJson = Join-Path $p.FullName 'extensions.json'
    if (Test-Path $extJson) {
        $j = Get-Content $extJson -Raw | ConvertFrom-Json
        foreach ($a in $j.addons) { "$($a.id) :: $($a.defaultLocale.name) :: active=$($a.active)" | Out-File $out -Append }
    }
    Get-ChildItem (Join-Path $p.FullName 'extensions') -Filter *.xpi -ErrorAction SilentlyContinue |
        ForEach-Object { "XPI: $($_.FullName) SHA256=$((Get-FileHash $_.FullName -Algorithm SHA256).Hash)" | Out-File $out -Append }
}

# 5. Print Spooler exposure (CVE-2021-34527 / PrintNightmare post-exploitation path)
"`n[PRINT SPOOLER STATUS]" | Out-File $out -Append
$spooler = Get-Service spooler -ErrorAction SilentlyContinue
"Spooler service: $($spooler.Status)" | Out-File $out -Append
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PrintService/Admin'} -MaxEvents 50 -ErrorAction SilentlyContinue |
    Out-String | Out-File $out -Append

# 6. Known campaign file hashes on disk
"`n[HASH SWEEP]" | Out-File $out -Append
$badHashes = @('08b7b064fa9a41b06774315d944ffddff705ab727222a0c3bcac64a77553bf2f','4d0912d575087dab5f468214a2fd259bc386472a8b2b93b6e2441cde4bd941cb','26427220b9965e22deca0e617657c2c65b78f750183355d1265c147818367bd7','252119fc48ad93b0c930d7a62fb49420cf8986716539e4e9d4d5c1bad700d435')
Get-ChildItem "$env:TEMP","$env:LOCALAPPDATA\Temp","$env:USERPROFILE\Downloads" -Recurse -File -ErrorAction SilentlyContinue |
    ForEach-Object {
        $h = (Get-FileHash $_.FullName -Algorithm SHA256 -ErrorAction SilentlyContinue).Hash
        if ($badHashes -contains $h) { "MATCH: $($_.FullName) :: $h" | Out-File $out -Append }
    }

"`n=== HUNT COMPLETE ===" | Out-File $out -Append
Write-Host "Results written to $out"

Response Priorities

Immediate (0–4 hours)

  • Block all listed domains/hosts at DNS, web proxy, and EDR network controls; add URL-path detection for /api/setStats.php and egress alerting on *.supabase.co / *.workers.dev from browser processes.
  • Push the 164 SHA256 indicators into EDR blocklists; run 30-day retrospective hunts using the KQL above.
  • Isolate any host with confirmed stealer execution — assume proxy enrollment (Glupteba) means the host may be actively relaying third-party traffic.
  • Audit managed browsers for unauthorized extensions; force-remove any Firefox add-on not on the enterprise allowlist.

24 hours

  • Treat every stealer infection as full credential compromise. Force password resets and session invalidation for all users on affected endpoints — including corporate SSO, VPN, email, and any browser-saved credentials (RedLine/Raccoon harvest these in seconds).
  • Revoke active session tokens and refresh tokens; stealer malware bypasses MFA via cookie theft, so password reset alone is insufficient.
  • Verify MFA enforcement and hunt for anomalous authentications from residential-proxy IP space — STANDOFF's own botnet may be the source of follow-on logins.
  • For users with cryptocurrency wallets on corporate-adjacent devices, assume seed phrase compromise and advise immediate fund migration.

1 week

  • Deploy a browser extension allowlisting policy (Firefox Enterprise policies / Chrome ExtensionSettings) — extension-based theft is only possible because installation is unrestricted.
  • Patch and validate CVE-2021-34527 exposure fleet-wide; disable Print Spooler on domain controllers and servers that do not print.
  • Egress filtering: restrict outbound access to developer/dead-drop platforms (GitHub raw content, Supabase, Workers) to approved processes and destinations; alert on first-seen usage.
  • Harden AD in line with the campaign's active-directory-targeting tag: tiered administration, LAPS, and detection for DCSync/PrintNightmare sequences following commodity stealer alerts.
  • Update threat-model assumptions: commodity PPI stealers now chain into proxy botnets and domain compromise — treat them as APT-stage intrusions, not nuisance infections.

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.