Intelligence Category: Infostealer & Credential Theft Campaigns Pulse Count: 5 | Synthesis Window: 2026-10-28 → 2026-10-30
Threat Summary
Five live OTX pulses converge on a single theme: identity and credential theft is the dominant monetization vector across both criminal and state-aligned operations this week.
- MadApe (Group-IB research): A previously undocumented phishing kit abuses Microsoft's legitimate Device Code authentication flow. Attackers never collect passwords on a phishing page — they trick victims into entering a device code on the real Microsoft login portal, granting OAuth tokens directly. Multi-stage chains use business-themed PDF lures, configurable redirects, and fake document-sharing pages across 565+ infrastructure domains. Primary targeting: Israel, Microsoft 365 tenants.
- UltraViewer → UltraMailer / QuickBooks Scam (Infoblox research): A tech-support scam operation links remote-access tooling (UltraViewer) with bulk-mailer software, running a long-running QuickBooks phishing campaign across 350+ lookalike domains (e.g.,
qbcares.com) with email-tracking infrastructure atchanret[.]com. Associated malware families include njRAT (S0385), Njw0rm, LV, Bladabindi, and DarkKometa — commodity .NET RATs used for credential theft and remote access post-callback. - Star Blizzard / Callisto (CYFIRMA research): FSB Centre 18-attributed espionage group continues credential-harvesting and hack-and-leak operations against NATO governments, defense, NGOs, and academia. Arsenal includes EvilGinx (AiTM proxy phishing), SPICA, LOSTKEYS, NOROBOT, and exploitation of CVE-2022-30190 (Follina), CVE-2023-36884, CVE-2023-38831 (WinRAR), CVE-2024-4947.
- Aurora Ransomware: Linux ESXi encryptor (ChaCha20 + RSA-4096 key wrapping) with a novel twist — abuse of Cursor Agent / Claude for AI-assisted exploitation. Operating a Tor data-leak site since April 2026; victims across US, Argentina, Austria, Germany, Israel, Spain.
- PHP2Shell / kkkkevin777: Japanese real-estate extortion campaign pivoting across ~20 sites via shared-hosting credential reuse, exfiltrating 16,061 customer records, then weaponizing PHP2Shell (CVE-2026-109618, CVE-2026-109619) from staging host
96.126.130.81.
Collective assessment: Credential theft (phishing kits, RATs, AiTM proxies) is being chained into downstream impact — account takeover, data theft, extortion, and ransomware staging. Defenders must treat identity-layer telemetry as the primary detection surface.
Threat Actor / Malware Profiles
MadApe Phishing Kit
- Distribution: Business-themed PDF lures → configurable redirect chains → fake document-sharing pages.
- Payload behavior: Initiates Microsoft OAuth 2.0 Device Authorization Grant (
/devicecodeendpoint). Victim is handed a real device code and directed tomicrosoft.com/devicelogin; the kit polls the token endpoint and harvests access/refresh tokens. No password is ever phished — MFA-fatigue-resistant and passwordless-compatible. - C2 / exfil: Tokens relayed to attacker infrastructure (565+ domains:
sucdens.com,cepoffices.com,zakosta.info,nsboards.com,nysndigital.com, etc.). - Persistence: Stolen refresh tokens grant durable access independent of password resets; conditional on token revocation.
- Anti-analysis: Multi-stage redirects, benign-appearing document portals, abuse of first-party Microsoft endpoints to evade URL filtering.
njRAT / Njw0rm / Bladabindi / DarkKometa (QuickBooks scam cluster)
- Distribution: Callback-based tech-support scam; victims directed to call scammers who push UltraViewer remote access, followed by RAT deployment. Bulk email sent via UltraMailer with tracking pixel URLs on
track.chanret[.]com. - Payload behavior: njRAT (Bladabindi) is a .NET RAT — keylogging, credential theft (browsers, FTP, mail), screen capture, registry Run-key persistence, optional worm propagation (Njw0rm).
- C2: Dynamic DNS / direct TCP to operator infrastructure; config embedded in the .NET executable.
- Anti-analysis: Packed/obfuscated .NET assemblies, process hollowing options, configurable mutex.
Star Blizzard (Callisto / FSB Centre 18)
- Distribution: Sophisticated spear-phishing with relationship building, impersonation of colleagues and conference organizers; EvilGinx AiTM proxy phishing for session-cookie theft defeating MFA.
- Payload behavior: Malware suite — SPICA (Rust backdoor), LOSTKEYS, NOROBOT/YESROBOT/MAYBEROBOT chains, SIMPLEFIX, GHOSTBLADE, BAITSWITCH, COLDCOPY, RedFlick, CosmicPulse.
- Exploitation: CVE-2022-30190 (Follina/ms-msdt), CVE-2023-36884 (Office/HTML), CVE-2023-38831 (WinRAR), CVE-2024-4947 (Chrome V8).
- Persistence: Scheduled tasks, Run keys, DLL side-loading; EvilGinx sessions persist via stolen cookies.
Aurora Ransomware (ESXi variant)
- Behavior: Linux ELF encryptor targeting VMware ESXi datastores; ChaCha20 per-file encryption with RSA-4096-wrapped keys; Tor leak site (
ijexszhs…onion). - Distinctive TTP: Abuse of Cursor Agent with Claude for AI-assisted exploitation and lateral-movement scripting — an emerging pattern of LLM-augmented intrusion.
- Infrastructure: 146.19.125.36, 81.177.215.15, 89.106.83.49, 157.173.29.133.
PHP2Shell / kkkkevin777
- Behavior: Web shell deployment on shared-hosting environments, lateral pivot via credential reuse across ~20 related real-estate sites; customer-data theft (16,061 records) feeding extortion.
- IOCs: Staging server 96.126.130.81; CVE-2026-109618, CVE-2026-109619 (PHP2Shell weaponization).
IOC Analysis
Indicator typology across these pulses:
| Type | Examples | Operationalization |
|---|---|---|
| Domains (phishing/kit infra) | sucdens.com, cepoffices.com, qbcares.com, captchanom.top, preentootmist.org | DNS sinkhole / proxy block; hunt DNS query logs for the full 565-domain MadApe set — match on newly-registered-domain (NRD) age + business-document lure themes. |
| Hostnames (tracking) | smtracking.qbcares.com, smtracking.healthclub951.swp23.com, track.chanret.com | Email gateway + proxy alert: tracking-pixel fetches indicate a live recipient — prioritize those users for callback-scam education and RAT triage. |
| IPv4 (C2/staging/leak infra) | 96.126.130.81, 146.19.125.36, 81.177.215.15, 89.106.83.49, 157.173.29.133, 103.245.231.248 | Egress block at firewall; retro-hunt NetFlow/proxy for 90 days. |
| File hashes (SHA256/MD5) | 28f046d9…8727, a4af136d…dcfe, 87138f63…aa48 | Push to EDR blocklist; sweep for execution history (not just presence — njRAT is frequently deleted post-run). |
| CVEs | CVE-2022-30190, CVE-2023-36884, CVE-2023-38831, CVE-2024-4947, CVE-2026-109618/9 | Patch validation on Office, WinRAR, Chrome, PHP stacks; virtual-patch WAF rules for PHP2Shell. |
| URLs / .onion | track.chanret.com/…, Aurora leak .onion | URL decode and detonate in sandbox (ANY.RUN, Joe Sandbox); monitor Tor egress for leak-site contact pre-encryption. |
Tooling pointers: OTX DirectConnect/API pulls into MISP or your TIP; base64 decode the tracking-URL path segments (the sample decodes to an email address — victim tracking); dotnet decompilers (dnSpyEx, ILSpy) for njRAT config extraction (C2, mutex, Run-key name).
Detection Engineering
---
title: Microsoft Device Code Phishing - MadApe Kit Token Request
description: Detects device authorization grant initiation and token polling patterns consistent with the MadApe phishing kit abusing the Microsoft Device Code flow.
status: experimental
date: 2026/10/30
author: Security Arsenal Threat Intelligence
logsource:
product: azure
service: signinlogs
detection:
selection_flow:
AuthenticationProtocol: 'deviceCode'
selection_risk:
- 'new country'
- 'anonymous IP'
- 'unfamiliar sign-in properties'
condition: selection_flow and 1 of selection_risk
falsepositives:
- Legitimate device code flows on TVs, IoT, CLI tooling from expected geographies
level: high
tags:
- attack.credential_access
- attack.t1528
- attack.t1550.001
---
title: njRAT / Bladabindi Registry Run Key Persistence
description: Detects .NET RAT persistence via registry Run keys with suspicious value names or paths consistent with njRAT, Njw0rm, and DarkKometa deployments observed in the QuickBooks scam cluster.
status: experimental
date: 2026/10/30
author: Security Arsenal Threat Intelligence
logsource:
category: registry_set
product: windows
detection:
selection_key:
TargetObject|contains:
- '\Software\Microsoft\Windows\CurrentVersion\Run'
- '\Software\Microsoft\Windows\CurrentVersion\RunOnce'
selection_suspicious:
TargetObject|contains:
- '\Temp\'
- '\AppData\Roaming\'
- '\Public\'
Details|endswith:
- '.exe'
- '.vbs'
- '.ps1'
filter_known:
Image|startswith:
- 'C:\Program Files'
- 'C:\Windows'
condition: selection_key and selection_suspicious and not filter_known
falsepositives:
- Software updaters writing to Run keys from user-writable paths (rare, investigate)
level: high
tags:
- attack.persistence
- attack.t1547.001
- attack.execution
- attack.t1059
---
title: ESXi Ransomware Execution - Aurora ChaCha20 Encryptor Behavior
description: Detects mass VM termination and datastore encryption patterns on ESXi hosts consistent with Aurora ransomware Linux variant.
status: experimental
date: 2026/10/30
author: Security Arsenal Threat Intelligence
logsource:
product: linux
service: auditd
detection:
selection_vmkill:
a0:
- 'esxcli'
- 'vim-cmd'
a2|contains:
- 'vm process kill'
- 'vmsvc/power.off'
selection_rename:
a0:
- 'mv'
- 'openssl'
- 'chacha'
timeframe: 5m
condition: selection_vmkill or selection_rename
falsepositives:
- Legitimate VM power operations by virtualization administrators
level: critical
tags:
- attack.impact
- attack.t1486
- attack.t1489
// Security Arsenal - MadApe / njRAT / Star Blizzard / PHP2Shell IOC + Behavior Hunt
// Run across Microsoft Sentinel workspace
let PhishDomains = dynamic(["sucdens.com","cepoffices.com","zakosta.info","nsboards.com","adastraerrans.com","travestiilan.com","nysndigital.com","powerlivings.com","qbcares.com","chanret.com","captchanom.top","preentootmist.org","swp23.com"]);
let BadIPs = dynamic(["96.126.130.81","146.19.125.36","81.177.215.15","89.106.83.49","157.173.29.133","103.245.231.248"]);
let BadHashes = dynamic(["28f046d9f985e58cbc8b245b54d4179feacecc12f41e2f6594306867ce3e8727","9e1a679ca45a149d2bd681cbb8ec3b1cc3d271fad51b092a3db5e5642eb6676b","a4af136d159a8eb96b54924fa80355ca52874913301300f55af7d67ae97edcfe","87138f63974a8ccbbf5840c31165f1a4bf92a954bacccfbf1e7e5525d750aa48"]);
union isfuzzy=true
(DeviceNetworkEvents
| where TimeGenerated > ago(14d)
| where RemoteUrl has_any (PhishDomains) or RemoteIP in (BadIPs)
| project TimeGenerated, DeviceName, InitiatingProcessFileName, RemoteUrl, RemoteIP, RemotePort, ActionType),
(DeviceProcessEvents
| where TimeGenerated > ago(14d)
| where SHA256 in (BadHashes)
| project TimeGenerated, DeviceName, FileName, FolderPath, SHA256, InitiatingProcessCommandLine),
(DeviceRegistryEvents
| where TimeGenerated > ago(14d)
| where RegistryKey has_any (@"CurrentVersion\Run", @"CurrentVersion\RunOnce")
| where RegistryValueData has_any (@"\Temp\", @"\AppData\Roaming\", @"\Public\")
| where RegistryValueData endswith ".exe" or RegistryValueData endswith ".ps1" or RegistryValueData endswith ".vbs"
| project TimeGenerated, DeviceName, RegistryKey, RegistryValueName, RegistryValueData, InitiatingProcessFileName),
(AADSignInEventsBeta
| where TimeGenerated > ago(14d)
| where AuthenticationProtocol == "deviceCode"
| where RiskLevelDuringSignIn in ("high","medium") or Country !in ("US","IL") // tune to tenant baseline
| project TimeGenerated, UserPrincipalName, IPAddress, Country, ApplicationDisplayName, RiskLevelDuringSignIn)
# Security Arsenal - Credential-Theft IOC Hunt (njRAT / MadApe / PHP2Shell pivots)
# Run as Administrator on endpoints or via RMM/EDR remote shell. Output: CSV per host.
$BadHashes = @(
"28f046d9f985e58cbc8b245b54d4179feacecc12f41e2f6594306867ce3e8727",
"9e1a679ca45a149d2bd681cbb8ec3b1cc3d271fad51b092a3db5e5642eb6676b",
"a4af136d159a8eb96b54924fa80355ca52874913301300f55af7d67ae97edcfe",
"87138f63974a8ccbbf5840c31165f1a4bf92a954bacccfbf1e7e5525d750aa48",
"a607384ce68144f2061a8b30cc65a6b8"
)
$BadIPs = @("96.126.130.81","146.19.125.36","81.177.215.15","89.106.83.49","157.173.29.133","103.245.231.248")
$BadDomains = @("sucdens.com","cepoffices.com","qbcares.com","chanret.com","captchanom.top","preentootmist.org","swp23.com")
$results = @()
# 1) njRAT-style Run-key persistence in user-writable paths
$runKeys = @(
"HKCU:\Software\Microsoft\Windows\CurrentVersion\Run",
"HKCU:\Software\Microsoft\Windows\CurrentVersion\RunOnce",
"HKLM:\Software\Microsoft\Windows\CurrentVersion\Run",
"HKLM:\Software\Microsoft\Windows\CurrentVersion\RunOnce"
)
foreach ($k in $runKeys) {
if (Test-Path $k) {
(Get-Item $k).Property | ForEach-Object {
$v = (Get-ItemProperty -Path $k -Name $_).$_
if ($v -match 'Temp|AppData|Public' -and $v -match '\.(exe|ps1|vbs)$') {
$results += [pscustomobject]@{Type="RunKeyPersistence"; Detail="$k :: $_ = $v"}
}
}
}
}
# 2) Hash sweep on common njRAT drop locations
$dropDirs = @("$env:TEMP","$env:APPDATA","$env:PUBLIC","$env:USERPROFILE\Downloads")
foreach ($d in $dropDirs) {
Get-ChildItem -Path $d -Recurse -Include *.exe,*.dll -ErrorAction SilentlyContinue | ForEach-Object {
$h = (Get-FileHash $_.FullName -Algorithm SHA256 -ErrorAction SilentlyContinue).Hash
if ($BadHashes -contains $h) {
$results += [pscustomobject]@{Type="MaliciousFileHash"; Detail="$($_.FullName) SHA256=$h"}
}
}
}
# 3) Active/recent network connections to C2 and staging IPs
Get-NetTCPConnection -State Established -ErrorAction SilentlyContinue |
Where-Object { $BadIPs -contains $_.RemoteAddress } |
ForEach-Object {
$p = Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue
$results += [pscustomobject]@{Type="C2Connection"; Detail="$($_.RemoteAddress):$($_.RemotePort) via $($p.ProcessName) (PID $($_.OwningProcess))"}
}
# 4) DNS cache hits for phishing kit / tracking domains
$dns = Get-DnsClientCache -ErrorAction SilentlyContinue
foreach ($dom in $BadDomains) {
$dns | Where-Object { $_.Entry -like "*$dom*" } | ForEach-Object {
$results += [pscustomobject]@{Type="PhishingDomainDNS"; Detail="$($_.Entry) -> $($_.Data)"}
}
}
# 5) Scheduled tasks referencing user-writable paths (Star Blizzard / njRAT pattern)
Get-ScheduledTask | ForEach-Object {
$t = $_
$t.Actions | Where-Object { $_.Execute -match 'Temp|AppData|Public' } | ForEach-Object {
$results += [pscustomobject]@{Type="SuspiciousScheduledTask"; Detail="$($t.TaskName) -> $($_.Execute) $($_.Arguments)"}
}
}
$results | Export-Csv -Path "$env:TEMP\SA_IOC_Hunt_$(hostname)_$(Get-Date -Format yyyyMMdd_HHmm).csv" -NoTypeInformation
if ($results.Count -gt 0) { $results | Format-Table -AutoSize; Write-Host "[!] $($results.Count) findings - escalate to IR." -ForegroundColor Red }
else { Write-Host "[+] No hits on this host." -ForegroundColor Green }
Response Priorities
Immediate (0–4 hours)
- Block all listed IPs, domains, and hostnames at DNS resolver, web proxy, and egress firewall; push file hashes to EDR blocklists.
- Run the KQL hunt and PowerShell sweep environment-wide; isolate any host with C2 connections to
146.19.125.36,81.177.215.15,89.106.83.49,157.173.29.133,103.245.231.248, or96.126.130.81. - Alert on any user who fetched tracking pixels from
track.chanret[.]com— these are confirmed live recipients of the QuickBooks scam and prime njRAT targets. - Query Entra ID sign-in logs for device-code grant authentications in the last 14 days (MadApe exposure check).
24 Hours (identity-focused)
- Assume credential compromise for any device-code sign-in anomaly: revoke refresh tokens (
Revoke-MgUserSignInSession/ GraphrevokeSignInSessions), force password reset, and require re-enrollment of MFA for affected users. - Audit OAuth app consent grants for newly-added permissions (mail.read, offline_access) — MadApe tokens may persist via consent.
- Review mailbox rules and Teams/SharePoint external access for Star Blizzard-style session persistence following any EvilGinx-class AiTM event.
- Brief finance/QuickBooks users on the callback scam; njRAT-infected hosts require full reimage, not just AV cleanup.
1 Week (architecture hardening)
- Enforce phishing-resistant MFA (FIDO2/passkeys) and disable or restrict device-code flow via Conditional Access where not operationally required.
- Deploy Token Protection / Continuous Access Evaluation to bind tokens to devices, blunting AiTM and kit-based token theft.
- Patch and validate: CVE-2022-30190, CVE-2023-36884, CVE-2023-38831, CVE-2024-4947; virtual-patch PHP stacks against CVE-2026-109618/109619 and audit shared-hosting credential reuse (PHP2Shell pivot vector).
- ESXi hardening: isolate management interfaces, disable shell/SSH when unused, enforce lockdown mode, and snapshot/backup datastores offline (Aurora-specific).
- NRD (newly registered domain) blocking at the proxy — kills the majority of MadApe and QuickBooks-lookalike infrastructure at birth.
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.