Description
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.
Published: 2026-10-30
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: Denial of Service
Action: Immediate Patch
AI Analysis

Impact

AdminNeo is a PHP database management tool that exposes an unauthenticated ?script=version endpoint. The endpoint accepts POST data without any origin, CSRF or parameter-type validation, allowing a malicious actor to inject a version[] parameter that becomes a PHP array. This array is serialized into a shared adminneo.version cache and later passes through cookie() and rawurlencode(), which trigger a TypeError instead of encoding a normal string version. The result is a consistent HTTP 500 response for every user who accesses the application while the cached value persists, producing a persistent denial of service lasting up to twenty-four hours or until the cache is cleared.

Affected Systems

The vulnerability affects the AdminNeo application (adminneo-org:adminneo) running versions 4.6.2 through 5.5.0 inclusive. Administrators of these releases are at risk until they upgrade to version 5.5.0 where the flaw has been fixed.

Risk and Exploitability

The CVSS score of 7.5 indicates a high impact vulnerability that is exploitable over the web without authentication. The EPSS score is not available, and the vulnerability is not listed in CISA’s KEV catalog, suggesting it may not yet be widely exploited in the wild. Exploitation requires that the web server can write to the shared cache; therefore, an intermediate mitigation is to make that cache directory unwriteable. Once the cache is poisoned, all users experience failures until the cache expires or its contents are removed, making the complaint a security resource denial rather than a breach of confidentiality or integrity.

Generated by OpenCVE AI on October 30, 2026 at 20:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the vendor patch by upgrading to version 5.5.0 or later.
  • Modify file system permissions so that the adminneo.version cache directory is not writable by the web server or shared file system users.
  • Restrict or disable unauthenticated access to the ?script=version endpoint, for example by routing the URL through a web‑application firewall or removing the script from the deployment.

Generated by OpenCVE AI on October 30, 2026 at 20:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-jm85-8cpp-9cjc AdminNeo: version-cache array injection causes persistent denial of service
History

Fri, 30 Oct 2026 19:00:00 +0000

Type Values Removed Values Added
Description 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.
Title AdminNeo: version-cache array injection causes persistent denial of service
Weaknesses CWE-20
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-30T19:50:24.134Z

Reserved: 2026-07-07T19:41:00.004Z

Link: CVE-2026-59978

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-10-30T19:18:27.480

Modified: 2026-10-30T20:17:10.567

Link: CVE-2026-59978

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-30T20:30:14Z

Weaknesses
  • CWE-20

    Improper Input Validation