Skip to main content
Meet us at Black Hat USA 2026— Las Vegas, August 1–6Book a Meeting
Mallory
HighCISA KEVExploited in the wildPublic exploit

SSRF in Ivanti Connect Secure/Policy Secure SAML Component

IdentifiersCVE-2024-21893CWE-918· Server-Side Request Forgery (SSRF)

CVE-2024-21893 is a server-side request forgery vulnerability in the SAML component of Ivanti Connect Secure (9.x, 22.x), Ivanti Policy Secure (9.x, 22.x), and Ivanti Neurons for ZTA. The flaw allows an unauthenticated attacker to cause the appliance to make attacker-controlled server-side requests and access certain restricted resources without authentication. Reporting in the provided content indicates the issue was used as a mitigation bypass and was actively chained with CVE-2024-21887, a command injection vulnerability, to enable unauthenticated exploitation even against appliances where earlier XML mitigations had been applied. Mandiant observed active exploitation as early as January 19, 2024, and threat actors used tools such as Interactsh to validate vulnerable targets.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

On its own, the vulnerability allows unauthenticated access to certain restricted resources through SSRF in the SAML component. In observed real-world exploitation, it materially increased attacker capability by bypassing mitigations and enabling exploit chains with CVE-2024-21887. The broader impact described in the supporting content includes initial access to Ivanti appliances, web shell deployment, credential harvesting from the device, access to cleartext or base64-encoded credentials and NTLM hashes, lateral movement into Windows domain environments, and in some incidents full domain compromise. The vulnerability is listed in CISA KEV and has been associated with active exploitation by multiple threat actors.

Mitigation

If you can’t patch tonight, do this now.

If immediate patching is not possible, implement Ivanti’s latest published mitigations for the SAML-related issues and run the most recent external Integrity Checking Tool, understanding that prior ICT versions and some integrity checks may be bypassed or deceived. Restrict exposure of management and VPN interfaces, monitor for IOCs and anomalous outbound requests from the appliance, and hunt for web shells and modified files identified by Ivanti, CISA, and partners. Assume credentials on affected appliances may be compromised and rotate them. Review for lateral movement from the appliance into internal systems. Risk-based decisions may include temporarily removing affected devices from service until patched and validated clean.

Remediation

Patch, then assume compromise.

Apply Ivanti patches and updates released for CVE-2024-21893 and follow Ivanti’s current product-specific remediation guidance for affected Ivanti Connect Secure, Ivanti Policy Secure, and Ivanti Neurons for ZTA versions. The content also indicates Ivanti released updated mitigations and newer versions of the external Integrity Checking Tool. Because compromise of affected appliances may persist beyond simple patching, organizations should follow vendor and agency recovery guidance, assess for compromise, and where compromise is suspected rebuild or reimage affected appliances using trusted images rather than relying solely on factory reset. Reset credentials and secrets that may have traversed or been stored on the appliance, including administrative, service, AD, API, and certificate material as applicable.
PUBLIC EXPLOITS

Exploits

3 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos.

VALID 3 / 3 TOTALView more in app
abyss-c2MaturityPoCVerified exploit

This repository is a multi-module Python offensive framework centered on exploiting HiSilicon DVR/NVR/IP camera devices via CVE-2020-25078, then managing compromised hosts through a Flask/SocketIO web panel. It is not a simple single-file PoC: it includes a control server (server.py), persistence and post-exploitation tooling, credential attacks, recon modules, web vulnerability scanners, network service checks, pivoting, reverse shell support, and a SQLite-backed datastore. Core exploit logic is in exploit.py and scanner.py. exploit.py probes numerous traversal/disclosure paths such as /../../.../mnt/mtd/Config/Account1 and related config/system files, parses returned content with multiple regex patterns to recover credentials, fingerprints device families, and falls back to known default credentials when disclosure succeeds but parsing does not. scanner.py operationalizes this by scanning IPs/CIDRs and common ports, checking liveness, fingerprinting likely cameras, invoking the CVE-2020-25078 checks, and storing recovered credentials in cameras.db. Post-exploitation capability is substantial. telnet_client.py provides raw Telnet login and command execution. botnet.py fans out commands across stored hosts. persistence.py installs SSH authorized_keys, cron, rc.local, init.d, systemd, inittab telnetd, and bind-shell style persistence. reverse_shell.py generates many Linux/IoT reverse shell one-liners and runs listeners. pivot_chain.py and socks_pivot.py support chained execution and local SOCKS5 pivoting through compromised hosts. Additional modules broaden scope beyond the HiSilicon exploit: brute.py and cred_spray.py perform credential attacks across Telnet, SSH, FTP, HTTP, SMB, databases, VNC, LDAP, WinRM, and more; network_exploit.py checks for exposed/misconfigured services and some well-known vulnerabilities such as MS17-010 and BlueKeep; web_exploit.py, web_cves.py, web_bugs.py, and web_brute.py scan websites for exposed files, CMS fingerprints, generic bug classes, and multiple CVE signatures. Recon/intel support includes ASN, DNS, GeoIP, JARM, WAF detection, proxy/Tor rotation, screenshot grabbing from camera snapshot endpoints, and Telegram/Discord/AbuseIPDB integrations. The repository structure is coherent and functional, with many CLI-capable modules and a central web UI in templates/index.html. Overall, this is an operational exploit-and-post-exploitation toolkit focused on HiSilicon IoT devices but expanded into a broader C2-style offensive platform.

flags-altDisclosed May 20, 2026pythonhtmlnetworkweblocal
CVE-2024-21893-to-CVE-2024-21887MaturityPoCVerified exploit

This repository provides a working exploit for chaining two critical vulnerabilities in Ivanti Connect Secure and Policy Secure appliances: CVE-2024-21893 (SSRF) and CVE-2024-21887 (command injection). The main exploit script (exploit.py) is written in Python and automates the attack by sending a crafted XML payload to the vulnerable endpoint (/dana-ws/saml20.ws) on the target. The payload leverages SSRF to reach an internal service and injects a command that opens a reverse shell to the attacker's machine. The script can also set up a listener using pwncat to handle the incoming shell. Two Nuclei YAML templates are included for detection of the SSRF and the SSRF-to-RCE chain, targeting the same endpoint. The repository is structured with a README.md (usage and background), the main exploit script, two detection templates, and a requirements.txt for dependencies. The exploit is operational and provides unauthenticated remote code execution if the target is vulnerable and unpatched.

ChocapikkDisclosed Feb 3, 2024pythonyamlnetwork
CVE-2024-21893.pyMaturityPoCVerified exploit

This repository contains a Python proof-of-concept exploit for CVE-2024-21893, a server-side request forgery (SSRF) vulnerability in the SAML component of Ivanti Connect Secure, Policy Secure, and Neurons for ZTA. The exploit script (CVE-2024-21893.py) constructs a malicious SAML SOAP request with a crafted <ds:RetrievalMethod> URI pointing to an attacker-controlled server. When sent to the vulnerable endpoint (typically /dana-ws/saml20.ws), the target system processes the XML and makes a server-side request to the specified URI, enabling the attacker to access internal resources or exfiltrate data. The script supports both single-target and list-based targeting and requires the attacker to specify their own server for receiving SSRF callbacks. The README provides usage instructions, example payloads, and references. The exploit is a functional PoC and does not include weaponized features such as automated post-exploitation or payload customization.

h4x0r-dzDisclosed Feb 2, 2024pythonmarkdownnetwork
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
IvantiConnect Secureapplication
IvantiNeurons For Zero-Trust Accessapplication
IvantiPolicy Secureapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence5

Every observed campaign linking this CVE to a named adversary.

Associated malware16

Malware families riding this exploit, with evidence and IOCs.

Detection signatures2

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity4

Community discussion across Reddit, Mastodon, and other social sources.