Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Lifecycle Timeline
5DescriptionCVE.org
Craftql v1.3.7 and before is vulnerable to Server-Side Request Forgery (SSRF) which allows an attacker to execute arbitrary code via the vendor/markhuot/craftql/src/Listeners/GetAssetsFieldSchema.php file
AnalysisAI
Server-Side Request Forgery (SSRF) in Craftql PHP library versions 1.3.7 and earlier enables remote attackers to force the server to make unintended requests, potentially leading to arbitrary code execution. The vulnerability resides in the GetAssetsFieldSchema.php listener component. No active exploitation is confirmed (not in CISA KEV), but a proof-of-concept repository with detailed exploitation documentation exists on GitHub. Despite the CVSS 7.5 rating, the extremely low EPSS score (0.01%, 0th percentile) indicates minimal real-world exploitation activity observed to date. The description claims RCE capability, but the CVSS vector shows only confidentiality impact (C:H/I:N/A:N), suggesting the SSRF may enable information disclosure that could chain into RCE rather than direct code execution - verification with vendor advisories needed.
Technical ContextAI
Craftql is a GraphQL plugin for Craft CMS written in PHP. The vulnerability is classified as CWE-918 (Server-Side Request Forgery), where an attacker can manipulate the application to make HTTP requests to arbitrary internal or external resources. The flaw exists in the vendor/markhuot/craftql/src/Listeners/GetAssetsFieldSchema.php file, likely in code handling asset field schema generation where user-controlled input (possibly GraphQL query parameters or asset URLs) is used to construct server-side requests without proper validation. SSRF vulnerabilities typically allow attackers to scan internal networks, access cloud metadata services (AWS EC2 metadata, Kubernetes API), or interact with internal services not exposed to the internet. The claim of arbitrary code execution suggests the SSRF may be exploitable to reach vulnerable internal services or leverage protocols beyond HTTP (file://, gopher://, etc.) to achieve RCE, though this escalation path is not detailed in the CVSS vector which shows no integrity or availability impact.
RemediationAI
Upgrade to Craftql version 1.3.8 or later if available, though no confirmed patched version is referenced in the CVE data or researcher documentation. Check the official GitHub repository (github.com/markhuot/craftql) for updates or security patches addressing CVE-2026-31317. If no patch exists and Craftql is required, implement network-level controls: deploy web application firewall (WAF) rules to detect and block SSRF payloads in GraphQL queries, specifically monitoring requests to the assets field schema endpoint. Restrict outbound connections from the web application server using egress filtering, allowing only necessary external domains and blocking access to cloud metadata endpoints (169.254.169.254, fd00:ec2::254), internal RFC1918 networks (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), and localhost (127.0.0.1/8). Note that egress restrictions may break legitimate external asset fetching features if Craftql relies on retrieving remote resources. Consider disabling asset field schema functionality in GetAssetsFieldSchema.php if not business-critical, though this may degrade GraphQL API functionality. Implement application-level URL validation with allowlists for permitted domains and protocols, rejecting file://, gopher://, dict://, and other non-HTTP schemes. Given the absence of vendor engagement indicated by missing advisories, evaluate migrating to actively maintained GraphQL solutions for Craft CMS.
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
NetAlertX (formerly PiAlert) versions 23.01.14 through 24.x before 24.10.12 allow unauthenticated command injection thro
The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all
Same weakness CWE-918 – Server-Side Request Forgery (SSRF)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-23428
GHSA-8wmw-prw8-2ggm