Cyber Resilience

CVE-2024-39887

SQLi in Apache Superset ≤ 4.0.2

Published
16 July 2024
Modified
13 February 2025
Patch / advisory
CVSS Score v3.1 4.3
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
EPSS Score 0.044 91th percentile
Risk Priority 70 floored blend · peak EPSS

Summary

CVE-2024-39887 is a medium-severity SQL Injection (CWE-89) vulnerability in Apache Superset. Its CVSS base score is 4.3 (Medium).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked in the top 9% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SI-10 (Information Input Validation) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

Apache Superset versions prior to 4.0.2 contain an SQL injection vulnerability (CWE-89) stemming from incomplete neutralization of special elements in SQL statements. The flaw occurs because certain database engine-specific functions are not validated by the existing authorization checks, allowing crafted queries to bypass Superset's SQL controls. The issue carries a CVSS 4.3 rating reflecting network access with low privileges and limited confidentiality impact.

An authenticated user with low-privileged access can submit queries that invoke unchecked functions, thereby extracting information that would normally be restricted by Superset's data-access rules. The attack does not require user interaction and can be performed remotely over the network.

Apache advisories recommend immediate upgrade to version 4.0.2. The release introduces a new configuration parameter, DISALLOWED_SQL_FUNCTIONS, that blocks the PostgreSQL functions version, query_to_xml, inet_server_addr, and inet_client_addr by default; administrators may extend the list with additional functions for broader protection. The referenced OSS-Security and Apache mailing-list posts reiterate the same upgrade and configuration guidance.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

An SQL Injection vulnerability in Apache Superset exists due to improper neutralization of special elements used in SQL commands. Specifically, certain engine-specific functions are not checked, which allows attackers to bypass Apache Superset's SQL authorization. To mitigate this, a new…

more

configuration key named DISALLOWED_SQL_FUNCTIONS has been introduced. This key disallows the use of the following PostgreSQL functions: version, query_to_xml, inet_server_addr, and inet_client_addr. Additional functions can be added to this list for increased protection. This issue affects Apache Superset: before 4.0.2. Users are recommended to upgrade to version 4.0.2, which fixes the issue.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-24772Same product: Apache Superset
CVE-2023-49736Same product: Apache Superset
CVE-2023-37924Same vendor: Apache
CVE-2023-52290Same vendor: Apache
CVE-2023-25196Same vendor: Apache
CVE-2023-25197Same vendor: Apache
CVE-2016-0710Same vendor: Apache
CVE-2024-23539Same vendor: Apache
CVE-2024-23538Same vendor: Apache
CVE-2024-42361Same vendor: Apache

Affected Assets

apache
superset
≤ 4.0.2

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V6.2.5

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation can discover SQLi flaws before deployment but does not stop their introduction.

Input validation directly stops untrusted data from reaching SQL query construction without neutralization.

Secure engineering principles require parameterized queries and input sanitization that structurally eliminate SQLi.

System monitoring can identify attempted SQLi exploitation via anomalous queries after the weakness exists.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly target injection flaws during coding and review so largely prevent CWE-89 introduction, yet the single broad outcome leaves residual risk from incomplete neutralization techniques or missed edge cases.

PR.AT-02 partial match
prevents

Training raises developer awareness of SQLi risks and can reduce introduction likelihood (partial) but removes none of the actual coding flaw's risk by itself since technical neutralization is still required.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

The same secure-coding and static-analysis activities surface missing neutralization of SQL metacharacters before the system is accepted.

prevents

Early warnings and shared best-practice information help organizations apply the latest remediation techniques against SQL-injection vulnerabilities.

prevents

Threat-intelligence feeds that surface new SQL-injection campaigns enable rapid updates to query-construction defenses and detection signatures before exploitation occurs.

prevents

Secure-coding rules and security testing phases mandate the use of parameterized queries or equivalent escaping, preventing the construction of dynamic SQL statements from untrusted input.

prevents

Language-specific secure coding rules, peer review and SAST together prevent the construction of SQL statements from untrusted data without proper parameterization or escaping.

References