Skip to main content

phpMyAdmin CVE-2026-119427

| EUVDEUVD-2026-113807 LOW
SQL Injection (CWE-89)
2026-10-30 VulnCheck GHSA-23wc-rmw7-463f
2.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege phpMyAdmin user
  2. Exploit
    Send crafted operation=save_setting_value request to /database/designer
  3. Execution
    Break out of unescaped json_encode() value in control query
  4. Impact
    Overwrite other users' Designer settings / run controluser subqueries

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

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 phpMyAdmin account (CVSS PR:L) with access to the Designer feature, and the phpMyAdmin configuration storage (controluser / pmadb control database and the designer_settings control table) must be configured and enabled, since saveSetting() writes to control tables over the control connection. Exploitation targets the index/value parameters of operation=save_setting_value on /database/designer. Limiting factors: authentication is mandatory, the configuration storage must be set up (not phpMyAdmin's minimal default), and the CVSS AC:H/AT:P rating reflects that the trigger is constrained - the injected data flows through json_encode() output, which escapes quotes and limits freely injectable characters, so the attack is not a straightforward quote break-out. Impact is confined to control-database tables (other users' Designer settings / controluser subqueries), not the user's own data or the host.

Impact

This is a low-priority, high-barrier issue rather than an urgent threat. The supplied CVSS 4.0 base score is 2.3 (Low) with vector AV:N/AC:H/AT:P/PR:L/UI:N and only Low vulnerable-system confidentiality and integrity impact (VC:L/VI:L), with no availability or subsequent-system impact. The combination of AC:H, AT:P and PR:L means exploitation is network-reachable but requires an authenticated low-privilege phpMyAdmin account plus a non-trivial, partly attacker-uncontrolled trigger condition. The vuln.today Decision label is 'monitor', which aligns with the low score. No CISA KEV listing and no EPSS score were provided, so there is no signal of active or probable exploitation; the only exploitation-related artifact is a public research write-up (abraxaslabs.tech) and a VulnCheck advisory, which document the flaw but are not confirmed as working weaponized exploit code. A vendor patch is available (phpMyAdmin PR #18698 and associated commits). Net: a genuine authenticated SQL-injection in the Designer feature, but with constrained impact (control tables / other users' designer settings via the controluser) and a high exploitation barrier - treat as a scheduled-patch item, not an emergency.

Exploit ScenarioDerived

An authenticated phpMyAdmin user with access to the Designer feature sends a crafted request to /database/designer with operation=save_setting_value, placing SQL into the index or value parameter. Because the value is passed through json_encode() output that is not properly escaped before being concatenated into a control-connection query, the attacker can break out of the intended statement to overwrite other users' saved Designer settings or run subqueries as the controluser. A public research write-up describing the technique exists, but it is not verified as working exploit code, and the AC:H/AT:P rating indicates the trigger is not trivially reliable.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 30, 2026

SQL injection in phpMyAdmin's Designer saveSetting() handler (all versions through 5.2.3) lets an authenticated user who can reach the Designer feature inject SQL through the index and value parameters of operation=save_setting_value on /database/designer, allowing other users' stored Designer settings to be overwritten or subqueries to be run over the controluser connection. The bar is high: an account is required, and the phpMyAdmin configuration storage (controluser / pmadb with the designer settings control table) must be configured, since the injection lands in control-database tables rather than user data or the host. Upstream fixes exist as commits and pull request 18698; severity is scored low (CVSS 4.0 base 2.3; assessed CVSS 3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N), the priority label is monitor, and there is no CISA KEV entry - a public research writeup describing the flaw exists, but it is not verified as working exploit code. This is a low-priority, high-barrier issue rather than an urgent threat.

RemediationAI

Apply the upstream fix: pull request https://github.com/phpmyadmin/phpmyadmin/pull/18698, delivered by commits https://github.com/phpmyadmin/phpmyadmin/commit/ec0c6d8394b70d67798f38b645e39c26ea96a2a3 and https://github.com/phpmyadmin/phpmyadmin/commit/8d1244a72b3be073418e0e08f6f5506815bc7e65, which replace escapeString()-with-manual-quotes with quoteString(..., Connection::TYPE_CONTROL) across the Designer code paths - no tagged release version carrying the fix is independently confirmed in the available data, so confirm the patched build with the vendor before closing the finding. Where upgrading cannot happen immediately, note that disabling the phpMyAdmin configuration storage (controluser/pmadb) removes the control tables the injection writes to and therefore neutralises this issue, at the cost of losing the Designer, bookmarks, relations, query history and other pmadb-backed features; alternatively keep Designer access restricted to trusted, fully authenticated accounts, accepting that any such account can still tamper with the shared Designer settings of other users. Neither workaround addresses the underlying concatenation flaw, and updating remains the only complete fix.

Affected VersionsENISA

phpMyAdmin 0 ≤5.2.3

Affected Packages

euvd phpmyadmin no fix

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

phpMyAdmin's Designer is a visual schema-layout feature that persists page, table-position, relation and per-user setting data in a set of special 'configuration storage' tables in a separate control database (the classic pmadb / controluser setup), reached over a dedicated control connection rather than the user's own connection. CWE-89 applies because the Designer code in libraries/classes/Database/Designer/Common.php assembles control-table SQL by string concatenation: values were run through the database interface's escapeString() and then hand-wrapped in single quotes, and the fix commit shows that pattern replaced everywhere with quoteString($value, Connection::TYPE_CONTROL), which both escapes and quotes against the control connection's own charset. That mismatch - escaping with the user connection's semantics while executing on the control connection - is what makes crafted index/value payloads submitted with operation=save_setting_value able to alter the generated statement in saveSetting(). The trigger is constrained, not a simple quote break-out: the injected data passes through json_encode() output, which escapes quotes and limits which characters can be freely injected, which is why the assessed vector carries AC:H/AT:P while confidentiality and integrity impact stay low and confined to the control database. The CPE cpe:2.3:a:phpmyadmin:phpmyadmin:*:*:*:*:*:*:*:* and the EUVD range 'phpMyAdmin 0 ≤5.2.3' both indicate the whole release line up to and including 5.2.3 is affected.

Know when Phpmyadmin 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

Vendor (VulnCheck) PRIMARY 2.3 LOW
CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.2 MEDIUM

Network-reachable but needs an authenticated low-privilege user (PR:L) and json_encode escaping constrains injectable characters (AC:H); impact limited to control tables (C:L/I:L, A:N, scope unchanged).

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:H/AT:P/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

phpMyAdmin through 5.2.3 contains an sql injection vulnerability in Designer saveSetting() that allows authenticated users to inject SQL via unescaped json_encode() output. Attackers can send crafted index or value parameters with operation=save_setting_value to /database/designer to overwrite other users' designer settings or run controluser subqueries.

Threat Intelligence Overview

EPSS Score
0.2%
Top 87% exploitable
Prevalence
High
extremely common MySQL/MariaDB web admin tool on LAMP and shared hosting
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
High

Priority Score

12
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +12
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2016-5734 CRITICAL POC
9.8 Jul 03

phpMyAdmin 4.0.x before 4.0.10.16, 4.4.x before 4.4.15.7, and 4.6.x before 4.6.3 does not properly choose delimiters to

CVE-2012-5159 HIGH POC
7.5 Sep 25

phpMyAdmin 3.5.2.2, as distributed by the cdnetworks-kr-1 mirror during an unspecified time frame in 2012, contains an e

CVE-2013-3238 MEDIUM POC
6.0 Apr 26

phpMyAdmin 3.5.x before 3.5.8 and 4.x before 4.0.0-rc3 allows remote authenticated users to execute arbitrary code via a

CVE-2018-12613 HIGH POC
8.8 Jun 21

An issue was discovered in phpMyAdmin 4.8.x before 4.8.2, in which an attacker can include (view and potentially execute

CVE-2020-22452 CRITICAL POC
9.8 Jan 26

SQL Injection vulnerability in function getTableCreationQuery in CreateAddField.php in phpMyAdmin 5.x before 5.2.0 via t

CVE-2020-26935 CRITICAL POC
9.8 Oct 10

An issue was discovered in SearchController in phpMyAdmin before 4.9.6 and 5.x before 5.0.3. Rated critical severity (CV

CVE-2015-6830 MEDIUM POC
5.0 Sep 14

libraries/plugins/auth/AuthenticationCookie.class.php in phpMyAdmin 4.3.x before 4.3.13.2 and 4.4.x before 4.4.14.1 allo

CVE-2020-22278 HIGH POC
8.8 Nov 04

phpMyAdmin through 5.0.2 allows CSV injection via Export Section. Rated high severity (CVSS 8.8), this vulnerability is

CVE-2020-5504 HIGH POC
8.8 Jan 09

In phpMyAdmin 4 before 4.9.4 and 5 before 5.0.1, SQL injection exists in the user accounts page. Rated high severity (CV

CVE-2018-10188 HIGH POC
8.8 Apr 19

phpMyAdmin 4.8.0 before 4.8.0-1 has CSRF, allowing an attacker to execute arbitrary SQL statements, related to js/db_ope

CVE-2014-9218 MEDIUM POC
5.0 Dec 08

libraries/common.inc.php in phpMyAdmin 4.0.x before 4.0.10.7, 4.1.x before 4.1.14.8, and 4.2.x before 4.2.13.1 allows re

CVE-2012-5469 HIGH POC
7.5 Dec 20

The Portable phpMyAdmin plugin before 1.3.1 for WordPress allows remote attackers to bypass authentication and obtain ph

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy