Back to Intelligence

ChainScript RAT Deployed via ClickFix Lures with Polygon Blockchain C2 Rotation — Detection and Response Guide

SA
Security Arsenal Team
September 21, 2026
10 min read

Blackpoint's Adversary Pursuit Group (APG) has documented a campaign that fuses two of the most operationally effective tradecraft trends of the past 18 months: ClickFix-style social engineering and blockchain-based C2 resolution. The payload is a previously undocumented remote access trojan dubbed ChainScript, observed under rotating build names — ComponentTask33, UpdateDigital, HostShared, and OrchidViolet66 — while masquerading as Spotify, Zoom Workplace, and Microsoft Teams installers or updates.

This combination is dangerous for two reasons. First, ClickFix lures bypass nearly every perimeter control: the victim manually copies and pastes a malicious command into the Windows Run dialog, so there is no malicious attachment to sandbox, no link to rewrite, and no macro to block. Second, by resolving its command-and-control through queries against the Polygon blockchain, ChainScript gains a resilient, pseudo-decentralized C2 rotation mechanism that defenders cannot sinkhole, seize, or block by domain without breaking legitimate web3 traffic.

If your users install collaboration or media software from the internet — and they do — you are in scope. Treat this as an active, in-the-wild threat requiring immediate hunt activity.

Technical Analysis

Infection Chain

The attack follows the now-canonical ClickFix pattern, which we have seen adopted by everything from commodity stealers to nation-state initial access brokers:

  1. Lure delivery. The victim lands on a compromised or attacker-controlled page — typically via malvertising, SEO poisoning, or a phishing email — presenting a fake CAPTCHA, a "verify you are human" prompt, or a fake update dialog for Spotify, Zoom Workplace, or Microsoft Teams.
  2. Clipboard poisoning. The page silently copies a malicious command to the victim's clipboard using the browser Clipboard API (navigator.clipboard.writeText). The page then instructs the user to press Win+R, paste (Ctrl+V), and press Enter.
  3. User-driven execution. The pasted command — typically a powershell.exe -w hidden one-liner, an mshta.exe invocation, or a curl/wscript chain — executes under the user's context. Because the parent process is explorer.exe (the Run dialog), many behavioral detections tuned for Office or browser child processes never fire.
  4. RAT staging. The loader retrieves and installs ChainScript under one of its rotating build names (ComponentTask33, UpdateDigital, HostShared, OrchidViolet66), persisting on the endpoint.
  5. C2 via Polygon. Rather than shipping a hardcoded C2 list, ChainScript queries public Polygon RPC endpoints and reads C2 addresses from on-chain data — a technique sometimes called "EtherHiding" when performed on Ethereum-family chains. Rotating infrastructure is then as simple as the operator writing a new value to the chain; the malware resolves fresh C2 on its next check-in.

Why Blockchain C2 Matters for Defenders

Traditional C2 defense assumes infrastructure can be enumerated, blocked, and seized. Blockchain-resolved C2 breaks each assumption:

  • No static IoC shelf life. Domains and IPs rotate at operator speed without redeploying the malware.
  • Blocking the RPC layer is collateral-heavy. Public Polygon RPC endpoints (polygon-rpc.com, polygon.llamarpc.com, rpc.ankr.com/polygon, etc.) are shared with legitimate decentralized applications. A blanket block may be correct for most enterprises — very few business processes require endpoints to query blockchain RPC nodes — but validate first.
  • Network inspection sees benign-looking HTTPS. The initial C2 resolution looks like a standard TLS session to a well-known RPC service. The signal is which process is making the connection, not the destination alone.

Exploitation Status

  • No CVE is involved — this is social engineering plus legitimate Windows functionality. Patching cannot fix it.
  • Confirmed active in the wild per Blackpoint APG reporting, with multiple concurrent build names indicating an actively maintained, iterating codebase.
  • The impersonation of Zoom and Teams indicates deliberate targeting of corporate users, not just consumers — expect the lure themes to pivot toward enterprise IT contexts (fake "update required" interstitials, IT-support-themed pages).

Detection & Response

The reliable detection surface here is behavioral: Run-dialog-spawned script execution, unsigned processes masquerading as trusted apps in user-writable paths, and non-browser processes talking to blockchain RPC infrastructure. The rules below are tuned to those behaviors — not to ephemeral IoCs.

YAML
---
title: ClickFix User-Driven Execution via Run Dialog
description: Detects script interpreters and LOLBins spawned by explorer.exe, consistent with a victim pasting a malicious command into the Windows Run dialog after a ClickFix clipboard lure.
references:
  - https://thehackernews.com/2026/09/clickfix-lures-deploy-chainscript-rat.html
  - https://attack.mitre.org/techniques/T1204/002/
author: Security Arsenal
date: 2026/09/10
status: experimental
id: 3f8c2a71-9b4d-4e6a-a1c5-7d2e9f0b1a34
tags:
  - attack.execution
  - attack.t1204.002
  - attack.t1059
logsource:
  category: process_creation
  product: windows
detection:
  selection_parent:
    ParentImage|endswith: '\explorer.exe'
  selection_child:
    Image|endswith:
      - '\powershell.exe'
      - '\pwsh.exe'
      - '\mshta.exe'
      - '\wscript.exe'
      - '\cscript.exe'
      - '\curl.exe'
      - '\wmic.exe'
      - '\cmd.exe'
  selection_flags:
    CommandLine|contains:
      - ' -w hidden'
      - ' -windowstyle hidden'
      - ' -enc '
      - ' -ec '
      - 'FromBase64String'
      - 'http://'
      - 'https://'
      - 'IEX'
      - 'Invoke-Expression'
      - 'DownloadString'
      - 'mshta http'
  condition: selection_parent and selection_child and selection_flags
falsepositives:
  - Power users and administrators running one-liners via Run dialog; tune with user and command allowlists
level: high
---
title: ChainScript RAT Masquerading as Spotify Zoom or Teams in User-Writable Paths
description: Detects processes using Spotify, Zoom, or Microsoft Teams product naming executing from user-writable or temporary directories, consistent with ChainScript build artifacts (ComponentTask33, UpdateDigital, HostShared, OrchidViolet66).
references:
  - https://thehackernews.com/2026/09/clickfix-lures-deploy-chainscript-rat.html
  - https://attack.mitre.org/techniques/T1036/005/
author: Security Arsenal
date: 2026/09/10
status: experimental
id: 8a1d4e62-5c7b-4f39-b2d8-6e0a3c1f9b27
tags:
  - attack.defense_evasion
  - attack.t1036.005
logsource:
  category: process_creation
  product: windows
detection:
  selection_names:
    OriginalFileName|contains:
      - 'ComponentTask33'
      - 'UpdateDigital'
      - 'HostShared'
      - 'OrchidViolet66'
  selection_spoof:
    Image|contains:
      - 'spotify'
      - 'zoom'
      - 'teams'
  selection_paths:
    Image|contains:
      - '\AppData\Local\Temp\'
      - '\AppData\Roaming\'
      - '\ProgramData\'
      - '\Users\Public\'
      - '\Downloads\'
  condition: selection_names or (selection_spoof and selection_paths)
falsepositives:
  - Legitimate Zoom/Teams/Spotify installers run from Downloads during initial install; correlate with signature status and parent process
level: high
---
title: Non-Browser Process Connecting to Polygon Blockchain RPC Endpoints
description: Detects non-browser processes establishing network connections to public Polygon RPC endpoints, consistent with ChainScript resolving C2 infrastructure from on-chain data. Most enterprise endpoints have no legitimate reason to query blockchain RPC nodes.
references:
  - https://thehackernews.com/2026/09/clickfix-lures-deploy-chainscript-rat.html
  - https://attack.mitre.org/techniques/T1071/001/
author: Security Arsenal
date: 2026/09/10
status: experimental
id: 5c9e7f13-2a6d-4b8e-91f4-3d7c0e5a6b98
tags:
  - attack.command_and_control
  - attack.t1071.001
logsource:
  category: network_connection
  product: windows
detection:
  selection_dest:
    DestinationHostname|contains:
      - 'polygon-rpc.com'
      - 'polygon.llamarpc.com'
      - 'rpc-mainnet.matic.network'
      - 'polygon-mainnet'
      - 'matic-mainnet'
      - 'polygon.drpc.org'
      - 'polygon.api.onfinality.io'
      - 'polygon-mainnet.public.blastapi.io'
  filter_browsers:
    Image|endswith:
      - '\chrome.exe'
      - '\msedge.exe'
      - '\firefox.exe'
      - '\brave.exe'
      - '\opera.exe'
  condition: selection_dest and not filter_browsers
falsepositives:
  - Cryptocurrency wallet or web3 developer tooling; if your org has none of these, this rule should be near-silent
level: high
KQL — Microsoft Sentinel / Defender
// Hunt: ClickFix execution chain + blockchain RPC C2 resolution
// Part 1: Run-dialog-spawned script interpreters (ClickFix paste execution)
let ClickFixExec = DeviceProcessEvents
| where TimeGenerated > ago(14d)
| where InitiatingProcessFileName =~ "explorer.exe"
| where FileName in~ ("powershell.exe", "pwsh.exe", "mshta.exe", "wscript.exe", "cscript.exe", "curl.exe", "wmic.exe", "cmd.exe")
| where ProcessCommandLine has_any ("-w hidden", "windowstyle hidden", "-enc", "FromBase64String", "IEX", "Invoke-Expression", "DownloadString", "http://", "https://")
| project TimeGenerated, DeviceName, AccountName, FileName, ProcessCommandLine, InitiatingProcessFileName, SHA256, ReportId;
// Part 2: Non-browser connections to Polygon RPC infrastructure
let PolygonC2 = DeviceNetworkEvents
| where TimeGenerated > ago(14d)
| where RemoteUrl has_any ("polygon-rpc.com", "polygon.llamarpc.com", "rpc-mainnet.matic.network", "polygon.drpc.org", "polygon-mainnet.public.blastapi.io", "matic-mainnet")
| where InitiatingProcessFileName !in~ ("chrome.exe", "msedge.exe", "firefox.exe", "brave.exe", "opera.exe")
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, RemoteUrl, RemoteIP, RemotePort;
// Union and correlate by device within a 4-hour window
ClickFixExec
| join kind=inner (PolygonC2) on DeviceName
| where abs(datetime_diff('minute', TimeGenerated1, TimeGenerated)) <= 240
| project DeviceName, ClickFixTime=TimeGenerated, C2Time=TimeGenerated1, AccountName, ClickFixCommand=ProcessCommandLine, RPCProcess=InitiatingProcessFileName1, RPCCommand=InitiatingProcessCommandLine, RemoteUrl, RemoteIP
| order by ClickFixTime desc
VQL — Velociraptor
-- Hunt for ChainScript staging artifacts and blockchain RPC C2 connections
-- Scope: endpoints with script interpreters spawned by explorer (ClickFix pattern)
-- and any non-browser process holding connections to Polygon RPC endpoints.

-- Stage 1: Suspicious processes in user-writable paths with spoofed naming
LET suspect_procs = SELECT Pid, Name, Exe, CommandLine, Username, CreateTime
FROM pslist()
WHERE (Exe =~ '(?i)(appdata|programdata|users\\\\public|downloads)'
   AND (Exe =~ '(?i)(spotify|zoom|teams|componenttask|updatedigital|hostshared|orchidviolet)'))
   OR CommandLine =~ '(?i)(frombase64string|invoke-expression|downloadstring)'

SELECT * FROM suspect_procs

-- Stage 2 (run separately if collector supports it): live netstat for blockchain RPC
-- SELECT Pid, Name, RemoteAddr, RemotePort, Status
-- FROM netstat()
-- WHERE RemoteAddr =~ 'polygon|matic|ankr|llamarpc|drpc|blastapi'
--   AND Name !~ '(?i)(chrome|msedge|firefox|brave|opera)'
PowerShell
# ChainScript / ClickFix endpoint audit and hardening script
# Run as Administrator. Audit-only by default; set $Enforce = $true to apply controls.
$Enforce = $false
$report = [ordered]@{}

# 1. Check for processes masquerading as trusted apps in user-writable paths
$spoofed = Get-CimInstance Win32_Process | Where-Object {
    ($_.ExecutablePath -match '(?i)(appdata|programdata|users\\public|downloads)') -and
    ($_.Name -match '(?i)(spotify|zoom|teams)') -or
    ($_.CommandLine -match '(?i)(componenttask33|updatedigital|hostshared|orchidviolet66)')
} | Select-Object ProcessId, Name, ExecutablePath, CommandLine
$report['SpoofedProcesses'] = $spoofed

# 2. Review RunMRU for pasted ClickFix-style commands (per-user artifact)
$runMru = Get-ChildItem 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU' -ErrorAction SilentlyContinue |
    Get-ItemProperty | Select-Object -Property * -ExcludeProperty PS* | Out-String
$report['RunMRU'] = $runMru

# 3. Check persistence locations for suspicious entries
$runKeys = @(
    'HKCU:\Software\Microsoft\Windows\CurrentVersion\Run',
    'HKLM:\Software\Microsoft\Windows\CurrentVersion\Run',
    'HKCU:\Software\Microsoft\Windows\CurrentVersion\RunOnce'
)
$persist = foreach ($k in $runKeys) {
    if (Test-Path $k) {
        Get-ItemProperty $k | Select-Object -Property * -ExcludeProperty PS* |
            ForEach-Object { $_.PSObject.Properties | Where-Object { $_.Value -match '(?i)(appdata|temp|programdata|powershell|mshta)' } |
                Select-Object @{n='Key';e={$k}}, Name, Value }
    }
}
$report['SuspiciousPersistence'] = $persist

# 4. Verify ASR rule state (Block executable content from email/web is minimum baseline)
$asr = Get-MpPreference | Select-Object -ExpandProperty AttackSurfaceReductionRules_Ids -ErrorAction SilentlyContinue
$report['ASRRulesConfigured'] = [bool]$asr

# 5. Enforce: block mshta/powershell launched from explorer via WDAC is heavy;
#    lighter lift — enable PowerShell Script Block Logging and AMSI if not present
if ($Enforce) {
    New-Item -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging' -Force | Out-Null
    Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging' -Name 'EnableScriptBlockLogging' -Value 1
    Write-Host '[+] PowerShell Script Block Logging enabled.' -ForegroundColor Green
}

$report | ConvertTo-Json -Depth 5

Remediation

There is no patch — the fix is layered control of the human and behavioral attack surface:

  1. Immediate hunt (today). Run the KQL and VQL above across your fleet. Pull per-user RunMRU registry hives on any endpoint with a hit — this is the highest-fidelity forensic artifact for confirming a ClickFix paste execution, since it preserves exactly what the user typed/pasted into the Run dialog.
  2. Block the blockchain RPC layer at the egress proxy. Unless you operate web3 workloads, block or alert on outbound connections to public Polygon/Ethereum RPC endpoints from non-browser processes. A category-level block on "cryptocurrency/blockchain" destinations is an acceptable starting policy for most enterprises.
  3. Attack Surface Reduction and App Control. Enable ASR rules blocking Office child processes and executable content from email client and web (Defender baseline), and seriously evaluate WDAC/AppLocker policies preventing unsigned binaries from executing in %AppData%, %ProgramData%, and %Temp%. This directly breaks ChainScript's staging in user-writable paths.
  4. Constrain mshta and script interpreters. If your environment does not require mshta.exe, block it via AppLocker — it remains one of the most abused ClickFix second-stage loaders.
  5. User awareness, re-targeted. Generic phishing training does not cover ClickFix. Brief users specifically on the pattern: no legitimate website will ever ask you to press Win+R and paste a command. This single sentence defeats the entire lure class.
  6. Containment on detection. Isolate the host, capture memory (the RAT's in-memory C2 resolution logic is your best source of current IoCs), rotate credentials for any session active on the host, and review 30 days of egress for the infected endpoint — blockchain-resolved C2 means historical destination IPs are the only reliable indicator of where data went.
  7. Software distribution hygiene. Push Zoom, Teams, and Spotify through a managed software catalog (Intune/SCCM) and block user-initiated downloads of these executables where feasible. This collapses the lure's credibility surface.

The strategic lesson: ClickFix + blockchain C2 is the convergence of two techniques that each individually defeat a class of controls. Defense must be behavioral — process lineage, path-based execution policy, and process-aware egress filtering — because the IoCs and the delivery mechanism are both ephemeral by design.

Related Resources

Security Arsenal Managed SOC Services AlertMonitor Platform Book a SOC Assessment soc-mdr Intel Hub

Is your security operations ready?

Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.