High

Apache Superset - Elevation of Privilege

  • Disclosed: 28.11.2023
  • Updated: 11.10.2026 13:19

Overview

An attacker with access to the SQL Lab and the ab_user and ab_user_role tables can elevate his privileges to become administrator.

Details

On a more general level, diverse tables who are supposed to be only readable can be modified using the WITH … AS and RETURNING keywords. Modification of the table key_value can also be done, which could lead to a Remote Code Execution (cf. "V7 - Insecure deserialization leading to remote code execution" report vulnerability).

Proof of Concept

Some tables are supposed to accept only SELECT requests from the SQL tab.

  • Attempt to create a new user injected_admin into the ab_user table: PoC_1

But this protection can be bypassed by using the WITH … AS () syntax with RETURNING value after the INSERT / UPDATE / DELETE query. INSERT query accepted by the database due to the use of WITH … AS ( … RETURNING ) syntax: WITH a AS ( INSERT INTO ab_user (id, first_name, last_name, username, email, password) VALUES (2, ‘injected_admin’, ‘injected_admin’, ‘injected_admin’, ‘injected_admin@gmail.com’, ‘{PASSWORD_HASH}’) RETURNING id ) SELECT * FROM a; PoC_2

  • injected_admin added to the ab_user table: PoC_3

This method can also be used with UPDATE or DELETE request. A user with access to SELECT on the tables ab_user_role can escalate his privilege to become administrator.

  • Locating the ID of the user ‘Auditeur B’, who has no rights and is not an admin. The request is done being ‘Auditeur B’: PoC_4
  • Locating the rows that keep the role of the user ‘Auditeur B’. The row 36 stores the value 3, indicating the role ‘Alpha’ for ‘Auditeur B’: PoC_5
  • Modification of the row 36 with an UPDATE request embedded in a WITH request: PoC_6
  • ‘Auditeur B’ role has been changed to Admin: PoC_7

This technique can also be used to inject or modify values of the table key_value, which can potentially lead to a Remote Code Execution (cf. ...).

Solution

Orange recommendation

To fix this vulnerability, we recommends reenforcing the SELECT filter to spot INSERT / UPDATE / DELETE keywords even in WITH requests.

Security patch

Upgrade to Superset version 2.1.2.

References

https://nvd.nist.gov/vuln/detail/CVE-2023-40610 https://lists.apache.org/thread/jvgxpk4dbxyqtsgtl4pdgbd520rc0rot

Credits

LEXFO for Orange Innovation

Orange CERT-CC at Orange group

Timeline

Date reported: July 27, 2023 Date fixed: November 27, 2023

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Python (PyPI) apache-superset < 2.1.2 2.1.2

References

CVSS score 7.3/10
CVSS vector
CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness (CWE)
CWE-863
Platform
Python (PyPI)
Package
apache-superset
Disclosed
28.11.2023
Updated
11.10.2026 13:19

Sources and licenses

OSV / GitHub Advisory Database - PYSEC-2026-1173 - PyPA Advisory Database; CC BY 4.0

OSV / GitHub Advisory Database - GHSA-f678-j579-4xf5 - CC BY 4.0

Vulnerability history: apache-superset

All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (66) in the archive
Total entries
66
First → latest
12.2019 02.2026
Without a fix
1
Exploited in attacks
1

Severity breakdown

  • Critical 3
  • High 14
  • Medium 48
  • Low 1

Disclosures per year

  1. 2019: 2
  2. 2020: 3
  3. 2021: 6
  4. 2022: 3
  5. 2023: 28
  6. 2024: 13
  7. 2025: 6
  8. 2026: 5
Severity:
  1. High · 8.8 CVE-2025-27696 < 4.1.2 4.1.2
  2. Critical · 9.6 CVE-2023-49657 < 3.0.3 3.0.3
  3. High · 7.7 CVE-2023-49734 < 2.1.3, >= 3.0.0, < 3.0.2 2.1.3, 3.0.2
  4. Apache Superset - Elevation of Privilege this entry
    High · 7.3 CVE-2023-40610 < 2.1.2 2.1.2
  5. High · 8.9 Exploited in attacks CVE-2023-27524 < 2.1.0 2.1.0
  6. High · 8.8 CVE-2022-43719 < 1.5.3, >= 2.0.0, < 2.0.1 1.5.3, 2.0.1

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.