Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as project member
-
DeliverySend upload request with traversal in subdir
-
ExploitWrite PHP payload outside repo
-
ExecutionRequest planted webshell
-
ImpactExecute code as web server user
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated HUBzero project-member account (PR:L) with access to the project files upload feature; the attacker supplies directory-traversal sequences ('../') in the 'subdir' (and related upload/flowIdentifier) parameters of the com_projects file upload handlers (filesv1_0.php chunkedUploadTask, filefsv1_0.php uploadTask, and the projects/files plugin), which pre-patch flowed unsanitized into move_uploaded_file/copy and base64-derived temp directory paths. Exploitation is limited to HUBzero CMS versions through 2.2.32 and to users who already hold project membership; it is remote and needs no user interaction, but the write occurs with web server privileges and code execution depends on landing the file in a web-servable, executable location. No special non-default configuration is otherwise required. |
| Impact | This is a credible, high-severity issue that warrants prompt patching, but real-world urgency is tempered by narrow prevalence and an authentication gate. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H) describes a network-reachable, low-complexity, low-privilege (authenticated project member) path traversal that yields arbitrary file write with web server privileges - the source diff confirms the root cause: user-controlled 'subdir'/upload parameters were passed to move_uploaded_file/copy and base64-derived temp paths without confining them to the repo (fixed via new SafePath::relative/name guards across filesv1_0.php, filefsv1_0.php, repo.php and the files plugin). Arbitrary write of a PHP file into a web-served directory realistically escalates to code execution, justifying the H/H/H impact. Countervailing signals: no EPSS score, no CISA KEV listing, and no public POC were provided, so there is no evidence of active or automated exploitation; exploitation requires a valid authenticated project-member account, making this an insider/compromised-account or chained scenario rather than mass-exploitable. Net: prioritize because of the RCE potential and available patch, but this is a targeted risk against a niche research-collaboration platform, not an internet-wide emergency. No SSVC or automatable determination was supplied in the input. |
| Exploit ScenarioDerived | An authenticated HUBzero project member submits a file-upload API request (e.g. to the com_projects files controller) with a crafted 'subdir' parameter containing '../' traversal sequences, causing the uploaded file to be written outside the project repository to an attacker-chosen path with web server privileges. By writing a PHP payload into a web-accessible location, the attacker obtains a webshell and executes arbitrary code. No public exploit was identified at time of analysis, though the patch commits and referenced vulnerable source lines make the flaw straightforward to reconstruct. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 17, 2026
Path traversal in HUBzero CMS through 2.2.32 lets authenticated project members write files to arbitrary paths outside the project repository, potentially achieving code execution when the written file lands in a web-servable, executable location. The flaw lives in the com_projects file-upload API (filefsv1_0.php upload/download tasks and filesv1_0.php chunkedUploadTask) and the projects/files plugin, where the 'subdir' and chunked-upload 'flowIdentifier' parameters flow unsanitized into move_uploaded_file/copy and base64-derived temp-directory paths. Exploitation is remote and needs no user interaction but requires a low-privileged project-member account (CVSS v4.0 PR:L); vendor fix commits are published, yet no public exploit code has been identified at time of analysis and the issue is not known to be actively exploited.
RemediationAI
Apply the vendor fix commits 4a58215463e5d42f8d03567358171383da939946 and 5b4c4aefedf647390465cdfd0e7fa626c3e1cb39 - upstream fixes are available (PR/commit), but a tagged release version newer than 2.2.32 is not independently confirmed, so validate the patch level of your build rather than assuming a version number. The patches add Hubzero\Filesystem\SafePath::relative() validation to the 'subdir' parameter in filefsv1_0.php, filesv1_0.php, connections.php and files.php (invalid paths now abort with 404/COM_PROJECTS_FILES_ERROR_INVALID_PATH), add a defensive SafePath::relative() check inside com_projects models/repo.php insert(), add a new SafePath::name() helper rejecting separators, dot segments, null bytes and control characters, switch chunked-upload temp directory naming from raw base64_encode() to URL-safe base64, and drop mkdir permissions from 0777 to 0700. If patching is not immediately possible, compensating controls should target the write primitive directly: disable the projects/files plugin or the project file upload/chunked-upload feature for non-trusted users (this removes the attack surface but breaks project file management), restrict who can hold project membership and upload rights since the flaw requires PR:L, set PHP open_basedir and a hardened upload_tmp_dir so traversal cannot escape the intended root, and explicitly disable PHP execution in all upload/storage directories (php_flag engine off / RemoveHandler), which defeats the code-execution step with the trade-off that PHP-based file viewers in those directories will stop working. WAF rules should block URL-encoded and double-encoded traversal sequences (%2e%2e%2f, ..%2f, ..%5c) and anomalous 'subdir' or 'flowIdentifier' parameters on com_projects upload endpoints, and file-integrity monitoring should alert on new files appearing outside project repositories. Review https://www.vulncheck.com/advisories/hubzero-cms-through-2.2.32-path-traversal-via-file-upload for the vendor advisory and audit logs for the vulnerable handlers as a precaution, since exploitation requires an authenticated project member and may appear in legitimate-looking requests.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
HUBzero CMS is a PHP web publishing platform (derived from the Joomla/MVC lineage) whose com_projects component exposes REST-style file management endpoints. The vulnerability is a classic CWE-22 relative path traversal: user-controlled 'subdir' values were passed through trim(urldecode(...)) and then used to build target paths handed to move_uploaded_file()/copy(), and also concatenated into temporary chunk-upload directories after base64_encode() - a transform whose output alphabet includes '/' and therefore silently introduces additional path separators rather than sanitizing them. The code paths involved are core/components/com_projects/api/controllers/filefsv1_0.php (uploadTask/downloadTask), core/components/com_projects/api/controllers/filesv1_0.php (chunkedUploadTask), core/components/com_projects/models/repo.php (insert), core/plugins/projects/files/connections.php and files.php, plus the filesystem helper core/libraries/Hubzero/Filesystem/Entity.php and core/libraries/Hubzero/Filesystem/SafePath.php. Because writes execute under the web server's own privileges, the impact ceiling is arbitrary file creation with application-user rights, and code execution follows only if the traversal target is both writable and interpreted by the web stack (e.g., a PHP-executable directory). The upstream fix introduces SafePath::relative() validation (returning false for escaping paths, which callers convert into a 404/error), a new SafePath::name() helper that refuses any directory separator, dot segment, null byte or control character, URL-safe base64 encoding for chunk temp directories, and a mkdir permission reduction from 0777 to 0700. CPE cpe:2.3:a:hubzero:hubzero-cms:*:*:*:*:*:*:*:* confirms the wildcard range, i.e. all releases up to and including 2.2.32 are affected.
Know when Hubzero Cms 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:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network-reachable authenticated project member (PR:L, AC:L, UI:N); arbitrary file write with web server privileges plausibly yields code execution, so C:H/I:H/A:H; impact confined to the host security authority so S:U.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
HUBzero CMS through 2.2.32 contains a path traversal vulnerability in project file upload handlers that allows authenticated project members to write arbitrary files outside the project repository. Attackers can supply traversal sequences in upload parameters to write files to attacker-chosen paths with web server privileges, potentially enabling code execution.
Executive ViewAI
HUBzero CMS deployments up to version 2.2.32 are affected by a high-severity flaw that lets authenticated project members place files in unintended server locations, which can lead to code execution and broader system compromise. Organizations using this platform for collaborative projects face potential unauthorized access, data loss, and service interruptions, especially where many low-privileged users have accounts. Leadership should fund and prioritize an immediate upgrade because the vulnerability can be triggered by a routine user role without user interaction.
Apply vendor patch.
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
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
EUVD-2026-81579
GHSA-6wrp-rq46-2frr
NVD
CVE.org
EPSS
Exploit-DB