Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Directus instance
-
DeliveryCraft request using IPv4-Mapped IPv6 notation
-
ExploitBypass IP deny-list validation
-
ExecutionAccess internal/private network resources
-
ImpactExfiltrate sensitive data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
|
| Exploitation Conditions | Authenticated user with low-privilege access to Directus. Attacker crafts requests using IPv4-Mapped IPv6 address notation (e.g., ::ffff:127.0.0.1) to bypass SSRF protection and access internal/private network ranges blocked by default deny-list. |
| Impact | This vulnerability presents elevated real-world risk despite requiring authentication. The CVSS 7.7 score reflects genuine exploitability factors: network-based attack vector (AV:N), low complexity (AC:L), and minimal privileges required (PR:L). The scope change (S:C) and high confidentiality impact (C:H) accurately capture the potential for lateral movement beyond the vulnerable Directus application to access separate internal systems. The most critical risk scenarios involve cloud deployments where Instance Metadata Service (IMDS) endpoints expose temporary credentials, API keys, and configuration data - a common attack pattern in cloud breaches. The attack complexity is genuinely low because the IPv4-Mapped IPv6 notation technique is well-documented and requires no specialized tools. While no public exploit code has been identified and this is not listed in CISA KEV, the GitHub security advisory provides sufficient technical detail for threat actors to develop exploits. Organizations running Directus with file-import functionality (especially if publicly accessible) or authenticated user access should prioritize remediation. The confidentiality-only impact suggests data exfiltration risk rather than system compromise, but access to cloud credentials via IMDS can enable full infrastructure takeover. This is a legitimate high-priority issue, not merely high-CVSS-low-risk. |
| Exploit ScenarioDerived | An authenticated attacker with file-import permissions (or an unauthenticated attacker if public imports are enabled) initiates a file import request to Directus, specifying a malicious URL using IPv4-Mapped IPv6 notation targeting an AWS metadata endpoint: http://[::ffff:169.254.169.254]/latest/meta-data/iam/security-credentials/. The Directus IP validation logic fails to recognize this as equivalent to the blocked 169.254.169.254 address and permits the request. The server-side HTTP client resolves and connects to the actual metadata service, retrieving temporary IAM credentials. The attacker extracts AWS access keys from the response, enabling unauthorized access to the organization's cloud resources, S3 buckets, databases, and potentially full AWS account compromise through privilege escalation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 04, 2026
Server-Side Request Forgery (SSRF) in Directus headless CMS allows authenticated attackers (or unauthenticated users with public file-import permissions) to bypass IP address deny-list protections and access internal network resources. Attackers exploit IPv4-Mapped IPv6 address notation (e.g., ::ffff:127.0.0.1) to circumvent validation logic, enabling unauthorized requests to localhost services, internal databases, caches, APIs, and cloud instance metadata endpoints (AWS/GCP/Azure IMDS). With CVSS 7.7 (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N) indicating low attack complexity, network accessibility, and scope change with high confidentiality impact, this represents a significant risk for data exfiltration from cloud environments and internal infrastructure. No public exploit identified at time of analysis, though the technical details in the advisory provide clear exploitation guidance.
RemediationAI
Update Directus to the latest patched version as specified in the GitHub security advisory at github.com/directus/directus/security/advisories/GHSA-wv3h-5fx7-966h. The fix implements normalization of IPv4-Mapped IPv6 addresses to canonical IPv4 format before IP deny-list validation. Organizations should verify their current Directus version against the advisory and upgrade immediately if running an affected version. As an interim mitigation, restrict file-import functionality to trusted authenticated users only and disable public file-import permissions if enabled. Network-level controls such as egress filtering from the Directus server to prevent outbound connections to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 127.0.0.0/8, and link-local ranges) can provide defense-in-depth. For cloud deployments, implement IMDSv2 (which requires PUT request headers) on AWS EC2 instances to reduce metadata service exploitation risk. Review application logs for suspicious file-import requests containing IPv6 address notation as potential indicators of exploitation attempts.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Directus is a popular open-source headless CMS built on Node.js (pkg:npm/directus). This vulnerability stems from improper input validation (CWE-20) in the IP address filtering mechanism designed to prevent SSRF attacks. The system maintains a deny-list of private and internal IP ranges to block server-side requests to sensitive targets. However, the validation logic failed to normalize IPv4-Mapped IPv6 addresses before comparison. IPv4-Mapped IPv6 addresses use the format ::ffff:xxx.xxx.xxx.xxx to represent IPv4 addresses within the IPv6 address space. When an attacker submits a request using this notation (e.g., ::ffff:127.0.0.1 instead of 127.0.0.1), the deny-list check does not recognize the equivalence to the blocked IPv4 address. The underlying Node.js HTTP client and operating system networking stack, however, correctly resolve and connect to the IPv4 target, allowing the SSRF attack to succeed. The fix implements address normalization that converts IPv4-Mapped IPv6 addresses to canonical IPv4 format before deny-list validation, ensuring consistent enforcement across address representations.
Know when Canonical gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
Primary rating from Vendor (https://github.com/directus/directus) · only source for this CVE.
CVSS VectorVendor: https://github.com/directus/directus
Lifecycle Timeline
2DescriptionCVE.org
Summary
A Server-Side Request Forgery (SSRF) protection bypass has been identified and fixed in Directus. The IP address validation mechanism used to block requests to local and private networks could be circumvented using IPv4-Mapped IPv6 address notation.
Details
Directus implements an IP deny-list to prevent server-side requests to internal/private network ranges. The validation logic failed to normalize IPv4-Mapped IPv6 addresses (e.g., the IPv6 representation of 127.0.0.1) before checking them against the deny-list. Because the deny-list check did not recognize these mapped addresses as equivalent to their IPv4 counterparts, an attacker could bypass the restriction while the underlying HTTP client and operating system still resolved and connected to the intended private target.
This has been fixed by adding a normalization step that converts IPv4-Mapped IPv6 addresses to their canonical IPv4 form prior to validation.
Impact
An authenticated user (or an unauthenticated user if public file-import permissions are enabled) could exploit this bypass to perform SSRF attacks against internal services on the same host (databases, caches, internal APIs) or cloud instance metadata endpoints (e.g., AWS/GCP/Azure IMDS).
Executive ViewAI
Directus headless CMS contains a Server-Side Request Forgery (SSRF) vulnerability that allows authenticated users to bypass network access controls and reach internal resources, including cloud metadata endpoints and databases. Organizations using Directus for content management face immediate risk of unauthorized access to sensitive internal systems and cloud credentials, particularly in multi-tenant or cloud-hosted deployments.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Disable file-import feature via Directus configuration until patch available; (2) Implement network-layer egress filtering to block Directus access to 127.0.0.1, 169.254.0.0/16, and internal subnet ranges; (3) Enforce strict WAF rules rejecting requests containing IPv6-mapped address notation; (4) Restrict file-import permissions to administrators only and require approval workflows; (5) Monitor and alert on outbound connections from Directus to internal or metadata endpoints.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
Related Vulnerabilities in Directus Multiple Security Vulnerabilities
View all 8Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
GNU Bash through 4.3 processes trailing strings after function definitions in the values of environment variables, which
Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using
The (1) EPHEMERAL, (2) HTTPS, (3) MVG, (4) MSL, (5) TEXT, (6) SHOW, (7) WIN, and (8) PLT coders in ImageMagick before 6.
When running Apache Tomcat versions 9.0.0.M1 to 9.0.0, 8.5.0 to 8.5.22, 8.0.0.RC1 to 8.0.46 and 7.0.0 to 7.0.81 with HTT
Remote code execution is possible with Apache Tomcat before 6.0.48, 7.x before 7.0.73, 8.x before 8.0.39, 8.5.x before 8
GNU Bash through 4.3 bash43-025 processes trailing strings after certain malformed function definitions in the values of
The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe
Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by lev
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 17 and earlier, and
Local privilege escalation in the GNU C Library (glibc) dynamic loader ld.so allows unprivileged local users on affected
EUVD-2026-19517
GHSA-wv3h-5fx7-966h
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB