Kaspersky has disclosed three distinct threat activity clusters — NightEagle (also tracked as APT-Q-95), Hacking Cat, and Toy Ghouls — actively targeting enterprises, with operations spanning stealthy backdoor access, encryption-based extortion, and outright destructive wiper deployment. NightEagle, active since at least 2023, has evolved its tradecraft with new persistence and lateral movement techniques. For SOC teams and IR responders, this is a triple-threat scenario: the same defensive posture must catch a quiet APT implant, a ransomware detonation, and a wiper designed to destroy rather than extort. If your telemetry can't distinguish and detect all three, you have a gap.
What Happened
According to multiple reports from Kaspersky, three separate threat clusters are running concurrent campaigns against enterprise targets:
- NightEagle (APT-Q-95): A persistent actor tracked since at least 2023, now observed using new techniques for persistence and lateral movement. This is the classic APT pattern — establish durable access, spread quietly, and maintain long-term presence for espionage or staging.
- Hacking Cat: Associated with encryption-based attacks — ransomware operations against enterprise environments.
- Toy Ghouls: Linked to wiper deployment — destructive malware whose goal is data destruction and operational disruption, not monetization.
The combination matters. Ransomware gives you an extortion note and (sometimes) a path back. Wipers give you nothing. An environment that detects the noisy ransomware but misses the quiet NightEagle implant may still be pre-positioned for a destructive Toy Ghouls-style follow-on. Defenders must treat these as a single defensive problem: catch persistence early, catch lateral movement mid-kill-chain, and catch destruction behaviors before detonation.
Technical Analysis
Threat Actors and Objectives
| Cluster | Objective | Kill Chain Position |
|---|---|---|
| NightEagle / APT-Q-95 | Persistent unauthorized access, espionage, staging | Initial access → persistence → lateral movement |
| Hacking Cat | Encryption-based extortion | Impact (T1486) |
| Toy Ghouls | Destructive wiping of systems/data | Impact (T1485, T1561) |
NightEagle's Evolved Tradecraft (Defender's View)
Kaspersky reports NightEagle employing new persistence and lateral movement techniques. While the vendor's reporting details actor-specific implants, the defensive-relevant behaviors for this class of APT activity map to well-understood MITRE ATT&CK techniques:
- Persistence (TA0003): Registry Run keys (T1060/T1547.001), Windows services (T1543.003), and scheduled tasks (T1053.005) pointing to binaries in non-standard locations — user profile directories, ProgramData subfolders, and masqueraded system paths. APT implants favor locations writable without elevation and names that blend with legitimate software.
- Lateral movement (TA0008): Remote service creation over SMB (T1021.002 with T1569.002), PsExec-style execution, admin share writes (\HOST\ADMIN$), and RDP (T1021.001). The hallmark observable is a service binary appearing on a remote host via an administrative share, followed by a 7045 service-install event on the target.
Ransomware and Wiper Behavior (Hacking Cat / Toy Ghouls)
Encryption and destruction operations share a common pre-impact playbook that is highly detectable:
- Shadow copy deletion via
vssadmin.exe delete shadows,wmic shadowcopy delete, or direct VSS API abuse (T1490) — performed to eliminate recovery options before encryption or wiping. - Boot configuration tampering via
bcdedit.exesettingrecoveryenabled noandbootstatuspolicy ignoreallfailures— standard in both ransomware and wiper chains to prevent automatic recovery. - Mass file modification: High-velocity file rename/rewrite operations from a single process, often with new extensions appended (ransomware) or raw sector/file overwrite patterns (wipers).
The critical distinction for IR: wipers like those attributed to Toy Ghouls will often mimic ransomware (dropping ransom-style notes) while performing irreversible destruction. Your triage must not assume recoverability.
Exploitation Status
- No CVE identifiers were disclosed in this reporting; these are tradecraft- and tooling-driven campaigns rather than exploitation of a single patchable flaw. Defensive focus must therefore be on behavioral detection and attack-surface reduction, not patch prioritization alone.
- NightEagle activity is confirmed ongoing since 2023 with newly observed techniques as of 2026 — treat as active, evolving threat.
- Hacking Cat (ransomware) and Toy Ghouls (wiper) activity is confirmed in-the-wild per Kaspersky reporting.
- None of these clusters are tied to a CISA KEV entry in the source reporting; the campaigns have been observed primarily against Russian enterprises, but the TTPs are fully portable. Organizations with operations, subsidiaries, supply-chain partners, or even incidental infrastructure exposure in the region should treat this as directly relevant.
Detection & Response
Sigma Rules
The following rules target the three defensive pillars: persistence, destructive pre-impact behavior, and SMB-based lateral movement. They are tuned to fire on high-signal behavior — validate against your environment before enabling at high level.
---
title: Suspicious Persistence via Run Key or Service Pointing to Non-Standard Path
id: 1f3a9c74-2b6e-4d81-9a5c-7e2f0b8d4a31
status: experimental
description: Detects persistence registrations (Run keys, services, scheduled tasks) where the binary resides in user-writable or unusual directories, consistent with APT implant persistence behavior observed in NightEagle/APT-Q-95 style intrusions.
references:
- https://attack.mitre.org/techniques/T1547/001/
- https://attack.mitre.org/techniques/T1543/003/
- https://attack.mitre.org/techniques/T1053/005/
author: Security Arsenal
date: 2026/09/15
tags:
- attack.persistence
- attack.t1547.001
- attack.t1543.003
- attack.t1053.005
logsource:
category: registry_set
product: windows
detection:
selection_key:
TargetObject|contains:
- '\CurrentVersion\Run\'
- '\CurrentVersion\RunOnce\'
selection_path:
Details|contains:
- '\AppData\'
- '\ProgramData\'
- '\Users\Public\'
- '\Temp\'
- '\Perflogs\'
filter_legit:
Details|contains:
- '\AppData\Local\Microsoft\'
- 'onedrive.exe'
- 'teams.exe'
condition: selection_key and selection_path and not filter_legit
falsepositives:
- Legitimate user-context updaters (browsers, collaboration tools) - tune filter list per environment
level: high
---
title: Ransomware or Wiper Pre-Impact Behavior - Shadow Copy Deletion and Recovery Disable
id: 6c2d8e41-9f47-4b3a-a5d1-2e8c0f7b9d52
status: experimental
description: Detects deletion of Volume Shadow Copies and disabling of boot recovery options via vssadmin, wmic, or bcdedit - a near-universal precursor to ransomware encryption and wiper destruction, as seen in Hacking Cat and Toy Ghouls style operations.
references:
- https://attack.mitre.org/techniques/T1490/
author: Security Arsenal
date: 2026/09/15
tags:
- attack.impact
- attack.t1490
logsource:
category: process_creation
product: windows
detection:
selection_vssadmin:
Image|endswith: '\vssadmin.exe'
CommandLine|contains:
- 'delete shadows'
- 'resize shadowstorage'
selection_wmic:
Image|endswith:
- '\wmic.exe'
- '\powershell.exe'
- '\powershell_ise.exe'
CommandLine|contains: 'shadowcopy delete'
selection_bcdedit:
Image|endswith: '\bcdedit.exe'
CommandLine|contains:
- 'recoveryenabled no'
- 'bootstatuspolicy ignoreallfailures'
condition: 1 of selection_*
falsepositives:
- Rare: legitimate backup or storage management tooling - inventory authorized backup software before deployment
level: critical
---
title: Remote Service Binary Dropped via Admin Share - PsExec-Style Lateral Movement
id: 9b4e1a06-3d58-4c72-b8e6-5a1d2f3c7e48
status: experimental
description: Detects executable files written to administrative shares on remote hosts followed by service execution, a hallmark of APT lateral movement techniques (PsExec-style tooling) consistent with evolved NightEagle movement tradecraft.
references:
- https://attack.mitre.org/techniques/T1021/002/
- https://attack.mitre.org/techniques/T1569/002/
author: Security Arsenal
date: 2026/09/15
tags:
- attack.lateral_movement
- attack.t1021.002
- attack.t1569.002
logsource:
category: file_event
product: windows
detection:
selection:
TargetFilename|startswith: 'C:\Windows\'
TargetFilename|endswith: '.exe'
Image|endswith: '\System\svchost.exe'
filter_known_tools:
TargetFilename|contains:
- '\SoftwareDistribution\'
- '\WinSxS\'
- '\servicing\'
condition: selection and not filter_known_tools
falsepositives:
- Legitimate remote administration tools (SCCM, PDQ, Tanium) - baseline approved admin tooling and filter by service name
level: high
KQL — Microsoft Sentinel / Defender Hunt
This hunt correlates destructive pre-impact behavior (shadow copy deletion, recovery tampering) with suspicious service installs and execution from non-standard paths. Run it across a 14-day lookback during threat hunts, and convert the first section into an analytics rule at high severity.
// Hunt 1: Pre-impact destruction behavior (ransomware/wiper precursor)
let Lookback = 14d;
let DestructiveProcs = DeviceProcessEvents
| where TimeGenerated > ago(Lookback)
| where (FileName =~ "vssadmin.exe" and ProcessCommandLine has_any ("delete shadows", "resize shadowstorage"))
or (FileName =~ "wmic.exe" and ProcessCommandLine has "shadowcopy delete")
or (FileName =~ "bcdedit.exe" and ProcessCommandLine has_any ("recoveryenabled no", "bootstatuspolicy ignoreallfailures"))
| project DestructiveTime=TimeGenerated, DeviceName, AccountName, DestructiveCmd=ProcessCommandLine, InitiatingProcessFileName;
// Hunt 2: Suspicious service installs (lateral movement / persistence)
let SuspiciousServices = SecurityEvent
| where TimeGenerated > ago(Lookback)
| where EventID == 7045
| where ServiceFileName has_any ("\\AppData\\", "\\ProgramData\\", "\\Users\\Public\\", "\\Temp\\", "\\Perflogs\\")
or ServiceFileName has "ADMIN$"
| project ServiceInstallTime=TimeGenerated, Computer, Account, ServiceName, ServiceFileName;
// Correlate: hosts showing BOTH destructive prep AND suspicious services within 24h are priority IR candidates
DestructiveProcs
| join kind=inner (SuspiciousServices) on $left.DeviceName == $right.Computer
| where abs(datetime_diff('hour', DestructiveTime, ServiceInstallTime)) <= 24
| project DeviceName, DestructiveTime, DestructiveCmd, ServiceName, ServiceFileName, AccountName
| order by DestructiveTime asc;
// Hunt 3 (network lateral movement): inbound SMB admin share writes tracked via Defender network events
DeviceNetworkEvents
| where TimeGenerated > ago(Lookback)
| where RemotePort == 445
| join kind=inner (DeviceFileEvents
| where TimeGenerated > ago(Lookback)
| where FolderPath startswith "C:\\Windows\\"
| where FileName endswith ".exe"
| where InitiatingProcessFileName =~ "svchost.exe") on DeviceId
| project TimeGenerated, DeviceName, RemoteIP, FileName, FolderPath
| order by TimeGenerated desc;
Velociraptor VQL — Endpoint Persistence and Service Hunt
Deploy this as a hunt across your fleet to sweep for persistence registrations pointing to non-standard binary locations — the bread and butter of APT implant persistence.
-- Hunt for persistence mechanisms (Run keys + services) pointing to non-standard binary paths
-- Triage artifact for NightEagle-style implant persistence
LET suspicious_paths = '(?i)(\\\\AppData\\\\|\\\\ProgramData\\\\|\\\\Users\\\\Public\\\\|\\\\Temp\\\\|\\\\Perflogs\\\\)'
SELECT 'RunKey' AS PersistenceType,
fullpath AS KeyPath,
data.value AS ValueData,
mtime AS LastWrite
FROM foreach(row={
SELECT FullPath AS fullpath, Data AS data, Mtime AS mtime
FROM read_reg_key(globs='HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Run/*')
}, query={
SELECT fullpath, data, mtime FROM scope()
})
WHERE data.value =~ suspicious_paths
UNION ALL
SELECT 'Service' AS PersistenceType,
Name AS KeyPath,
PathName AS ValueData,
NULL AS LastWrite
FROM services()
WHERE PathName =~ suspicious_paths
AND NOT PathName =~ '(?i)(microsoft|windows defender|onedrive)'
Remediation & Hardening Script
This PowerShell script audits for the observable artifacts above and applies hardening relevant to these campaigns. Run elevated; review before enforcing changes in production.
#Requires -RunAsAdministrator
# NightEagle / Hacking Cat / Toy Ghouls - Audit and Harden Script
# Security Arsenal - IR Readiness
$report = @()
# --- 1. Audit Run-key persistence pointing to non-standard paths ---
$runKeys = @(
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce',
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce'
)
$suspiciousPaths = 'AppData|ProgramData|Users\\Public|Temp|Perflogs'
foreach ($key in $runKeys) {
if (Test-Path $key) {
Get-ItemProperty $key | Get-Member -MemberType NoteProperty | ForEach-Object {
$val = (Get-ItemProperty $key).($_.Name)
if ($val -match $suspiciousPaths) {
$report += [pscustomobject]@{Finding='Suspicious RunKey'; Location=$key; Value=$val}
}
}
}
}
# --- 2. Audit services with binaries in non-standard paths ---
Get-CimInstance Win32_Service | Where-Object {
$_.PathName -match $suspiciousPaths -and $_.PathName -notmatch 'Microsoft|Windows Defender'
} | ForEach-Object {
$report += [pscustomobject]@{Finding='Suspicious Service'; Location=$_.Name; Value=$_.PathName}
}
# --- 3. Verify shadow copies exist (wiper/ransomware resilience check) ---
$shadows = Get-CimInstance Win32_ShadowCopy -ErrorAction SilentlyContinue
if (-not $shadows) {
$report += [pscustomobject]@{Finding='NO SHADOW COPIES PRESENT'; Location='VSS'; Value='Possible prior shadow deletion or VSS disabled - investigate'}
}
# --- 4. Verify boot recovery settings not tampered ---
$bcd = bcdedit /enum '{current}' 2>$null | Out-String
if ($bcd -match 'recoveryenabled\s+No') {
$report += [pscustomobject]@{Finding='Boot recovery DISABLED'; Location='BCD'; Value='bcdedit shows recoveryenabled No - ransomware/wiper indicator'}
}
# --- 5. Hardening: enable ASR rules blocking common ransomware behavior (Defender) ---
if (Get-Command Set-MpPreference -ErrorAction SilentlyContinue) {
# Block executable content from email/webmail; block abuse of exploited vulnerable signed drivers
Set-MpPreference -AttackSurfaceReductionRules_Ids 'BE9BA2D9-53EA-4CDC-84E5-9B1EEEE46550' -AttackSurfaceReductionRules_Actions Enabled
# Block credential stealing from lsass (limits lateral movement tooling)
Set-MpPreference -AttackSurfaceReductionRules_Ids '9e6c4e1f-7d60-472f-ba1a-a39ef669e4b2' -AttackSurfaceReductionRules_Actions Enabled
# Block process creations from PSExec/WMI commands (lateral movement)
Set-MpPreference -AttackSurfaceReductionRules_Ids 'd1e49aac-8f56-4280-b9ba-993a6d77406c' -AttackSurfaceReductionRules_Actions Enabled
$report += [pscustomobject]@{Finding='ASR rules enabled'; Location='Defender'; Value='LSASS protection + PSExec/WMI child process block'}
}
# --- 6. Hardening: disable SMBv1 (legacy lateral movement vector) ---
$smb1 = Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -ErrorAction SilentlyContinue
if ($smb1 -and $smb1.State -eq 'Enabled') {
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -NoRestart -ErrorAction SilentlyContinue
$report += [pscustomobject]@{Finding='SMBv1 disabled'; Location='OS Feature'; Value='Restart required'}
}
# --- 7. Enable advanced audit policies for service install + process creation w/ command line ---
auditpol /set /subcategory:"Security System Extension" /success:enable /failure:enable | Out-Null
New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit' -Name 'ProcessCreationIncludeCmdLine_Enabled' -Value 1 -PropertyType DWord -Force | Out-Null
$report += [pscustomobject]@{Finding='Audit policy hardened'; Location='auditpol/registry'; Value='7045 + command-line logging enabled'}
$report | Format-Table -AutoSize
$report | Export-Csv -Path "$env:TEMP\APT_Audit_$(Get-Date -Format yyyyMMdd_HHmm).csv" -NoTypeInformation
Write-Host "`nAudit complete. Review findings above; any 'Suspicious' entries warrant immediate IR triage." -ForegroundColor Yellow
Remediation
No single patch resolves these campaigns — they are tradecraft-driven. Defensive action must be layered:
- Immediately validate backups and offline copies. With a wiper actor (Toy Ghouls) in play, assume destruction, not extortion. Verify at least one immutable, offline, or air-gapped backup copy per critical system, and test restoration this week — not just backup success.
- Deploy the detections above. The shadow-copy-deletion and bcdedit rules should be enabled at critical severity with automated host isolation on trigger — in ransomware/wiper scenarios, seconds matter.
- Restrict lateral movement paths. Limit SMB admin share access to dedicated management hosts, enforce tiered administration (no domain admin logons on workstations/servers), deploy LAPS for local admin passwords, and consider disabling PSExec-style remote service execution via the ASR rules in the script above (test in audit mode first).
- Hunt for persistence now. Run the VQL artifact and KQL queries across your fleet with a minimum 90-day lookback — NightEagle has been active since 2023 and persistence implants are, by design, quiet. Any Run key or service pointing into AppData/ProgramData/Public paths that you cannot attribute to known software is an IR ticket, not a tuning exercise.
- Protect LSASS and credentials. Enable Credential Guard where supported, enable the LSASS-protection ASR rule, and audit for suspicious lsass.exe access — credential theft is the fuel for APT lateral movement.
- Monitor Kaspersky's published IOCs. Pull the technical reports for these three clusters from Kaspersky Securelist (securelist.com) and ingest published hashes, C2 domains, and YARA rules into your EDR/SIEM blocklists. The vendor has committed multi-report coverage of these actors; indicators will be updated as the campaigns evolve.
- If you find evidence of NightEagle-class persistence: do not simply delete the implant. Acquire memory and disk images first, map lateral movement (review 7045 events, admin share writes, RDP logons across the environment), rotate all credentials that touched affected hosts, and treat the incident as a full APT eradication exercise — partial cleanup of a persistent actor guarantees re-entry.
Related Resources
Security Arsenal Red Team Services AlertMonitor Platform Book a SOC Assessment pen-testing Intel Hub
Is your security operations ready?
Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.