Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify template/widget piping untrusted input to |resize
-
DeliverySubmit phar://, file:// or ftp:// source string
-
ExploitValue stored in resizer cache
-
ExecutionWrapper passed to image library
-
ImpactMetadata deserialization / SSRF triggered
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a pre-existing injection primitive in the calling code: a backend template author (Publisher or Developer role, already trusted with template code execution) or plugin must pipe untrusted input into the |resize Twig filter or ResizeImages::resize() API without validating that the scheme is http/https. Only then can a phar://, file://, or ftp:// source reach the resizer cache and be passed to the image library. Limiting factors: NOT exploitable against default templates or where |resize is applied only to trusted values (uploaded file models, theme assets, static URLs); the /resize/{file} route is a lookup only and an unauthenticated visitor cannot write an arbitrary source path into the cache. Fixed in v4.3.5/4.4.0; affected 4.1.x/4.2.x/4.3.0-4.3.4. |
| Impact | This is a high-CVSS-narrative but low-real-risk issue once cross-referenced. VulDB (source of CVE-2026-100909, ref 410869) assigns CVSS 4.0 6.9 with AV:N/AC:L/PR:N/UI:N and states 'the attack may be performed from remote,' implying unauthenticated network exploitation. The vendor's own GHSA advisory (GHSA-2xmm-m4wv-3fjh) directly contradicts this: it describes the flaw as incomplete scheme validation in the image resizer (phar://, file://, ftp:// wrappers accepted where only http(s) should be) and explicitly labels it 'a defense-in-depth hardening rather than an unauthenticated network-to-RCE path.' The /resize/{file} route is only a lookup against a cache entry written by trusted server-side code, and 'an unauthenticated visitor cannot cause an arbitrary source path to be written into that cache.' Exploitation requires a pre-existing injection primitive - a template author (Publisher/Developer backend role, already trusted with template code execution) piping untrusted input into the |resize Twig filter or ResizeImages::resize() API without scheme validation. SSVC exploitation status is 'proof-of-concept' (E:P in the vector), and a public POC exists (0xGenesi's October CMS Stream Wrapper Injection writeup), but there is no KEV listing and no evidence of active exploitation. Net: the VulDB PR:N/AC:L rating materially overstates real-world exploitability; the vendor framing (conditional, requires trusted-role injection mistake) is the more credible signal. |
| Exploit ScenarioDerived | A backend template author (Publisher/Developer role) or a plugin builds a template that pipes untrusted, attacker-influenced string input into the |resize Twig filter without validating the scheme. An attacker supplies a phar:// (or file:///ftp://) source path, which is stored in the resizer cache and later handed to the underlying image library, triggering metadata deserialization on the phar path and enabling SSRF or, via a crafted phar, object-injection consequences. A public POC (0xGenesi) demonstrates the stream-wrapper injection technique, but it is not exploitable from the network without that pre-existing injection primitive in the calling code. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 28, 2026
Incomplete scheme validation in October CMS's image resizer (getSourcePathForResize() in modules/system/classes/ResizeImages.php) allows non-HTTP PHP stream wrappers such as phar://, file:// and ftp:// to be stored in the resize cache and later handed to the underlying image library, producing a server-side request forgery condition that on phar:// paths can trigger metadata deserialization during subsequent file operations. Affected builds are 4.1.x up to 4.1.19, 4.2.x up to 4.2.25 and 4.3.0 through 4.3.4; upgrading to 4.3.5 or 4.4.0 resolves the issue (patch commit 0e9736aa2c6d6bd3d60ff6ef9e0b4d32ce387f58). Publicly available exploit code exists (reported by 0xGenesi, tracked as CVE-2026-100909), but no confirmed active exploitation has been observed; reachability is narrow because the flaw only matters where a pre-existing injection primitive already pipes untrusted input into the |resize Twig filter or the ResizeImages::resize() API without validating the scheme, so default templates and trusted-value usages (uploaded file models, theme assets, static URLs) are not exposed.
RemediationAI
Upgrade to October CMS v4.3.5 or v4.4.0 - the first is the specific vendor fix for this issue and the second is the 4.4 line release that includes it; the change set is the commit 0e9736aa2c6d6bd3d60ff6ef9e0b4d32ce387f58, published with the advisory https://github.com/octobercms/october/security/advisories/GHSA-2xmm-m4wv-3fjh and the release https://github.com/octobercms/october/releases/tag/v4.3.5. Because the issue is only reachable through a pre-existing injection primitive, the effective compensating control while patching is to audit all template and plugin code for uses of the |resize Twig filter or direct ResizeImages::resize() calls that accept untrusted or user-influenced string input, and enforce that the scheme is http or https before the value is passed in; reject values containing '://' other than http(s) at that boundary, and never let user input select a raw filesystem path or wrapper URL. Site operators who cannot immediately patch should also restrict or disable any custom backend widget or theme code that forwards request parameters into the resizer (trading away dynamic thumbnail functionality), and where phar deserialization risk is a concern, avoiding file operations on attacker-supplied phar paths reduces the secondary impact. Generic measures such as blocking outbound FTP/SMB egress from the web tier limit the SSRF blast radius but do nothing against file:// local reads or phar gadget chains, so they are complements to, not substitutes for, the upgrade. No vendor-published workaround beyond code auditing is provided, so upgrading remains the only complete fix.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-918 (server-side request forgery) realized through PHP stream-wrapper handling rather than classic URL fetching. The resizer classified external sources by testing whether the source string merely began with the substring 'http', and the string-source branch of ResizeImageItem::fromObject() accepted any value containing '://' as a URL. That permissive test let wrapper schemes such as phar://, file:// and ftp:// survive into the resizer cache and be passed to the image library, so an attacker-controlled path could cause local file access, outbound FTP/file requests, or - most seriously - phar metadata deserialization when a later file operation touches the crafted phar path. The affected code lives in the system module (modules/system/classes/ResizeImages.php), with CPE data recorded as cpe:2.3:a:n/a:octobercms (vendor field unspecified in the feed) and tags PHP, SSRF, Octobercms. The public patch commit bundles unrelated hardening (case-sensitivity checks in backend controller action resolution, a reorder-authorization check in UserRoles, and output escaping of thumbUrl/pathUrl in fileupload partials), so integrators should treat it as a cumulative security release rather than a surgical one-line fix.
Know when PHP 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
AC:H and PR:L because exploitation depends on a trusted template author having introduced an unvalidated |resize input path; SSRF/deserialization yields limited C/I/A.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
2DescriptionCVE.org
A vulnerability was found in OctoberCMS up to 4.1.19/4.2.25/4.3.4. The impacted element is the function getSourcePathForResize of the file modules/system/classes/ResizeImages.php. The manipulation of the argument realSourcePath results in server-side request forgery. The attack may be performed from remote. The exploit has been made public and could be used. Upgrading to version 4.3.5 and 4.4.0 is sufficient to resolve this issue. The patch is identified as 0e9736aa2c6d6bd3d60ff6ef9e0b4d32ce387f58. The affected component should be upgraded.
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.
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
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
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
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
EUVD-2026-88081
GHSA-5528-3vrx-6443
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB