Skip to main content

Microsoft EUVDEUVD-2026-19517

| CVE-2026-35409 HIGH
Improper Input Validation (CWE-20)
2026-04-04 https://github.com/directus/directus GHSA-wv3h-5fx7-966h
7.7
CVSS 3.1 · Vendor: https://github.com/directus/directus
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate to Directus instance
  2. Delivery
    Craft request using IPv4-Mapped IPv6 notation
  3. Exploit
    Bypass IP deny-list validation
  4. Execution
    Access internal/private network resources
  5. Impact
    Exfiltrate 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.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

directus < 11.16.0

Affected Packages

npm directus fix: 11.16.0

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

Vendor (https://github.com/directus/directus) PRIMARY 7.7 HIGH
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

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch released
Apr 04, 2026 - 08:30 nvd
Patch available
CVE Published
Apr 04, 2026 - 06:10 nvd
HIGH 7.7

DescriptionCVE.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).

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 2 npm packages depend on directus (1 direct, 1 indirect)

Ecosystem-wide dependent count for version 11.16.0.

Executive ViewAI

Why It Matters

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.

Business Impact: High
Compensating Controls

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

EPSS Score
0.0%
Top 92% exploitable
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2019-11043 CRITICAL POC
9.8 Oct 28

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

CVE-2014-6271 CRITICAL POC
9.8 Sep 24

GNU Bash through 4.3 processes trailing strings after function definitions in the values of environment variables, which

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2016-3714 HIGH POC
8.4 May 05

The (1) EPHEMERAL, (2) HTTPS, (3) MVG, (4) MSL, (5) TEXT, (6) SHOW, (7) WIN, and (8) PLT coders in ImageMagick before 6.

CVE-2017-12617 HIGH POC
8.1 Oct 04

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

CVE-2016-8735 CRITICAL POC
9.8 Apr 06

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

CVE-2014-7169 CRITICAL POC
9.8 Sep 25

GNU Bash through 4.3 bash43-025 processes trailing strings after certain malformed function definitions in the values of

CVE-2014-0160 HIGH POC
7.5 Apr 07

The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe

CVE-2016-5195 HIGH POC
7.0 Nov 10

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

CVE-2013-2423 LOW POC
3.7 Apr 17

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 17 and earlier, and

CVE-2023-4911 HIGH POC
7.8 Oct 03

Local privilege escalation in the GNU C Library (glibc) dynamic loader ld.so allows unprivileged local users on affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy