Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach exposed AdminNeo endpoint over network
-
DeliveryPOST version[] array to ?script=version
-
ExploitArray serialized into shared adminneo.version cache
-
ExecutionNext page load passes array to rawurlencode()
-
PersistUncaught TypeError returns HTTP 500
-
ImpactPersistent denial of service for 24 hours to all users
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
|
| Exploitation Conditions | No authentication, credentials, or user interaction are required: any network client can POST |
| Impact | Signals are internally consistent and point to a genuine but availability-only risk. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H = 7.5) matches the described mechanism exactly: a remote, unauthenticated attacker sends one low-complexity POST with no user interaction, and impact is confined to availability (A:H) with no confidentiality or integrity loss - appropriate for a persistent DoS. The vuln.today decision label is 'this_week' (not act_now/emergency), which aligns with a high-severity DoS that is trivial to trigger yet non-destructive and easily recovered (delete the poisoned cache file, or apply the interim workaround of making adminneo.version unwritable). No EPSS score and no CISA KEV entry are present in the input, so there is no evidence of active exploitation; this is therefore a prioritize-this-week issue rather than an emergency. The GHSA advisory supplies complete step-by-step curl reproduction commands (a public PoC reference), so triggering it is demonstrably easy, but the input does not flag that reference as verified working exploit code and it is not weaponized beyond DoS. Net: a real, easy-to-exploit availability flaw whose practical urgency is tempered by DoS-only impact, fast recovery, a documented workaround, and the likely niche deployment of AdminNeo. |
| Exploit ScenarioDerived | A remote, unauthenticated attacker sends a single HTTP POST to |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 30, 2026
AdminNeo's unauthenticated ?script=version endpoint accepts POST data with no origin, CSRF or parameter-type validation, so a remote client can submit version[]=... and have PHP turn the expected string into an array. From 4.6.2 up to but not including 5.5.0, that array is serialized into the shared adminneo.version cache and later fed to cookie() and rawurlencode(), which throws a TypeError and returns HTTP 500 to every user of the instance. No credentials or user interaction are required, but exploitation depends on the web server being able to write the cache file and on version verification being enabled; the outage self-clears after the cache's 24-hour lifetime or immediately when the poisoned file is deleted. No confirmed public exploit code or active exploitation is identified at time of analysis, though the advisory does publish step-by-step reproduction commands.
RemediationAI
Vendor-released patch: upgrade to AdminNeo 5.5.0, which removes the ?script=version endpoint and the cache-read path entirely (commit https://github.com/adminneo-org/adminneo/commit/b7ae929e6afb374f0a7aba3d73b7d441470ff907, release https://github.com/adminneo-org/adminneo/releases/tag/v5.5.0). If upgrading is not immediately possible, the vendor's documented workaround is to make the cache file adminneo.version in the temp directory (typically the value of upload_tmp_dir) unwritable by the web server; the trade-off is that version verification can no longer refresh its shared cache, so the version badge is not populated from the cached value. To recover an instance that is already poisoned, delete the adminneo.version file from the temp directory, which restores HTTP 200 immediately rather than waiting out the 24-hour cache lifetime, and inspect PHP logs for the rawurlencode() TypeError to confirm the cause.
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
AdminNeo is a PHP database management tool, and its version-check flow lets browser JavaScript fetch the latest release from the GitHub API and POST the version string back to ?script=version, where bootstrap.inc.php stores it with serialize(["version" => $_POST["version"]]) in get_temp_dir() . "/adminneo.version" as a 24-hour shared cache. The root cause is CWE-20 improper input validation: the handler checks only $_GET["script"] == "version" and never verifies request origin, that a CSRF token matches, or that version is a scalar. Supplying version[] makes PHP build an array, which is faithfully serialized and cached; on subsequent page loads design.inc.php unserializes the cache and passes the value to cookie() and rawurlencode(), declared string, producing Fatal error: Uncaught TypeError: rawurlencode(): Argument #1 ($string) must be of type string, array given and an HTTP 500 for all visitors. The same type-validation defect was previously reported in upstream Adminer (GHSA-q4f2-39gr-45jh); AdminNeo reworked the version-check flow but kept the flaw until the 5.5.0 commit b7ae929, which deletes the ?script=version handler, removes the cache-reading code from design.inc.php, and drops the AJAX POST from functions.js.
Know when Adminneo 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:N/UI:N/S:U/C:N/I:N/A:H
Remote unauthenticated single POST with no user interaction (AV:N/AC:L/PR:N/UI:N); impact is availability-only persistent DoS (A:H) with no confidentiality or integrity effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
AdminNeo is a full-featured database management tool written in PHP. From 4.6.2 until 5.5.0, the unauthenticated ?script=version endpoint accepts POST data without origin, CSRF or parameter-type validation. A version[] parameter becomes a PHP array that bootstrap.inc.php serializes into the shared adminneo.version cache. On later page loads, design.inc.php passes that cached value to cookie() and rawurlencode(), causing a TypeError rather than encoding a version string. A remote attacker can make the instance return HTTP 500 to all users for the cache's twenty-four-hour lifetime or until the poisoned cache is removed. Exploitation requires the web server to be able to write that shared cache; making it unwritable is an interim workaround. The issue retains the underlying type-validation defect reported previously in Adminer despite changes to AdminNeo's version-checking flow. This issue is fixed in version 5.5.0.
Technical POC Analysis
Class: improper input validation / type confusion (CWE-20).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Latest POC
1 PoC candidate from github (unverified)
Sign in to open the public PoC links collected for this CVE.
Executive ViewAI
CVE-2026-59978 is a high-severity vulnerability in AdminNeo (versions 4.6.2 to before 5.5.0) that allows an unauthenticated remote attacker to crash the application, causing a denial-of-service for all users until the cache self-clears after 24 hours. Leadership should care because this can disrupt business operations and user access, potentially impacting productivity and customer experience.
Disable version verification, restrict access to the ?script=version endpoint, implement input validation to reject array parameters, and regularly clear the cache file.
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
Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.
EUVD-2026-114329
GHSA-jm85-8cpp-9cjc
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB