Skip to main content

Kamaji CVE-2026-62845

| EUVDEUVD-2026-51312 MEDIUM
SQL Injection (CWE-89)
2026-07-30 GitHub_M
4.7
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Recon
    Obtain TenantControlPlane write RBAC role
  2. Delivery
    Craft DataStoreUsername or DataStoreSchema with embedded SQL injection payload
  3. Exploit
    Submit malicious TenantControlPlane via Kubernetes API
  4. Install
    Kamaji MySQL/PostgreSQL driver interpolates value into DDL via fmt.Sprintf
  5. C2
    Identifier context broken, injected SQL appended to statement
  6. Execute
    Stacked query executes over root datastore connection
  7. Impact
    Corrupt, exfiltrate, or destroy shared tenant datastore schemas

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

Exploitation requires the ability to create or modify a Kamaji TenantControlPlane Kubernetes custom resource - typically a cluster-admin role or a custom RBAC role granting write access to TenantControlPlane objects in the kamaji-system namespace. The vulnerability triggers specifically when Kamaji processes the DataStoreUsername or DataStoreSchema fields of a TenantControlPlane resource using the PostgreSQL or MySQL datastore driver; etcd-backed deployments are not vulnerable regardless of RBAC. The pre-fix MySQL primary connection's multiStatements=true parameter is the escalating condition that permits stacked query injection; without it, injection would still break individual DDL statements but could not chain arbitrary SQL in a single call. Exploitation is bounded by the high-privilege prerequisite: unauthenticated users and low-privilege cluster members cannot supply these configuration values and are not able to trigger the vulnerability.

Impact

The CVSS 4.7 base score and PR:H vector accurately reflect the primary gatekeeping control: exploitation requires the ability to create or modify a TenantControlPlane Kubernetes custom resource, which is ordinarily restricted to cluster administrators or holders of a delegated RBAC role. This is a meaningful real-world constraint. However, the vendor CVSS impact ratings of C:L/I:L/A:L appear to understate the pre-fix MySQL exposure: the presence of multiStatements=true on the primary connection meant that successful identifier injection could escalate to arbitrary stacked SQL over a root-privileged connection shared across all tenant control planes - plausibly enabling full datastore read, data modification, or DROP operations. This raises the actual blast radius above what the base score suggests. EPSS was not provided in the source data; no KEV listing and no public POC exist, indicating no confirmed widespread exploitation. The combination of high-privilege prerequisite and niche deployment footprint keeps real-world exploitation probability low, but any environment where TenantControlPlane write access has been delegated broadly should treat this as higher priority than the base score implies.

Exploit ScenarioDerived

A Kubernetes user holding cluster-admin or a delegated TenantControlPlane write role submits a TenantControlPlane resource with DataStoreUsername set to a value such as legit`; DROP DATABASE tenant_alpha;-- . Kamaji's MySQL driver interpolates this into a CREATE USER DDL statement via fmt.Sprintf without quoting, breaking out of the backtick identifier context. On pre-fix deployments where the primary MySQL connection carries multiStatements=true, the injected DROP DATABASE executes as a second stacked statement over the root datastore connection, destroying tenant_alpha's schema and taking down that tenant's Kubernetes control plane. No public POC has been identified.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.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 – Jul 30, 2026

SQL injection via unescaped identifier interpolation in Kamaji's PostgreSQL and MySQL datastore drivers exposes the shared datastore root connection to arbitrary DDL/DML manipulation. Versions prior to 26.7.4-edge interpolate operator-supplied DataStoreUsername and DataStoreSchema fields directly into SQL via fmt.Sprintf without any identifier sanitization, allowing a quote or backtick character to break out of the identifier context. Compounding the risk, the pre-fix MySQL primary connection had multiStatements=true enabled, enabling stacked query execution over a root-privileged database connection that spans all hosted tenant control planes. No active exploitation has been confirmed and no public exploit code has been identified at time of analysis.

RemediationAI

Upgrade to Kamaji 26.7.4-edge or later, available at https://github.com/clastix/kamaji/releases/tag/26.7.4-edge. This release introduces quoteMySQLIdentifier() and escapeMySQLString() to sanitize all operator-supplied identifiers before SQL interpolation, and removes the multiStatements parameter from the primary datastore connection, preventing stacked-query escalation as a defense-in-depth measure. For operators unable to upgrade immediately, restrict creation and modification of TenantControlPlane resources via Kubernetes RBAC to only explicitly trusted administrators - this limits the attack surface to users who already hold the high-privilege access the vulnerability requires, though it does not eliminate the underlying flaw. Auditing existing TenantControlPlane resources for unexpected characters (backticks, single quotes, semicolons) in DataStoreUsername and DataStoreSchema fields can help detect any prior exploitation attempts. No workaround fully mitigates the vulnerability without RBAC restrictions on TenantControlPlane write access.

Affected VersionsENISA

kamaji < 26.6.4-edge

Affected Packages

euvd kamaji fix: 26.6.4-edge

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

Kamaji (cpe:2.3:a:clastix:kamaji:*:*:*:*:*:*:*:*) is a Clastix open-source project that manages Kubernetes hosted control planes using a shared relational datastore (PostgreSQL or MySQL). The vulnerability is CWE-89 (Improper Neutralization of Special Elements used in an SQL Command). Affected code in mysql.go and its PostgreSQL equivalent constructs DDL statements such as CREATE DATABASE IF NOT EXISTS %s and CREATE USER %s@%% IDENTIFIED BY '%s' using Go's fmt.Sprintf, feeding DataStoreUsername and DataStoreSchema from a TenantControlPlane Kubernetes custom resource directly as string arguments. A value containing a backtick or single quote terminates the identifier context, injecting arbitrary SQL into the statement. The commit diff at https://github.com/clastix/kamaji/commit/6a9f3e10ae408e7948e2aca2db694791a299e79c further reveals that before the fix the MySQL primary connection carried the multiStatements=true DSN parameter, which permits semicolon-separated stacked queries in a single ExecContext call - converting simple identifier injection into a full arbitrary SQL execution primitive against the root datastore connection. The fix introduces quoteMySQLIdentifier() and escapeMySQLString() helpers, removes multiStatements from the primary connection, and isolates multi-statement execution to a scoped temporary connection used only during schema migration. The etcd driver constructs no SQL and is explicitly confirmed unaffected.

Know when Kamaji 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 (GitHub_M) PRIMARY 4.7 MEDIUM
AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L
vuln.today AI 7.2 HIGH

PR:H for required TenantControlPlane write access; C/I/A:H because pre-fix multiStatements=true enables arbitrary stacked SQL over the root datastore connection.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low

Lifecycle Timeline

1
Patch available
Jul 30, 2026 - 22:20 EUVD

DescriptionCVE.org

Kamaji is the Hosted Control Plane Manager for Kubernetes. Prior to 26.7.4-edge, the PostgreSQL and MySQL datastore drivers build DDL statements by interpolating the user-supplied DataStoreUsername/DataStoreSchema directly into SQL via fmt.Sprintf, without escaping identifiers. These fields have no format validation, so a value containing a quote character breaks out of the quoted identifier - SQL injection executed over Kamaji's root connection to the shared datastore. etcd driver is not affected.This issue is fixed in version 26.7.4-edge.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Low
niche Kubernetes add-on for hosted control plane management, limited enterprise footprint
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

24
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +24
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.

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