Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with CREATE USER and VIEW GRANT privileges
-
DeliveryCreate username embedding newline FRM metadata
-
ExploitCreate view that writes crafted FRM file
-
ExecutionParser misinterprets username as security metadata
-
ImpactEscalate effective database privileges
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding for downstream
|
| Exploitation Conditions | Exploitation requires an authenticated database account holding BOTH the CREATE USER privilege and CREATE VIEW WITH GRANT OPTION; these are administrative-level grants, so this is an insider/privilege-boundary bypass rather than an anonymous attack. The concrete prerequisite is the ability to create a user whose username contains embedded newline (\n) characters encoding forged view FRM fields (e.g., definer_host=localhost, suid=1), then create a view so the FRM parser mis-parses the username as security metadata. Affected range is 10.6.1 up to (but not including) each fixed version; deployments already on 10.6.28/10.11.19/11.4.13/11.8.9/12.3.3/13.0.2 are not exploitable. Limiting factors: no remote unauthenticated path, high privilege requirement, and the attacker must control username creation - so environments that restrict CREATE USER/CREATE VIEW WITH GRANT OPTION to trusted administrators have substantially reduced real-world exposure. |
| Impact | This is a genuine but conditional privilege-escalation flaw whose real-world priority is moderate, not critical, despite the 7.2 (High) base score. The CVSS vector CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H is network-reachable and low-complexity, but the decisive limiter is PR:H: the attacker must already hold both CREATE USER and CREATE VIEW WITH GRANT OPTION privileges, which are administrative-grade grants rarely given to untrusted accounts. The flaw therefore functions as a privilege-boundary bypass for an already-privileged insider (or a compromised high-privilege account) rather than a path from zero access to compromise. No EPSS score was supplied, and the CVE is NOT in CISA KEV, so there is no evidence of active exploitation - exploitation status is 'no public exploit identified at time of analysis.' A fix commit with a regression test publicly demonstrates the exact technique (newline-laden username injecting view FRM security metadata), which lowers the bar for a skilled attacker to reproduce it, but that is distinct from a weaponized public exploit or in-the-wild use. Net: patch in normal cycles and prioritize where untrusted or semi-trusted users hold CREATE USER/CREATE VIEW WITH GRANT OPTION, but this is not a drop-everything internet-facing emergency. Missing signals to note explicitly: EPSS probability is absent and KEV status is negative, so no exploitation-likelihood telemetry is available to corroborate the severity. |
| Exploit ScenarioDerived | A semi-trusted database user who has been granted CREATE USER and CREATE VIEW WITH GRANT OPTION creates an account whose username embeds newline characters followed by forged FRM fields such as 'definer_host=localhost' and 'suid=1'. When a view is created, the FRM parser misreads the injected portion of the username as legitimate security metadata, letting the attacker escalate their effective database privileges. No standalone public exploit is identified, but the vendor fix commit (MDEV-40484) ships a regression test that reproduces the injection step by step. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 09, 2026
Privilege escalation in MariaDB Server affects releases from 10.6.1 up to (but not including) 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, where the view FRM parser fails to safely encode embedded newline characters in an account name. An authenticated attacker who already holds both CREATE USER and CREATE VIEW WITH GRANT OPTION (CVSS vector PR:H, so not an anonymous path) can create a username containing forged view metadata and then create a view, causing the parser to read part of the username as security fields such as definer_host and suid and thereby escalates database privileges. No public exploit code and no confirmed active exploitation have been identified at time of analysis; the 7.2 High base score reflects a conditional, insider-style privilege-boundary bypass rather than a remote unauthenticated attack, and environments that restrict these administrative grants to trusted administrators have substantially reduced exposure.
RemediationAI
Apply the vendor-released patch by upgrading to the fixed build for your branch: 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, or 13.0.2, available from the corresponding release pages (https://github.com/MariaDB/server/releases/tag/mariadb-10.6.28, mariadb-10.11.19, mariadb-11.4.13, mariadb-11.8.9, mariadb-12.3.3, and mariadb-13.0.2), with advisory detail at https://github.com/MariaDB/server/security/advisories/GHSA-g2q2-3936-cp37 and MDEV-40484 at https://jira.mariadb.org/browse/MDEV-40484. Where patching must be staged, the effective compensating control is to restrict CREATE USER and CREATE VIEW WITH GRANT OPTION to a small set of trusted administrators and audit existing accounts for those grants, since exploitation requires both privileges and control over username creation; the trade-off is that legitimate deployment or application-provisioning workflows that rely on these grants must be re-engineered or run through a controlled admin process. Additionally, audit mysql.global_priv and user/host values for embedded newline or other control characters and drop any suspicious accounts, and treat view DEFINER values containing newlines in information_schema.views as indicators of attempted abuse; this detection approach adds monitoring overhead and may produce false positives for unusual but benign account names.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 6 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
MariaDB stores view definitions as .frm files whose contents are line-oriented key=value records, and the view parameter table in sql/sql_view.cc handles fields including the DEFINER and the SQL SECURITY (suid) flag. The root cause is CWE-116 (Improper Encoding or Escaping of Output): usernames were written into that record structure without escaping control characters, so a username containing embedded newline characters can inject additional lines that the parser later interprets as separate metadata keys. The upstream fix (commit 8a642bc8103aadc6b2087d781ba8e1595616a2c4, tracked as MDEV-40484) changes the affected view_parameters entries from FILE_OPTIONS_STRING to FILE_OPTIONS_ESTRING, i.e. it escapes the string when serializing so a newline inside an account name can no longer be reinterpreted as metadata, with a small guard also added in sql/parse_file.h. The accompanying regression test creates a user literally named "root\ndefiner_host=localhost\nsuid=1" and then builds a view, demonstrating that the forged username surfaces in information_schema.views as DEFINER root\ndefiner_host=localhost\nsuid=1@localhost with SECURITY_TYPE DEFINER, meaning the view executes with the privileges of the attacker-supplied definer identity rather than the legitimate one. CPE data identifies the affected component as mariadb:server across those release branches, and the associated tags (Privilege Escalation, Server) match the privilege-boundary nature of the flaw.
Know when MariaDB 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
Requires CREATE USER plus CREATE VIEW WITH GRANT OPTION (administrative grants) so PR:H; exploitable over a normal DB connection at AV:N/AC:L, yielding full privilege escalation hence C/I/A:H.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the MariaDB view FRM parser did not safely encode embedded newline characters in a username. An account with CREATE USER and CREATE VIEW WITH GRANT OPTION could create a crafted username containing additional view metadata, causing the parser to interpret part of the username as security metadata and potentially escalating database privileges. This issue is fixed in versions 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2.
Articles & Coverage 2
Technical POC Analysis
The flaw is an output-encoding failure (CWE-116, with the related CWE-144 improper neutralization of line delimiters): the MariaDB view .frm writer places a username into the view metadata record wit…
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
MariaDB Server contains a high-severity privilege-escalation flaw that can let an authenticated database user with elevated account- and view-creation rights bypass security boundaries and gain additional database privileges. The issue affects multiple maintained MariaDB release branches, no vendor-released patch identified at time of analysis, and no public exploit identified at time of analysis. The risk is concentrated in environments that grant CREATE USER and CREATE VIEW WITH GRANT OPTION beyond a small group of trusted database administrators, so leadership should prioritize entitlement review and compensating controls over broad remediation.
No vendor-released patch identified at time of analysis; restrict CREATE USER and CREATE VIEW WITH GRANT OPTION to trusted DBAs, audit and revoke unnecessary grants, monitor for newline/control characters in account names and anomalous view creation, and isolate or closely monitor affected MariaDB Server instances.
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
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
Oracle MySQL through 5.5.52, 5.6.x through 5.6.33, and 5.7.x through 5.7.15; MariaDB before 5.5.51, 10.0.x before 10.0.2
MySQL 5.5.19 and possibly other versions, and MariaDB 5.5.28a and possibly other versions, when configured to assign the
The dtls1_reassemble_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
sql/password.c in Oracle MySQL 5.1.x before 5.1.63, 5.5.x before 5.5.24, and 5.6.x before 5.6.6, and MariaDB 5.1.x befor
Heap-based buffer overflow in Oracle MySQL 5.5.19 and other versions through 5.5.28, and MariaDB 5.5.28a and possibly ot
Stack-based buffer overflow in the acl_get function in Oracle MySQL 5.5.19 and other versions through 5.5.28, and 5.1.53
The ssl3_send_client_key_exchange function in s3_clnt.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before
mysqld_safe in Oracle MySQL through 5.5.51, 5.6.x through 5.6.32, and 5.7.x through 5.7.14; MariaDB; Percona Server befo
The dtls1_get_message_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.
Oracle MySQL before 5.7.3, Oracle MySQL Connector/C (aka libmysqlclient) before 6.1.3, and MariaDB before 5.5.44 use the
The BN_mod_sqrt() function, which computes a modular square root, contains a bug that can cause it to loop forever for n
EUVD-2026-95923
NVD
CVE.org
EPSS
GitHub
VulDB
Exploit-DB