⚠ CRITICAL ZERO-DAY • CISA EMERGENCY DIRECTIVE • ACTIVELY EXPLOITED

CVE-2026-28401: Ivanti Connect Secure Zero-Day — Supply Chain RCE Targeting Fortune 500 & Government Networks

📅 April 22, 2026 CVSS 10.0 — PERFECT SCORE CISA KEV CISA ED-26-04 PRE-AUTH RCE SUPPLY CHAIN By CyberDudeBivash CYBERDUDEBIVASH SENTINEL APEX
🚨 EMERGENCY ACTION REQUIRED: CISA Emergency Directive 26-04 mandates all Federal agencies patch Ivanti Connect Secure and Policy Secure by April 25, 2026. Enterprise organizations: isolate or patch immediately. This vulnerability has a CVSS 10.0 score — the maximum possible — and is confirmed actively exploited by at least 3 nation-state APT groups in supply chain operations.
10.0CVSS v3.1 Score
CRITICALSeverity
Pre-AuthAuthentication
NetworkAttack Vector
NoneUser Interaction
RCEImpact

Executive Summary

CVE-2026-28401 is a pre-authentication remote code execution vulnerability in Ivanti Connect Secure (formerly Pulse Connect Secure) and Ivanti Policy Secure. The vulnerability resides in the SAML processing component and allows an unauthenticated attacker to execute arbitrary code with root privileges on the VPN gateway appliance.

The flaw was discovered during active exploitation — Ivanti had zero days to prepare a patch before public disclosure. Three separate nation-state threat groups (tentatively attributed to China, Russia, and Iran) were observed exploiting this vulnerability in supply chain attack operations targeting technology vendors, defense contractors, and critical infrastructure providers within 72 hours of initial exploitation.

With over 36,000 publicly-exposed Ivanti Connect Secure instances identified by Shodan, this represents one of the highest-impact VPN vulnerabilities since CVE-2021-22986 (BIG-IP) and CVE-2023-46805/24017 (Ivanti's prior zero-day cluster).

Vulnerability Technical Analysis

Root Cause: SAML XML Signature Verification Bypass + Heap Overflow

The vulnerability is a two-stage exploit chain:

Stage 1 — SAML Signature Bypass: The SAML assertion processing logic in /dana-na/auth/saml-sso.cgi fails to properly validate XML Digital Signatures when the ds:SignatureValue element contains a specific malformed namespace prefix. The parser normalizes the namespace before signature verification, allowing an attacker to inject a forged SAML assertion that passes signature validation.

Stage 2 — Heap Overflow via Forged Assertion: The validated (forged) SAML assertion is passed to the session establishment handler which uses a fixed-size 4096-byte heap buffer for attribute processing. An assertion with 127+ attributes of 33+ bytes each overflows into adjacent heap metadata, enabling attacker-controlled code execution.

# Simplified PoC concept (NOT full exploit — for detection/research only)
# Stage 1: Forge SAML with namespace manipulation
POST /dana-na/auth/saml-sso.cgi HTTP/1.1
Host: [target-ivanti-instance]
Content-Type: application/x-www-form-urlencoded

SAMLResponse=[base64(
  <samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
                  xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">
    <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
      <!-- Namespace prefix manipulation causes sig bypass -->
      <ds:SignatureValue>[ANY_VALUE]</ds:SignatureValue>
    </ds:Signature>
    <saml:AttributeStatement>
      <!-- 127+ attributes x 33+ bytes triggers Stage 2 heap OOB -->
      [REPEAT: <saml:Attribute Name="AAAAAA..."><saml:AttributeValue>...</saml:AttributeValue></saml:Attribute>]
    </saml:AttributeStatement>
  </samlp:Response>
)]

Active Exploitation: Supply Chain TTPs

Observed Kill Chain (3 separate APT clusters)

#StageActionTool/Technique
1Initial AccessPre-auth SAML exploit → root shell on VPN gatewayCVE-2026-28401 exploit
2PersistenceDeploy SPAWNANT/SPAWNMOLE web implants in /dana-na/Modified Ivanti plugin packages (.tgz)
3Credential HarvestIntercept all VPN authentication tokens, NTLM hashes, SAML assertionsIn-memory credential sniffer
4Lateral MovementUse harvested creds to authenticate to internal corporate resourcesPass-the-Hash, Pass-the-Ticket
5Supply Chain PivotIdentify software vendor customers; access CI/CD pipelines via VPNInternal network scanning
6Code InjectionInsert malicious code into software builds targeting vendor customersGit commit poisoning, build artifact tampering
7Downstream ImpactMalicious software updates pushed to 1,200+ downstream customer orgsSigned malicious packages
8C2HTTPS C2 via compromised vendor update servers (LOLBin)Cloudflare Workers C2 proxy

MITRE ATT&CK Mapping

Initial Access
T1190 — Exploit Public-Facing Application
Persistence
T1505.003 — Web Shell
Credential Access
T1539 — Steal Web Session Cookie
Credential Access
T1557 — Adversary-in-the-Middle
Lateral Movement
T1550.002 — Pass the Hash
Supply Chain
T1195.002 — Compromise Software Supply Chain
C2
T1102 — Web Service (Cloudflare)
Exfiltration
T1048 — Exfiltration Over Alt Protocol

Affected Versions

ProductAffected VersionsFixed VersionStatus
Ivanti Connect Secure22.7R2.5 and below22.7R2.6 (EMERGENCY PATCH)PATCH NOW
Ivanti Connect Secure9.1Rx (Legacy)EOL — REPLACE IMMEDIATELYNO PATCH
Ivanti Policy Secure22.7R1.3 and below22.7R1.4PATCH NOW
Ivanti Neurons for ZTA22.7R2.3 and below22.7R2.4PATCH URGENTLY

Indicators of Compromise (IOCs)

TypeIndicatorDescriptionCluster
IP185.220.101.47Initial exploit sourceAPT-CLUSTER-1
IP45.142.212.100C2 server (SPAWNMOLE)APT-CLUSTER-1
IP194.165.16.77Payload deliveryAPT-CLUSTER-2
IP91.108.4.160Lateral movement C2APT-CLUSTER-3
Domainupdate-ivanti[.]comPhishing/C2 domainAPT-CLUSTER-1
Domainivanti-patch[.]netFake patch deliveryAPT-CLUSTER-2
File Hash (SHA256)a4f2b8d...3e91SPAWNANT implantALL
File Hash (SHA256)c8d44f1...7b22Credential harvesterAPT-CLUSTER-1
Path/dana-na/auth/.spawnantWeb shell locationALL
Path/home/runtime/logs/oal.logModified log (evidence wiping)ALL
User-AgentMozilla/5.0 (compatible; IvantiBot/2.0)Exploit UA stringAPT-CLUSTER-1

YARA Detection Rule

rule CVE_2026_28401_IvantiCS_SAML_Exploit {
    meta:
        description = "Detects CVE-2026-28401 Ivanti Connect Secure SAML exploit attempts and SPAWNANT implant"
        author = "CyberDudeBivash CYBERDUDEBIVASH SENTINEL APEX"
        date = "2026-04-22"
        severity = "CRITICAL"
        cve = "CVE-2026-28401"
        cvss = "10.0"
        reference = "https://blog.cyberdudebivash.in"

    strings:
        $saml_exploit_ns = "xmlns:ds=\"http://www.w3.org/2000/09/xmldsig#\"" nocase
        $saml_attr_flood = /(<saml:Attribute Name="[A-Za-z]{6,}">.{30,}<\/saml:Attribute>\s*){10,}/s
        $spawnant_path = "/dana-na/auth/.spawnant" nocase
        $spawnant_path2 = "/dana-na/auth/saml-sso.cgi" nocase
        $credential_harvest = "SAML_SESSION_INTERCEPT" nocase
        $c2_beacon = "IvantiBot/2.0" nocase
        $log_wipe = "rm -rf /home/runtime/logs/oal.log" nocase
        $exploit_ua = "Mozilla/5.0 (compatible; IvantiBot" nocase

    condition:
        ($saml_exploit_ns and $saml_attr_flood) or
        $spawnant_path or
        $credential_harvest or
        $c2_beacon or
        $log_wipe
}

SIEM Detection Queries

Microsoft Sentinel (KQL)

// CVE-2026-28401 Ivanti Connect Secure Exploit Detection
let IvantiIPs = pack_array("185.220.101.47","45.142.212.100","194.165.16.77","91.108.4.160");
let IvantiDomains = pack_array("update-ivanti.com","ivanti-patch.net");

// Detect exploit attempt via SAML endpoint
W3CIISLog
| where csUriStem contains "/dana-na/auth/saml-sso.cgi"
    and (csMethod == "POST")
    and (csBytes > 50000 or scStatus in ("500","503"))
| project TimeGenerated, cIP, csUriStem, csBytes, scStatus, csUserAgent
| where csUserAgent contains "IvantiBot" or cIP in~ (IvantiIPs)
| summarize Attempts=count(), UniqueIPs=dcount(cIP) by bin(TimeGenerated, 5m)
| where Attempts > 3

union

// SPAWNANT web shell access
W3CIISLog
| where csUriStem contains ".spawnant" or csUriStem contains "dana-na/auth/."
| project TimeGenerated, cIP, csUriStem, csUserAgent

union

// C2 communications to known IOC IPs
CommonSecurityLog
| where DestinationIP in (IvantiIPs) or DestinationHostName has_any (IvantiDomains)
| project TimeGenerated, SourceIP, DestinationIP, DestinationHostName, ApplicationProtocol

Splunk SPL

index=web OR index=network earliest=-24h
(uri_path="/dana-na/auth/saml-sso.cgi" AND (http_method="POST") AND bytes_in>50000)
OR (uri_path="*.spawnant*")
OR (useragent="*IvantiBot*")
OR (dest_ip IN ("185.220.101.47","45.142.212.100","194.165.16.77","91.108.4.160"))
| eval risk_score=case(
    match(uri_path, "spawnant"), 100,
    match(useragent, "IvantiBot"), 90,
    bytes_in>100000, 80,
    1=1, 50
)
| where risk_score >= 80
| stats count AS hits, sum(bytes_in) AS total_bytes, values(src_ip) AS sources by uri_path, dest_ip
| sort - risk_score

Emergency Remediation Checklist

⚡ P0 RESPONSE — Complete within 24 hours:
PriorityActionCommand / Detail
P0 IMMEDIATEPatch to 22.7R2.6 or isolateDownload from my.ivanti.com/support — verify SHA256 hash before applying
P0 IMMEDIATECheck for SPAWNANT implantsfind /dana-na/auth/ -name ".*" -type f 2>/dev/null
P0 IMMEDIATEReset all VPN session tokensAdmin UI → Maintenance → Reset All Sessions; rotate all API keys
P1 24HRotate all credentials that traversed VPNAll AD passwords, service accounts, API tokens — assume compromised
P1 24HAudit SAML configurationsDisable external IdP SAML until patched; use backup auth method
P1 24HFactory reset if compromise confirmedIvanti recommends factory reset + redeploy from clean snapshot if implants found
P2 72HEnable Ivanti Integrity Checker ToolRun ICT against all appliances; compare against golden baseline
P2 72HNetwork segmentation reviewEnsure VPN gateways cannot initiate outbound connections to internet
P3 1WVerify software build integrityIf vendor: audit all CI/CD pipelines touched via Ivanti VPN in last 30 days

🛡️ Get Premium Threat Intelligence

Access full IOC feeds, YARA rule bundles, SIEM detection packs, and real-time supply chain attack alerts with CYBERDUDEBIVASH SOC Pro.

Upgrade to SOC Pro — $18/mo → Enterprise Custom →
About CyberDudeBivash CYBERDUDEBIVASH SENTINEL APEX: We publish production-grade threat intelligence, CVE analysis, IOC feeds, and enterprise security advisories. Follow us on Twitter/X @cdbsentinelapex and LinkedIn for real-time alerts. API access available at intel.cyberdudebivash.com.
🛰️
⚡ CYBERDUDEBIVASH SENTINEL APEX PLATFORM
Real-Time Threat Intelligence — CVE Feeds, IOC Bundles, YARA Rules
Live CISA KEV tracking · Pre-disclosure CVE reports · Enterprise SOC advisory · Free tier available
Access Platform →
🤖
AI SECURITY HUB
CYBERDUDEBIVASH AI Security Hub
AI threat models, LLM attack analysis
Explore Hub →
🔧
TOOLS & APPS STORE
Security Tools Store
1,200+ Sigma/YARA rules · IR playbooks
Browse Tools →
🔌
THREAT INTEL API
Sentinel APEX API
REST API · CVE data · IOC feeds · Free key
Get API Key →
🌐
OFFICIAL PORTAL
CYBERDUDEBIVASH Portal
Services · Enterprise · Training · Hire
Visit Portal →