Back to Intelligence

Star Blizzard SPICA Malware & PHP2Shell Extortion: OTX Pulse Analysis — Prediction Market Fraud Infrastructure Detection

SA
Security Arsenal Team
October 30, 2026
9 min read

Live AlienVault OTX pulse data from October 29-30, 2026, reveals three distinct threat activity clusters requiring immediate attention from enterprise security teams. The dominant threat is Star Blizzard (also tracked as Callisto), a persistent espionage group attributed to the Russian Federal Security Service Centre 18, actively conducting credential theft and hack-and-leak operations against government, defense, and NGO sectors across NATO countries and Ukraine. This campaign leverages sophisticated spear-phishing with relationship-building pretexts, deploying the SPICA malware family alongside post-exploitation tools including EvilGinx for adversary-in-the-middle attacks and COLDCOPY for data exfiltration.

Concurrently, a financially motivated actor operating under the handle kkkkevin777 has weaponized PHP2Shell against Japanese real estate infrastructure, compromising shared hosting environments to pivot across nearly 20 related sites and exfiltrate customer databases. This activity demonstrates the continued blurring of lines between cybercrime and APT tactics, utilizing shared hosting credential reuse for lateral movement.

The third intelligence stream identifies Russian-language traffer teams—AtlasCore, PolyFucked, and Magnetic Team—rapidly adapting affiliate fraud models to exploit prediction markets including PolyMarket and Kalshi. These groups provide comprehensive fraud-as-a-service infrastructure including administrative panels, cryptocurrency payment systems, and AI-assisted scam tooling, representing an emerging threat vertical for financial sector monitoring.

Threat Actor / Malware Profile

Star Blizzard (Callisto / FSB Centre 18)

Distribution Method: Highly targeted spear-phishing campaigns utilizing impersonation of trusted contacts, relationship building over weeks or months, and malicious document attachments exploiting CVE-2022-30190 (Follina), CVE-2023-36884, and CVE-2023-38831. Recent campaigns have employed CAPTCHA-protected phishing pages (captchanom.top) to evade automated analysis.

Payload Behavior: SPICA operates as a .NET-based backdoor with modular architecture enabling dynamic loading of additional capabilities. The malware establishes persistence through registry run keys and scheduled tasks, implementing timestomping to blend with legitimate system binaries. EvilGinx components facilitate adversary-in-the-middle attacks for session hijacking and credential harvesting, while COLDCOPY handles automated exfiltration of sensitive documents to actor-controlled infrastructure.

C2 Communication: TLS-encrypted channels to bulletproof hosting providers, with fallback to DNS tunneling for restricted environments. Observed infrastructure includes 103.245.231.248 and preentootmist.org. Communication patterns show beacons every 300-900 seconds with jitter to evade network detection.

Persistence Mechanism: Registry modifications under HKCU\Software\Microsoft\Windows\CurrentVersion\Run with randomized value names, COM hijacking for Outlook add-ins, and WMI event subscriptions for fileless execution.

Anti-Analysis: VM detection through registry and process enumeration, debugger presence checks, and sleep-based sandbox evasion. SPICA samples contain encrypted configuration blobs using AES-256 with keys derived from victim hostname hashes.

PHP2Shell (kkkkevin777 Campaign)

Distribution Method: Exploitation of web application vulnerabilities (CVE-2026-109618, CVE-2026-109619) against exposed staging servers, followed by credential harvesting for lateral movement across shared hosting environments.

Payload Behavior: PHP-based web shell providing remote code execution, file system enumeration, and database extraction capabilities. Deploys secondary tools for privilege escalation and maintains access through modified legitimate files with appended malicious code.

C2 Communication: HTTP(S) POST requests to compromised legitimate domains, utilizing steganography in image files for command transmission. Beacon infrastructure observed at 96.126.130.81.

Traffers (Prediction Market Fraud)

Distribution Method: Malvertising, SEO poisoning, and social media promotion driving traffic to fraudulent prediction market platforms.

Infrastructure: 106 identified domains including event-pick.com, predict.biz, and gemchange.com, with C2 and panel infrastructure hosted at 158.94.209.19 and 83.217.208.78.

IOC Analysis

The pulse data reveals 174 indicators across three campaigns, requiring differentiated operationalization strategies:

IP Addresses (5 total): Critical for network-layer blocking. Star Blizzard infrastructure (103.245.231.248) and PHP2Shell staging servers (96.126.130.81) should be added to perimeter blocklists with retroactive SIEM queries for the past 90 days. Traffers infrastructure (158.94.209.19, 83.217.208.78) requires monitoring for cryptocurrency transaction patterns and new domain registrations.

Domains (8 sampled, 106+ total): Star Blizzard domains employ homoglyph attacks (preentootmist.org) and should be blocked at DNS and email security layers. CAPTCHA-protected phishing infrastructure (captchanom.top) indicates sophisticated evasion requiring user awareness training. Traffers domains follow predictable naming patterns enabling proactive registration monitoring.

File Hashes (65+ total): SPICA samples require YARA rule deployment and retroactive EDR hunting. SHA256 hash 87138f63974a8ccbbf5840c31165f1a4bf92a954bacccfbf1e7e5525d750aa48 represents a primary SPICA loader and should be searched across all endpoints.

CVEs (5 total): CVE-2022-30190, CVE-2023-36884, and CVE-2023-38831 remain actively exploited by Star Blizzard—verify patching status for Microsoft Office and Windows systems. CVE-2026-109618 and CVE-2026-109619 affect PHP-based content management systems and require virtual patching or WAF rules until vendor fixes deploy.

Tooling Recommendations: MISP or ThreatConnect for IOC aggregation, Greynoise for IP reputation context, and URLScan.io for phishing page analysis. For traffers infrastructure, leverage Recorded Future or similar platforms for cryptocurrency wallet attribution.

Detection Engineering

Sigma Rules

YAML
---
title: Star Blizzard SPICA Malware Registry Persistence
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects registry run key modifications associated with SPICA malware persistence mechanisms
author: Security Arsenal Threat Intelligence
date: 2026/10/30
references:
    - https://www.cyfirma.com/research/adversary-unmasked-apt-profile-star-blizzard/
logsource:
    category: registry_event
    product: windows
detection:
    selection:
        EventType: SetValue
        TargetObject|contains:
            - '\Software\Microsoft\Windows\CurrentVersion\Run'
            - '\Software\Microsoft\Windows\CurrentVersion\RunOnce'
    filter:
        Image|startswith:
            - 'C:\Windows\System32\'
            - 'C:\Windows\SysWOW64\'
    condition: selection and not filter
fields:
    - Image
    - TargetObject
    - Details
tags:
    - attack.persistence
    - attack.t1547.001
    - attack.t1112
falsepositives:
    - Legitimate software installations
    - System administrator activity
level: high
---
title: EvilGinx Adversary-in-the-Middle DNS Query
id: 8b9c0d1e-2f3a-4b5c-6d7e-8f9a0b1c2d3e
status: experimental
description: Detects DNS queries to known EvilGinx phishing infrastructure
author: Security Arsenal Threat Intelligence
date: 2026/10/30
logsource:
    category: dns
detection:
    selection:
        query|contains:
            - 'preentootmist.org'
            - 'captchanom.top'
    condition: selection
fields:
    - query
    - answer
    - src_ip
tags:
    - attack.command_and_control
    - attack.t1071.001
    - attack.t1566.002
falsepositives:
    - Security research activity
level: critical
---
title: PHP2Shell Web Shell Process Execution
id: 9c0d1e2f-3a4b-5c6d-7e8f-9a0b1c2d3e4f
status: experimental
description: Detects suspicious process execution patterns from PHP web shell activity
author: Security Arsenal Threat Intelligence
date: 2026/10/30
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        ParentImage|endswith: '\php.exe'
        Image|endswith:
            - '\cmd.exe'
            - '\powershell.exe'
            - '\whoami.exe'
            - '\net.exe'
            - '\ipconfig.exe'
    condition: selection
fields:
    - ParentImage
    - Image
    - CommandLine
    - User
tags:
    - attack.execution
    - attack.t1059
    - attack.t1505.003
falsepositives:
    - Legitimate PHP administrative scripts
    - Web application deployment
level: high

KQL (Microsoft Sentinel)

KQL — Microsoft Sentinel / Defender
// Hunt for Star Blizzard SPICA malware and PHP2Shell activity
let StarBlizzardIPs = dynamic(["103.245.231.248"]);
let StarBlizzardDomains = dynamic(["preentootmist.org", "captchanom.top"]);
let PHP2ShellIP = "96.126.130.81";
let SPICA_Hash = "87138f63974a8ccbbf5840c31165f1a4bf92a954bacccfbf1e7e5525d750aa48";
union isfuzzy=true
    (DeviceNetworkEvents
    | where RemoteIP in~ (StarBlizzardIPs) or RemoteUrl has_any (StarBlizzardDomains)
    | project TimeGenerated, DeviceName, RemoteIP, RemoteUrl, InitiatingProcessFileName, InitiatingProcessCommandLine),
    (DeviceProcessEvents
    | where FileName =~ "php.exe" and ProcessCommandLine has_any ("eval", "assert", "base64_decode")
    | project TimeGenerated, DeviceName, FileName, ProcessCommandLine, FolderPath),
    (DeviceFileEvents
    | where SHA256 == SPICA_Hash
    | project TimeGenerated, DeviceName, FileName, FolderPath, SHA256),
    (DeviceRegistryEvents
    | where RegistryKey has_any ("Run", "RunOnce") and RegistryValueName matches regex @"^[a-zA-Z0-9]{8,16}$"
    | project TimeGenerated, DeviceName, RegistryKey, RegistryValueName, RegistryValueData)
| sort by TimeGenerated desc
| extend Campaign = case(
    RemoteIP in~ (StarBlizzardIPs) or RemoteUrl has_any (StarBlizzardDomains), "StarBlizzard",
    RemoteIP == PHP2ShellIP or FileName =~ "php.exe", "PHP2Shell",
    SHA256 == SPICA_Hash, "SPICA_Malware",
    "Unknown"
)
| summarize count() by Campaign, DeviceName, TimeGenerated
| order by count_ desc

PowerShell IOC Hunt Script

PowerShell
#Requires -RunAsAdministrator
# Security Arsenal - Star Blizzard & PHP2Shell IOC Hunt Script
# Usage: Run on endpoints via RMM or GPO, output to SIEM collector

$ErrorActionPreference = 'SilentlyContinue'
$timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
$hostname = $env:COMPUTERNAME
$results = @()

# Star Blizzard IOCs
$sbIPs = @("103.245.231.248")
$sbDomains = @("preentootmist.org", "captchanom.top")
$sbHashes = @("87138f63974a8ccbbf5840c31165f1a4bf92a954bacccfbf1e7e5525d750aa48")

# PHP2Shell IOCs
$phpIP = "96.126.130.81"

Write-Host "[$timestamp] Starting IOC hunt on $hostname" -ForegroundColor Cyan

# Check network connections
$netstat = Get-NetTCPConnection -State Established
foreach ($conn in $netstat) {
    if ($sbIPs -contains $conn.RemoteAddress -or $conn.RemoteAddress -eq $phpIP) {
        $proc = Get-Process -Id $conn.OwningProcess
        $results += [PSCustomObject]@{
            Type = "Network_Connection"
            Severity = "CRITICAL"
            IOC = $conn.RemoteAddress
            Details = "Process: $($proc.ProcessName) (PID: $($proc.Id)), Local: $($conn.LocalAddress):$($conn.LocalPort)"
            Campaign = if ($sbIPs -contains $conn.RemoteAddress) { "StarBlizzard" } else { "PHP2Shell" }
        }
    }
}

# Check DNS cache
$dnsCache = Get-DnsClientCache
foreach ($entry in $dnsCache) {
    if ($sbDomains -contains $entry.Entry) {
        $results += [PSCustomObject]@{
            Type = "DNS_Cache"
            Severity = "HIGH"
            IOC = $entry.Entry
            Details = "Data: $($entry.Data), Status: $($entry.Status)"
            Campaign = "StarBlizzard"
        }
    }
}

# Check registry run keys
$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 ($key in $runKeys) {
    if (Test-Path $key) {
        $values = Get-ItemProperty -Path $key
        foreach ($prop in $values.PSObject.Properties) {
            if ($prop.Name -match '^[a-zA-Z0-9]{8,16}$' -and $prop.Value -match '\.exe|\.dll') {
                $results += [PSCustomObject]@{
                    Type = "Registry_Persistence"
                    Severity = "MEDIUM"
                    IOC = "$key\$($prop.Name)"
                    Details = "Value: $($prop.Value)"
                    Campaign = "Unknown"
                }
            }
        }
    }
}

# Check scheduled tasks
$tasks = Get-ScheduledTask | Where-Object {$_.TaskPath -notlike "\Microsoft*"}
foreach ($task in $tasks) {
    $info = Get-ScheduledTaskInfo -TaskName $task.TaskName -TaskPath $task.TaskPath
    if ($info.LastRunTime -gt (Get-Date).AddDays(-7)) {
        $results += [PSCustomObject]@{
            Type = "Scheduled_Task"
            Severity = "LOW"
            IOC = $task.TaskName
            Details = "Path: $($task.TaskPath), Last Run: $($info.LastRunTime)"
            Campaign = "Unknown"
        }
    }
}

# Check for SPICA hash in common locations
$searchPaths = @("$env:TEMP", "$env:APPDATA", "$env:LOCALAPPDATA", "C:\Users\Public")
foreach ($path in $searchPaths) {
    if (Test-Path $path) {
        Get-ChildItem -Path $path -Recurse -File -ErrorAction SilentlyContinue | 
        Select-Object -First 1000 | 
        ForEach-Object {
            $hash = Get-FileHash -Path $_.FullName -Algorithm SHA256
            if ($sbHashes -contains $hash.Hash) {
                $results += [PSCustomObject]@{
                    Type = "File_Hash_Match"
                    Severity = "CRITICAL"
                    IOC = $hash.Hash
                    Details = "Path: $($_.FullName), Size: $($_.Length) bytes"
                    Campaign = "SPICA"
                }
            }
        }
    }
}

# Output results
if ($results.Count -gt 0) {
    Write-Host "`n[ALERT] $($results.Count) IOC matches found!" -ForegroundColor Red
    $results | Format-Table -AutoSize
    $results | Export-Csv -Path "$env:TEMP\IOC_Hunt_$hostname_$(Get-Date -Format 'yyyyMMdd_HHmmss').csv" -NoTypeInformation
} else {
    Write-Host "[OK] No IOC matches detected" -ForegroundColor Green
}

# Return for SIEM ingestion
return $results

Response Priorities

Immediate (0-24 hours):

  • Block all identified IPs and domains at network perimeter and DNS layers
  • Deploy Sigma rules and KQL queries to SIEM/EDR platforms
  • Execute PowerShell hunt script across high-value endpoints (executives, finance, research)
  • Enable enhanced monitoring for Microsoft Office child processes (Follina exploitation indicator)
  • Verify web application firewall rules for PHP-based staging environments

24 Hours:

  • Conduct enterprise-wide password reset for users with access to sensitive systems—Star Blizzard specializes in credential theft
  • Review VPN and remote access logs for authentication from Star Blizzard infrastructure
  • Audit shared hosting environments for PHP2Shell web shell artifacts (modified .php files, unexpected file modifications)
  • Notify legal and compliance teams if customer data exfiltration is suspected (Japanese real estate campaign pattern)

1 Week:

  • Implement application allowlisting to prevent unauthorized .NET assembly execution
  • Deploy email security controls with detonation for CAPTCHA-protected phishing links
  • Harden shared hosting configurations with unique credentials per site and MFA enforcement
  • Establish monitoring for prediction market fraud domains targeting organizational brand or executives
  • Conduct tabletop exercise simulating Star Blizzard intrusion with focus on hack-and-leak response procedures

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.