MEDIUMCVSS not yet scoredVulnerability

CVE-2026-96634

### Summary This vulnerability is a patch bypass that exploits catastrophic backtracking in a regular expression used to filter ATTACH statements in AdminNeo's SQLite functionality. The original vulnerability (CVE-2021-43008) allowed authenticated users to create PHP files through SQLite ATTACH statements, achieving remote code execution. The patch introduced a regex filter to block ATTACH queries, but this filter is vulnerable to catastrophic backtracking. Originally reported by @zdi-disclosures in Adminer: https://github.com/vrana/adminer/security/advisories/GHSA-3582-q6xq-5vf7 ### Analysis **[Source]** sql.inc.php :: SQL import handler:47 ```php $query = get_file("sql_file", true, ";"); ``` > User uploads a malicious SQL file through the import form. The file content is read into the `$query` variable without any initial sanitization. **[Transform]** sql.inc.php :: SQL import handler:87 ```php // Query parsing loop that extracts individual SQL statements ``` > The uploaded SQL content is processed in a loop that splits it into individual queries. Each query `$query` is extracted for processing. **[Context]** sql.inc.php :: SQL import handler:65 ```php $space = "(?:\\s|/\\*[\s\S]*?\\*/|(?:#|$line_comment)[^\n]*\n?|--\r?\n)"; ``` > Definition of the `$space` regex pattern used in the ATTACH filter. The possessive quantifier `*+` combined with SQLite comment patterns (`--`) creates the catastrophic backtracking vulnerability when many comment lines are processed. **[Transform]** sql.inc.php :: SQL import handler:146 ```php if (DIALECT == "sqlite" && preg_match("~^$space*+ATTACH\\b~i", $q, $match)) { ``` > The ATTACH query filter check. When the regex encounters 350,000 SQLite comment lines (`--`), it triggers catastrophic backtracking. The possessive quantifier `*+` causes exponential backtracking, eventually hitting PHP's backtracking limit and causing `preg_match()` to return `false` instead of `0` or `1`, bypassing the security filter. **[Sink]**

Properties

Ghsa id
GHSA-p96f-p2p2-2g3h
Severity
medium
Summary
AdminNeo SQLite: multi_query Incorrect Check of Function Return Value RCE
Last source
GitHub Advisory Database
Cve id
CVE-2026-96634
First seen by Signal
2026-10-31T00:14:10+00:00
Is ghsa only
false
Retrieved at
2026-10-31T00:14:10+00:00
Ghsa published
2026-10-30T22:53:08Z
Source url
https://github.com/advisories/GHSA-p96f-p2p2-2g3h
Ghsa updated
2026-10-30T22:53:11Z

Related Entities (3)

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-96634 — Ninja Signal Threat Intelligence | Ninja Signal