Executive Summary

The past 24 hours have seen continued activity from nation-state threat actors and ransomware groups, with several high-severity vulnerabilities actively exploited in the wild. CISA added CVE-2026-31431 (Linux Kernel privilege escalation) to the KEV catalog on 2026-05-01, and CVE-2026-41940 (cPanel authentication bypass) remains under active exploitation. APT28 (Fancy Bear/Pawn Storm) is conducting ongoing PRISMEX-based espionage targeting Ukraine and NATO allies, leveraging CVE-2026-21509 and abusing Filen.io as a C2 channel. A newly updated PRISMEX component — SLIMAGENT — is now confirmed deployed via Signal messaging abuse. Mustang Panda has deployed an updated LOTUSLITE backdoor variant targeting India's banking sector, South Korean policy circles, and US government entities. A newly identified APT group (TGR-STA-1030 / UNC6619) has compromised government and critical infrastructure organisations in 37 countries over the past 12 months. Ransomware groups including Arkana Security, Akira, and RansomHub remain highly active, with approximately 70% of intrusions initiating via VPN credential compromise.

Threat Level: HIGH

Vulnerability Spotlight

CVEProductCVSSStatusRequired Action
CVE-2026-41940cPanel & WHM9.8KEV; exploited since ~2026-02-23Patch immediately; audit cPanel logs on ports 2082-2087
CVE-2026-31431Linux Kernel7.8KEV added 2026-05-01Apply kernel patches; monitor kernel module loading
CVE-2026-32202Microsoft Windows7.5Actively exploited; confirmed in updated advisoryApply Patch Tuesday fixes; monitor anomalous SMB activity
CVE-2026-21509TBDTBDActively exploited by APT28Patch immediately; check for PRISMEX artefacts
CVE-2026-1731Bomgar RMMTBDActively exploited for ransomware deploymentPatch or isolate Bomgar instances; audit remote sessions
CVE-2024-57726SimpleHelp9.9KEVPatch; review active sessions
CVE-2024-1708ConnectWise ScreenConnect8.4KEVPatch immediately
CVE-2026-5281Google ChromeHighKEVUpdate to 146.0.7680.178+

APT Campaign Activity

APT28 / Fancy Bear / Pawn Storm (Russia — GRU)

Confidence: HIGH | Targeting: Ukraine, NATO allies (Czech Republic, Poland, Romania, Slovakia, Slovenia, Turkey)

APT28 is conducting an active espionage campaign using a new modular malware suite called PRISMEX. The campaign uses spear-phishing with malicious Excel documents (VBA macro droppers) and weaponises recently patched vulnerabilities (CVE-2026-21509, CVE-2026-21513). A new component, SLIMAGENT (SlimAgent), is now confirmed: a C++ implant delivered via weaponised Signal group messages that captures screenshots with AES/RSA encryption, deployed via CERT-UA-tracked activity.

Malware Components:

Key TTPs: T1546.015 COM Object Hijacking, T1102.002 Cloud Storage C2 (Filen.io), T1566.002 Signal messaging abuse, rapid CVE weaponisation (2-week window)

Mustang Panda / TA416 / Earth Preta (China — PLA/MSS linked)

Confidence: HIGH | Targeting: India (banking sector), South Korea (policy/government), US (government/policy)

An updated LOTUSLITE backdoor variant (C++ custom backdoor) is being delivered via spear-phishing emails containing ZIP archives with a legitimate executable and a sideloaded malicious DLL. The staging infrastructure used Google Drive for payload hosting.

Technical Details:

TGR-STA-1030 / UNC6619 (Attribution Pending — Asia-based)

Confidence: MEDIUM | Targeting: 70 government and critical infrastructure organisations across 37 countries

A newly identified advanced cyberespionage group has compromised a broad range of targets over the past 12 months using a sophisticated, multi-stage toolset. Initial access via phishing and exploitation kits, with post-compromise use of custom malware, Linux rootkits, web shells, and tunneling/proxy tools for long-term persistence and exfiltration.

BRICKSTORM Operators (China — PRC State-Sponsored)

Confidence: HIGH | Targeting: Technology and legal sectors; VMware vSphere environments

BRICKSTORM is a sophisticated backdoor targeting VMware vCenter, ESXi, and Aria Automation Orchestrator. C2 traffic is tunnelled via DNS-over-HTTPS (DoH) to evade traditional DNS monitoring. CISA, NSA, and the Canadian Cyber Centre released updated IOCs and detection signatures on 2026-02-11 (updated Malware Analysis Report including Rust-based samples). Note: IOC reuse is not observed; signature-based detection is ineffective — TTP-based hunting is required.

Ransomware Activity

GroupTargetingNotable TTPStatus
RansomHubHealthcare, critical infraEx-ALPHV affiliates; double extortionHighly Active
Arkana SecurityUS ISPsDoxxing + encryption; data exposureActive
AkiraCross-sector (Windows/Linux)ESXi targeting; data exfilHighly Active
Dire WolfManufacturingLive negotiations; destructiveActive
QilinCross-sectorPossible state links; 101+ incidentsActive
GentlemenCross-sectorSystemBC + Mimikatz + RPC lateral movementActive

Primary Initial Access Vector (2026): Compromised VPN credentials (~70% of intrusions)
Secondary Vectors: Phishing, vulnerability exploitation (Bomgar CVE-2026-1731, ConnectWise CVE-2024-1708)
Post-Compromise Tooling: SystemBC (proxy/bot), Mimikatz (credential theft), Cobalt Strike, Covenant

IOC Pack

DomainThreat ActorMalwareConfidence
editor.gleeze[.]comMustang PandaLOTUSLITE C2HIGH
wellnessmedcare[.]orgAPT28PRISMEX dropperHIGH
wellnesscaremed[.]comAPT28PRISMEX dropperHIGH
freefoodaid[.]comAPT28PRISMEX dropperHIGH
longsauce[.]comAPT28PRISMEX dropperHIGH
filen.io (C2 API)APT28PrismexStager (Covenant)MEDIUM
IndicatorTypeThreat ActorNotes
dnx.onecore.dllFilenameMustang PandaLOTUSLITE malicious sideloaded DLL
1ac5e7ee1a107499MutexMustang PandaLOTUSLITE South Korea variant
323.txtFilenameMustang PandaDecoy document (South Korea variant)

KQL Hunting Queries

HQ-01: LOTUSLITE DLL Sideloading — Filename Hunt

// Hunt for Mustang Panda LOTUSLITE sideloaded DLL
DeviceFileEvents
| where TimeGenerated > ago(24h)
| where FileName =~ "dnx.onecore.dll"
| project TimeGenerated, DeviceName, FolderPath, SHA256, MD5,
          InitiatingProcessFileName, InitiatingProcessCommandLine,
          InitiatingProcessAccountName
| order by TimeGenerated desc

HQ-02: LOTUSLITE C2 Communication — DNS/Network

// Hunt for LOTUSLITE C2 domain gleeze[.]com
DeviceNetworkEvents
| where TimeGenerated > ago(24h)
| where RemoteUrl has "gleeze.com"
    or RemoteUrl has "editor.gleeze"
| project TimeGenerated, DeviceName, RemoteUrl, RemoteIP, RemotePort,
          InitiatingProcessFileName, InitiatingProcessCommandLine,
          InitiatingProcessAccountName
| order by TimeGenerated desc

HQ-03: LOTUSLITE Mutex Artefact Hunt

// Hunt for LOTUSLITE mutex value in process artefacts
DeviceEvents
| where TimeGenerated > ago(24h)
| where ActionType == "CreateRemoteThreadApiCall" or ActionType == "ProcessCreated"
| where AdditionalFields has "1ac5e7ee1a107499"
| project TimeGenerated, DeviceName, ActionType, FileName, ProcessCommandLine, AdditionalFields

HQ-04: APT28 PRISMEX — Known Malicious Infrastructure

// Hunt for connections to APT28 PRISMEX delivery domains
let prismex_domains = dynamic(["wellnessmedcare.org", "wellnesscaremed.com", "freefoodaid.com", "longsauce.com"]);
DeviceNetworkEvents
| where TimeGenerated > ago(24h)
| where RemoteUrl has_any (prismex_domains)
| project TimeGenerated, DeviceName, RemoteUrl, RemoteIP, RemotePort,
          InitiatingProcessFileName, InitiatingProcessCommandLine,
          InitiatingProcessAccountName
| order by TimeGenerated desc

HQ-05: APT28 PRISMEX — COM DLL Hijacking via Scheduled Tasks

// Hunt for COM DLL hijacking via schtasks - PRISMEX persistence mechanism
DeviceProcessEvents
| where TimeGenerated > ago(24h)
| where FileName =~ "schtasks.exe"
| where ProcessCommandLine has_any ("regsvr32", "rundll32", "/sc", "COM")
| where ProcessCommandLine has ".dll"
| project TimeGenerated, DeviceName, AccountName, ProcessCommandLine,
          InitiatingProcessFileName, InitiatingProcessCommandLine
| order by TimeGenerated desc

HQ-06: APT28 — Filen.io C2 Abuse (Non-Browser Processes)

// Hunt for non-browser processes communicating with filen.io (PRISMEX Stager C2)
let legitimate_browsers = dynamic(["chrome.exe", "firefox.exe", "msedge.exe", "brave.exe",
                                    "opera.exe", "iexplore.exe", "safari.exe"]);
DeviceNetworkEvents
| where TimeGenerated > ago(24h)
| where RemoteUrl has "filen.io"
| where InitiatingProcessFileName !in~ (legitimate_browsers)
| project TimeGenerated, DeviceName, RemoteUrl, RemoteIP, RemotePort,
          InitiatingProcessFileName, InitiatingProcessCommandLine,
          InitiatingProcessAccountName
| order by TimeGenerated desc

HQ-07: BRICKSTORM — DNS-over-HTTPS C2 from Non-Browser Processes

// Hunt for BRICKSTORM-style DoH C2 evasion - non-browser DoH connections
let doh_providers = dynamic(["dns.google", "cloudflare-dns.com", "doh.opendns.com",
                              "dns.quad9.net", "8.8.8.8", "1.1.1.1", "9.9.9.9"]);
let legitimate_browsers = dynamic(["chrome.exe", "firefox.exe", "msedge.exe", "brave.exe",
                                    "opera.exe", "iexplore.exe", "svchost.exe"]);
DeviceNetworkEvents
| where TimeGenerated > ago(24h)
| where RemotePort == 443
| where RemoteUrl has_any (doh_providers) or RemoteIP in ("8.8.8.8", "1.1.1.1", "9.9.9.9", "8.8.4.4")
| where InitiatingProcessFileName !in~ (legitimate_browsers)
| project TimeGenerated, DeviceName, RemoteUrl, RemoteIP,
          InitiatingProcessFileName, InitiatingProcessCommandLine,
          InitiatingProcessAccountName
| order by TimeGenerated desc

HQ-08: Ransomware — SystemBC C2 Beaconing (Gentlemen Group)

// Hunt for SystemBC proxy C2 beaconing behaviour (Gentlemen ransomware group)
DeviceNetworkEvents
| where TimeGenerated > ago(24h)
| where RemotePort in (4443, 8080, 8443, 5544)
| where ActionType == "ConnectionSuccess"
| join kind=inner (
    DeviceProcessEvents
    | where FileName in~ ("systembc.exe")
       or ProcessCommandLine has "systembc"
       or ProcessCommandLine has "socks5"
) on DeviceId
| project TimeGenerated, DeviceName, RemoteIP, RemotePort,
          FileName, ProcessCommandLine, AccountName

HQ-09: Credential Theft — Mimikatz TTPs

// Hunt for Mimikatz command-line artefacts (Gentlemen + RansomHub groups)
DeviceProcessEvents
| where TimeGenerated > ago(24h)
| where ProcessCommandLine has_any (
    "sekurlsa::", "lsadump::", "privilege::debug",
    "kerberos::", "vault::", "dpapi::", "lsass",
    "token::elevate", "pass-the-hash", "pth"
)
| project TimeGenerated, DeviceName, AccountName,
          FileName, ProcessCommandLine,
          InitiatingProcessFileName, InitiatingProcessAccountName
| order by TimeGenerated desc

HQ-10: cPanel CVE-2026-41940 Exploitation Attempts

// Hunt for suspicious burst access to cPanel management ports
DeviceNetworkEvents
| where TimeGenerated > ago(24h)
| where RemotePort in (2082, 2083, 2086, 2087)
| where ActionType == "ConnectionSuccess"
| summarize ConnectionCount = count(),
            UniqueDestinations = dcount(RemoteIP)
    by DeviceName, InitiatingProcessFileName, bin(TimeGenerated, 1h)
| where ConnectionCount > 5
| order by ConnectionCount desc

HQ-11: VPN Credential Abuse — Geographically Impossible Login

// Hunt for multi-country VPN logins (credential stuffing / initial access)
SigninLogs
| where TimeGenerated > ago(24h)
| where ResultType == 0
| where AppDisplayName has_any ("VPN", "GlobalProtect", "FortiClient",
                                 "Cisco AnyConnect", "Pulse Secure", "Zscaler")
| summarize LoginCount = count(),
            Countries = make_set(Location),
            IPs = make_set(IPAddress)
    by UserPrincipalName, bin(TimeGenerated, 1h)
| where array_length(Countries) > 1
| project TimeGenerated, UserPrincipalName, Countries, IPs, LoginCount
| order by LoginCount desc

HQ-12: CHM File Execution (Mustang Panda Delivery Vector)

// Hunt for CHM file execution - Mustang Panda delivery mechanism
DeviceProcessEvents
| where TimeGenerated > ago(24h)
| where FileName =~ "hh.exe"
| where ProcessCommandLine has ".chm"
| project TimeGenerated, DeviceName, AccountName, ProcessCommandLine,
          InitiatingProcessFileName, FolderPath
| order by TimeGenerated desc

KQL Detection Rules (High-Fidelity)

DR-01: LOTUSLITE Backdoor — Confirmed C2 Domain Contact

Severity: CRITICAL | MITRE: T1071.001, T1105 | Actor: Mustang Panda

// RULE: Mustang Panda LOTUSLITE confirmed C2 domain - HIGH FIDELITY
DeviceNetworkEvents
| where TimeGenerated > ago(1h)
| where RemoteUrl has "gleeze.com"
| extend AlertName = "LOTUSLITE C2 Communication Detected"
| extend ThreatActor = "Mustang Panda (TA416)"
| extend MalwareFamily = "LOTUSLITE"
| extend Severity = "Critical"
| extend MITRE_Tactic = "Command and Control"
| extend MITRE_Technique = "T1071.001 - Web Protocols"
| project TimeGenerated, AlertName, ThreatActor, MalwareFamily, Severity,
          DeviceName, RemoteUrl, RemoteIP, RemotePort,
          InitiatingProcessFileName, InitiatingProcessCommandLine,
          InitiatingProcessAccountName, MITRE_Tactic, MITRE_Technique

DR-02: LOTUSLITE DLL — Exact Filename Match

Severity: HIGH | MITRE: T1574.002 | Actor: Mustang Panda

// RULE: Confirmed LOTUSLITE malicious DLL creation or load
DeviceFileEvents
| where TimeGenerated > ago(1h)
| where FileName =~ "dnx.onecore.dll"
| extend AlertName = "Mustang Panda LOTUSLITE DLL Detected"
| extend ThreatActor = "Mustang Panda (TA416)"
| extend MalwareFamily = "LOTUSLITE"
| extend Severity = "High"
| extend MITRE_Tactic = "Persistence / Defense Evasion"
| extend MITRE_Technique = "T1574.002 - DLL Side-Loading"
| project TimeGenerated, AlertName, ThreatActor, MalwareFamily, Severity,
          DeviceName, FolderPath, SHA256, MD5,
          InitiatingProcessFileName, InitiatingProcessAccountName,
          MITRE_Tactic, MITRE_Technique

DR-03: APT28 PRISMEX — Confirmed Malicious Domain Access

Severity: CRITICAL | MITRE: T1566.001, T1105 | Actor: APT28

// RULE: APT28 PRISMEX confirmed delivery infrastructure contact
let prismex_iocs = datatable(domain:string, note:string) [
    "wellnessmedcare.org",  "APT28 PRISMEX Office exploit delivery",
    "wellnesscaremed.com",  "APT28 PRISMEX Office exploit delivery",
    "freefoodaid.com",      "APT28 PRISMEX Office exploit delivery",
    "longsauce.com",        "APT28 PRISMEX Office exploit delivery"
];
DeviceNetworkEvents
| where TimeGenerated > ago(1h)
| join kind=inner prismex_iocs on $left.RemoteUrl contains $right.domain
| extend AlertName = "APT28 PRISMEX Infrastructure Contact"
| extend ThreatActor = "APT28 / Fancy Bear / Pawn Storm"
| extend MalwareFamily = "PRISMEX"
| extend Severity = "Critical"
| extend MITRE_Tactic = "Initial Access / Command and Control"
| extend MITRE_Technique = "T1566.001 / T1105"
| project TimeGenerated, AlertName, ThreatActor, MalwareFamily, Severity,
          DeviceName, RemoteUrl, RemoteIP, note,
          InitiatingProcessFileName, InitiatingProcessCommandLine,
          InitiatingProcessAccountName, MITRE_Tactic, MITRE_Technique

DR-04: APT28 PRISMEX — Steganographic Excel Dropper Chain

Severity: HIGH | MITRE: T1059.005, T1546.015 | Actor: APT28

// RULE: PRISMEX Excel dropper execution chain - VBA macro spawning COM hijack
DeviceProcessEvents
| where TimeGenerated > ago(1h)
| where InitiatingProcessFileName =~ "excel.exe"
| where FileName in~ ("regsvr32.exe", "rundll32.exe", "mshta.exe", "wscript.exe", "cscript.exe")
| join kind=inner (
    DeviceProcessEvents
    | where TimeGenerated > ago(1h)
    | where InitiatingProcessFileName in~ ("regsvr32.exe", "rundll32.exe")
    | where ProcessCommandLine has "schtasks" or FileName =~ "schtasks.exe"
) on DeviceId
| extend AlertName = "APT28 PRISMEX Excel Dropper + COM Hijack Chain"
| extend ThreatActor = "APT28 / Fancy Bear"
| extend MalwareFamily = "PrismexSheet / PrismexDrop"
| extend Severity = "High"
| extend MITRE_Tactic = "Execution / Persistence"
| extend MITRE_Technique = "T1059.005 + T1546.015"
| project TimeGenerated, AlertName, ThreatActor, MalwareFamily, Severity,
          DeviceName, AccountName, ProcessCommandLine,
          MITRE_Tactic, MITRE_Technique

DR-05: APT28 SlimAgent — Screenshot Exfiltration Pattern

Severity: HIGH | MITRE: T1113, T1022 | Actor: APT28

// RULE: SLIMAGENT screenshot exfiltration - timestamped encrypted screenshot files
DeviceFileEvents
| where TimeGenerated > ago(1h)
| where FileName matches regex @"^\d{14,}.*\.(dat|enc|tmp|bin)$"
| where InitiatingProcessFileName !in~ ("explorer.exe", "OneDrive.exe", "Teams.exe", "chrome.exe")
| where FolderPath has_any ("AppData", "Temp", "ProgramData")
| summarize FileCount = count(), Paths = make_set(FolderPath)
    by DeviceName, InitiatingProcessFileName, bin(TimeGenerated, 5m)
| where FileCount > 3
| extend AlertName = "Potential SLIMAGENT Screenshot Exfiltration Activity"
| extend ThreatActor = "APT28 (Suspected)"
| extend MalwareFamily = "SLIMAGENT"
| extend Severity = "High"
| extend MITRE_Tactic = "Collection / Exfiltration"
| extend MITRE_Technique = "T1113 - Screen Capture"

DR-06: BRICKSTORM — Non-Browser DoH C2 Evasion

Severity: HIGH | MITRE: T1071.004, T1572 | Actor: PRC State Actors

// RULE: BRICKSTORM DNS-over-HTTPS C2 - non-browser processes using DoH
let legitimate_processes = dynamic([
    "chrome.exe", "firefox.exe", "msedge.exe", "brave.exe", "opera.exe",
    "iexplore.exe", "safari.exe", "MicrosoftEdgeCP.exe", "msedgewebview2.exe"
]);
let doh_indicators = dynamic([
    "dns.google", "cloudflare-dns.com", "doh.opendns.com",
    "dns.quad9.net", "8.8.8.8", "1.1.1.1", "9.9.9.9"
]);
DeviceNetworkEvents
| where TimeGenerated > ago(1h)
| where RemotePort == 443
| where RemoteUrl has_any (doh_indicators) or RemoteIP in ("8.8.8.8", "1.1.1.1", "9.9.9.9", "8.8.4.4")
| where InitiatingProcessFileName !in~ (legitimate_processes)
| where InitiatingProcessFolderPath !startswith @"C:\Program Files\Google"
| extend AlertName = "Suspicious DoH Usage - Possible BRICKSTORM C2 Evasion"
| extend ThreatActor = "PRC State Actors (BRICKSTORM)"
| extend MalwareFamily = "BRICKSTORM"
| extend Severity = "High"
| extend MITRE_Tactic = "Command and Control"
| extend MITRE_Technique = "T1071.004 - DNS over HTTPS"
| project TimeGenerated, AlertName, ThreatActor, MalwareFamily, Severity,
          DeviceName, RemoteUrl, RemoteIP, RemotePort,
          InitiatingProcessFileName, InitiatingProcessFolderPath,
          InitiatingProcessAccountName, MITRE_Tactic, MITRE_Technique

DR-07: cPanel CVE-2026-41940 — Exploitation Burst Access Pattern

Severity: HIGH | MITRE: T1190 | Actor: Multiple (Initial Access Brokers)

// RULE: CVE-2026-41940 cPanel exploitation - burst of connections to cPanel management ports
DeviceNetworkEvents
| where TimeGenerated > ago(1h)
| where RemotePort in (2082, 2083, 2086, 2087)
| where ActionType == "ConnectionSuccess"
| summarize
    ConnectionCount = count(),
    UniqueTargetIPs = dcount(RemoteIP),
    FirstSeen = min(TimeGenerated),
    LastSeen = max(TimeGenerated)
  by DeviceName, InitiatingProcessFileName, InitiatingProcessAccountName, bin(TimeGenerated, 15m)
| where ConnectionCount > 10 or UniqueTargetIPs > 3
| extend AlertName = "cPanel CVE-2026-41940 Exploitation Pattern Detected"
| extend CVE = "CVE-2026-41940"
| extend Severity = "High"
| extend MITRE_Tactic = "Initial Access"
| extend MITRE_Technique = "T1190 - Exploit Public-Facing Application"
| project TimeGenerated, AlertName, CVE, Severity, DeviceName,
          InitiatingProcessFileName, InitiatingProcessAccountName,
          ConnectionCount, UniqueTargetIPs, FirstSeen, LastSeen,
          MITRE_Tactic, MITRE_Technique

DR-08: Ransomware Precursor — Mimikatz LSASS Credential Dump

Severity: CRITICAL | MITRE: T1003.001 | Actor: RansomHub, Akira, Gentlemen

// RULE: Mimikatz LSASS credential dumping - specific command artefacts
DeviceProcessEvents
| where TimeGenerated > ago(1h)
| where ProcessCommandLine has_any (
    "sekurlsa::logonpasswords",
    "sekurlsa::wdigest",
    "lsadump::sam",
    "lsadump::dcsync",
    "privilege::debug",
    "token::elevate",
    "kerberos::ptt",
    "kerberos::golden"
)
| extend AlertName = "Mimikatz Credential Dump - Ransomware Precursor"
| extend ThreatActors = "RansomHub / Akira / Gentlemen / Multiple"
| extend Severity = "Critical"
| extend MITRE_Tactic = "Credential Access"
| extend MITRE_Technique = "T1003.001 - LSASS Memory"
| project TimeGenerated, AlertName, ThreatActors, Severity,
          DeviceName, AccountName, FileName, ProcessCommandLine,
          InitiatingProcessFileName, InitiatingProcessAccountName,
          MITRE_Tactic, MITRE_Technique

DR-09: Ransomware Precursor — SystemBC Proxy Deployment

Severity: HIGH | MITRE: T1090.001, T1071.001 | Actor: Gentlemen Ransomware

// RULE: SystemBC proxy tool deployment - Gentlemen ransomware group TTP
DeviceProcessEvents
| where TimeGenerated > ago(1h)
| where FileName =~ "systembc.exe"
    or ProcessCommandLine has "systembc"
    or ProcessCommandLine has_all ("socks5", "-host")
| extend AlertName = "SystemBC Proxy Detected - Gentlemen Ransomware Precursor"
| extend ThreatActor = "Gentlemen Ransomware Group"
| extend ToolName = "SystemBC"
| extend Severity = "High"
| extend MITRE_Tactic = "Command and Control"
| extend MITRE_Technique = "T1090.001 - Internal Proxy"
| project TimeGenerated, AlertName, ThreatActor, ToolName, Severity,
          DeviceName, AccountName, FileName, ProcessCommandLine,
          InitiatingProcessFileName, MITRE_Tactic, MITRE_Technique

DR-10: CVE-2026-1731 Bomgar RMM Post-Exploitation

Severity: HIGH | MITRE: T1219, T1190 | Actor: Multiple Ransomware Groups

// RULE: Anomalous Bomgar RMM session spawning credential theft or recon tools
DeviceProcessEvents
| where TimeGenerated > ago(1h)
| where InitiatingProcessFileName has_any ("bomgar-scc", "bomgar-rep", "bomgar")
| where FileName in~ (
    "mimikatz.exe", "psexec.exe", "wce.exe", "pwdump.exe",
    "net.exe", "cmd.exe", "powershell.exe", "wscript.exe"
)
| where ProcessCommandLine has_any (
    "sekurlsa", "lsadump", "whoami /all",
    "net user /domain", "nltest", "ldapdomaindump",
    "-enc", "-encodedcommand", "bypass", "IEX",
    "net localgroup administrators"
)
| extend AlertName = "Bomgar CVE-2026-1731 Post-Exploitation Activity"
| extend CVE = "CVE-2026-1731"
| extend Severity = "High"
| extend MITRE_Tactic = "Execution / Credential Access"
| extend MITRE_Technique = "T1219 - Remote Access Software"
| project TimeGenerated, AlertName, CVE, Severity,
          DeviceName, AccountName, FileName, ProcessCommandLine,
          InitiatingProcessFileName, MITRE_Tactic, MITRE_Technique

MITRE ATT&CK Mapping

Technique IDTechnique NameThreat Actor / GroupDetection Rule
T1566.001Spearphishing AttachmentAPT28, Mustang Panda, TGR-STA-1030DR-04
T1059.005Visual Basic (VBA Macros)APT28 (PrismexSheet)DR-04
T1574.002DLL Side-LoadingMustang Panda (LOTUSLITE)DR-02
T1546.015Component Object Model HijackingAPT28 (PrismexDrop)DR-04
T1053.005Scheduled Task/JobAPT28, Mustang PandaDR-04
T1071.001Web Protocols (HTTP/S C2)APT28, Mustang PandaDR-01, DR-03
T1071.004DNS over HTTPSBRICKSTORM operatorsDR-06
T1102.002Cloud Storage C2 (Filen.io)APT28HQ-06
T1027Obfuscated Files/Information (Steganography)APT28 (PrismexSheet)DR-04
T1113Screen CaptureAPT28 (SLIMAGENT)DR-05
T1003.001LSASS MemoryRansomHub, Akira, GentlemenDR-08
T1090.001Internal ProxyGentlemen (SystemBC)DR-09
T1219Remote Access SoftwareRansomware via BomgarDR-10
T1190Exploit Public-Facing ApplicationMultiple (cPanel, Bomgar)DR-07, DR-10
T1068Exploitation for Privilege EscalationMultiple (CVE-2026-31431)HQ-10
T1078Valid Accounts (VPN credential abuse)Ransomware initial accessHQ-11

Recommended Actions

Immediate (Within 24 Hours):

  1. Patch cPanel — Apply fix for CVE-2026-41940 immediately; audit cPanel logs for auth anomalies on ports 2082/2083/2086/2087 since 2026-02-23.
  2. Block LOTUSLITE C2 — Add editor.gleeze[.]com to DNS/proxy blocklists.
  3. Block PRISMEX domains — Add wellnessmedcare[.]org, wellnesscaremed[.]com, freefoodaid[.]com, longsauce[.]com to threat intel blocking.
  4. Chrome patching — Ensure Chrome/Chromium is on latest version (CVE-2026-5281, CVE-2026-2441).
  5. VPN credential audit — Review VPN auth logs for multi-geography logins and impossible travel.

Short-Term (Within 1 Week):

  1. Patch Linux Kernel — Apply patches for CVE-2026-31431 on all Linux systems.
  2. Patch Windows — Address CVE-2026-32202 Windows Shell spoofing.
  3. Bomgar/SimpleHelp audit — Patch CVE-2026-1731 and CVE-2024-57726; review all active remote sessions.
  4. Deploy KQL detection rules — Onboard DR-01 through DR-10 to Sentinel / Defender XDR with alerting enabled.
  5. BRICKSTORM TTP hunt — Run HQ-07 across VMware vSphere environments; review non-browser DoH connections.

Strategic:

  1. CHM file blocking — Consider blocking .chm file execution via AppLocker/Defender ASR for non-IT users (Mustang Panda delivery vector).
  2. VPN MFA enforcement — Enforce phishing-resistant MFA on all VPN gateways; review stolen credential exposure.
  3. COM hijacking monitoring — Enable detection of COM object registration by non-administrative processes.
  4. Excel macro hardening — Enforce macro blocking for documents from the internet via Group Policy.

Sources: CISA KEV — May 1, 2026 | The Hacker News — APT28 PRISMEX | Trellix — APT28 CVE-2026-21509 | Trend Micro — Pawn Storm | The Hacker News — LOTUSLITE | Acronis TRU — LOTUSLITE | Picus Security — Mustang Panda | CISA — BRICKSTORM MAR | Google Cloud Blog — BRICKSTORM | CSO Online — TGR-STA-1030 | PurpleOps Ransomware Tracker | Recorded Future — Ransomware 2026 | Security Affairs — CISA Windows KEV