Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain/abuse admin login
-
DeliveryPOST .php file to /admin/Index/upload
-
ExploitBypass absent extension validation
-
ExecutionFile written to public/upload/Ymd/
-
PersistRequest uploaded webshell over HTTP
-
ImpactExecute arbitrary PHP as web server
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 admin session on the ApiAdmin panel - the POST /admin/Index/upload endpoint is reachable only by a logged-in admin user, which is the primary limiting factor (matches PR:H). Given that admin access, no further special conditions apply: the upload handler performs NO extension whitelist, blacklist, or content-type/content inspection, and files land in the web-accessible public/upload/Ymd/ directory under default behavior, so a .php payload is directly executable. Limiting factors beyond authentication: the public/upload path must be served and PHP-executable by the web server (typical default), and exploitation depends on holding or obtaining admin credentials rather than any unauthenticated vector. |
| Impact | This is a genuine but access-gated remote code execution flaw. The CVSS 3.1 vector (AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H, base 7.2 HIGH) is internally consistent with the description: network-reachable endpoint, low complexity, no user interaction, but requiring high privileges (PR:H) because exploitation is limited to an already-authenticated admin user. This privilege requirement is the single most important risk-dampening signal and reconciles the full C:H/I:H/A:H RCE impact with the moderate 7.2 score. Exploitation signals are mixed-to-low: EPSS is only 0.35% (26th percentile), indicating low predicted near-term mass exploitation, and the CVE is NOT in CISA KEV, so there is no evidence of active exploitation. However, a public write-up with exploitation details (fangtang7/CVE rce.md) means publicly available exploit code exists, so the technical barrier is trivial once admin access is held. No SSVC decision data was provided. Net: this is a credible post-authentication admin-to-RCE escalation, not an unauthenticated internet-wide emergency - treat it as a real priority only where untrusted or lower-trust users hold admin panel access, where the admin credential is weak/shared, or as a chained post-compromise step, rather than as a mass-exploitation threat. |
| Exploit ScenarioDerived | An attacker who has obtained ApiAdmin admin-panel credentials (via phishing, credential reuse, or a lower-privileged admin account) logs in and POSTs a .php webshell to /admin/Index/upload, which performs no extension whitelist, blacklist, or content validation. move_uploaded_file() writes the file under the web-accessible public/upload/Ymd/ directory, and the attacker requests it directly over HTTP to execute arbitrary PHP and gain code execution on the server. A public proof-of-concept write-up documenting this exact path exists. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 06, 2026
ApiAdmin 5.0 and earlier allow any logged-in administrator to achieve remote code execution by uploading a .php payload to POST /admin/Index/upload; the handler takes the client-supplied extension verbatim with no whitelist, blacklist, or content inspection, and move_uploaded_file() places the file into the web-served public/upload/Ymd/ directory, where it can be requested directly over HTTP. The attack path is gated by an authenticated admin session (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H, 7.2), so practical exposure hinges on credential compromise, reuse, or insider access rather than an unauthenticated vector. EPSS is low at 0.35% (26th percentile) and the issue is not listed in CISA KEV; no public exploit code is identified at time of analysis, though a public proof-of-concept write-up is referenced (GitHub fangtang7/CVE) and the European vulnerability entry EUVD-2026-92468 tracks the same CVE.
RemediationAI
No vendor-released patch has been identified at time of analysis, so ApiAdmin 5.0 and earlier should be treated as unfixed and compensated through configuration and code changes. The most direct mitigation is to disable or remove the upload functionality at POST /admin/Index/upload (or the entire admin module if it is not needed on internet-facing instances), accepting the operational cost that legitimate file uploads stop working; if uploads must remain, re-derive the stored filename and extension server-side against a strict allowlist such as jpg/png/pdf, reject any name containing path separators or traversal sequences, and validate content by magic bytes rather than trusting the client header. Second, move the upload storage out of the document root and serve files through an authenticated controller that returns Content-Disposition: attachment, which requires code changes but neutralizes direct script execution; if that is not feasible, block execution inside public/upload with an Apache .htaccess (php_flag engine off / RemoveHandler .php) or an equivalent nginx location block that does not pass the path to PHP-FPM, noting that .htaccess directives are silently ignored by nginx and that a misconfigured fastcgi location will defeat the control. Third, restrict /admin/* to trusted networks or place it behind SSO/MFA and rotate any admin credentials that may have been exposed, since admin access is the sole prerequisite for exploitation; pair this with PHP hardening (open_basedir covering only intended paths, disable_functions removing exec-like calls) and detection for POSTs to /admin/Index/upload carrying .php or double extensions and for newly created .php files under public/upload/. Finally, audit the existing public/upload/Ymd/ tree for dropped webshells and remove anything executable, and monitor the vendor project and the references at https://nvd.nist.gov/vuln/detail/CVE-2026-88396 and https://github.com/fangtang7/CVE/blob/main/ApiAdmin/rce.md for a released fix version, applying it as soon as one is published.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
ApiAdmin is a PHP admin/backend application whose controller routing (the /admin/Index/upload style path) reflects a typical PHP MVC framework layout. The flaw is catalogued as CWE-22 (path traversal), which fits the underlying defect class of building a filesystem destination path from user-controlled input: the upload routine concatenates a date-based directory (Ymd) under public/upload/ and moves the uploaded file there using move_uploaded_file(), while the filename extension is accepted exactly as the client presents it, with no allowlist, denylist, MIME sniffing, or magic-byte check. Because the destination directory sits inside the application's document root and PHP handlers are enabled there under common default deployments, the attacker-controlled .php file becomes a directly executable script rather than inert data, converting an upload weakness into code execution with the web server's privileges. In the broader taxonomy this behavior is closer to CWE-434 (unrestricted upload of file with dangerous type) than classic traversal, and any hardening should therefore target both sides: extension/type validation and preventing execution of anything written under the upload path. Version scoping comes from the description ('v5.0 and before'); the supplied CPE string (cpe:2.3:a:n/a:n/a) and the EUVD affected-version field are placeholders, so no authoritative CPE-based product/version enumeration is available and the vendor advisory referenced from NVD should be treated as the authoritative source.
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
AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
Network endpoint with no validation (AV:N/AC:L/UI:N); admin-only upload forces PR:H; webshell execution yields full C:H/I:H/A:H with no scope change.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
3DescriptionCVE.org
ApiAdmin v5.0 and before is vulnerable to Directory Traversal. The admin file-upload endpoint POST /admin/Index/upload in ApiAdmin takes the uploaded file's extension verbatim there is no whitelist, blacklist or content check and move_uploaded_file() drops the file into the web-accessible directory public/upload/Ymd/. Any logged-in admin user can upload a .php file and reach it directly over HTTP, achieving remote code execution on the server.
Executive ViewAI
ApiAdmin versions 5.0 and earlier contain a high-severity remote code execution vulnerability that requires an authenticated administrator session, meaning an attacker with compromised or insider credentials could fully compromise the server. The absence of a vendor patch and the low likelihood of exploitation (no public exploit identified at time of analysis) still leave organizations exposed to potential data breaches and service disruptions. Leadership should prioritize immediate mitigation and credential hygiene to reduce risk.
No vendor-released patch identified at time of analysis. Interim mitigations include: restrict admin interface access to trusted networks, enforce multi-factor authentication for all administrators, disable the upload functionality if not essential, deploy web application firewall rules to block PHP file uploads, monitor the /public/upload/ directory for unauthorized files, and conduct regular credential audits and rotations.
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.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
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-92468
GHSA-6jhf-4357-9q99
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB