CVE Tools
Back to blog

The Password Reset Endpoint That Gave Away Admin: Metabase's CVE-2026-72898 and the Four Companies Behind It

A single unauthenticated POST to /api/session/reset_password was enough to reach full admin on any exposed Metabase instance. CISA's KEV deadline for it is today.

The Password Reset Endpoint That Gave Away Admin: Metabase's CVE-2026-72898 and the Four Companies Behind It. A single unauthenticated POST to /api/session/reset_password was enough to reach full admi
The Password Reset Endpoint That Gave Away Admin: Metabase's CVE-2026-72898 and the Four Companies Behind It. A single unauthenticated POST to /api/session/reset_password was enough to reach full admi

One unauthenticated request, full admin

No login, no session token, no user interaction — just a crafted POST to a password-reset endpoint. That was enough to inject arbitrary SQL into the Metabase application database and walk out with administrator access to the instance. Metabase disclosed the flaw as CVE-2026-72898 on August 6, 2026, after confirming its own Cloud platform had already been hit by "someone utilizing an unknown ('0-day') security vulnerability." By the time the advisory went public, at least four downstream companies had customer data taken through instances they ran themselves.

10.0CVSS v3.1 scoreAV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
CWE-89SQL Injectionunauthenticated, network-reachable
10.4%EPSS score95.3rd percentile
Aug 14, 2026CISA KEV federal deadlineadded to KEV Aug 11, 2026

How the SQL injection worked

The vulnerable route is /api/session/reset_password, part of Metabase's password-reset flow — reachable without authentication by design, since a locked-out user has no session yet. Metabase's advisory (GHSA-vwf4-m7j8-wcjf) confirms the endpoint failed to properly sanitize input before it reached the application database, letting an attacker inject SQL directly. From there, the advisory states an attacker could "change the application configuration, steal stored credentials for the connected databases, read any data accessible through those connections, and export data." Metabase instances routinely hold live connection strings for Snowflake, BigQuery, Redshift, Databricks, Postgres and Mongo warehouses — so admin access to Metabase itself is a springboard into whatever it was built to visualize.

From an anonymous POST to a downstream database breach

  1. Unauthenticated POST /api/session/reset_password — No credentials or session required — the endpoint is reachable by design
  2. SQL injection into application DB — CWE-89: input reaches the query unsanitized
  3. Admin session established
  4. GET /api/user/current returns 200 — Metabase's own IoC — confirms the session works
  5. Read connected-database credentials
  6. Pivot into customer data warehouse

It wasn't the only critical bug in that disclosure

Metabase shipped three CVEs in the same advisory batch on August 10, 2026 — and the one everyone is patching for wasn't the only maximum-severity one.

CVECVSSCWEReachable byIn CISA KEV?EPSS
CVE-2026-7289810.0 CriticalCWE-89 SQL InjectionUnauthenticated — password-reset endpointYes (added 2026-08-11)0.104 / 95.3rd pct
CVE-2026-7289910.0 CriticalCWE-89 SQL InjectionUnauthenticated — public shared card/dashboard field-filter paramNo0.006 / 44.1st pct
CVE-2026-729006.5 MediumCWE-862 Missing AuthorizationAuthenticated, low-privileged userNo0.003 / 22.5th pct

Four companies, one vendor, one bad week

None of the affected companies had a vulnerable application of their own — they had a vulnerable analytics vendor. Each ran a self-hosted or Cloud-hosted Metabase instance to build internal dashboards, and each lost customer data through it.

Disclosure timeline

  1. Kilo Code's Slackbot compromised
    A subset of users had Slack access tokens exposed via Kilo's Metabase-connected bot; tokens were later invalidated. (TheHackerNews)
  2. Framework and Tally instances accessed
    Attackers accessed Framework's Metabase instance and Tally's Metabase analytics environment the same day. (BleepingComputer)
  3. Metabase discloses the 0-day, patches ship
    CEO Sameer Al-Sakran confirms Metabase Cloud was hit by an unknown vulnerability; GHSA-vwf4-m7j8-wcjf published; Cloud instances auto-patched.
  4. Framework and Tally breach details reported
  5. n8n discloses its incident
    136 customer records (names/emails) accessed; 5 included bcrypt-hashed passwords. (TheHackerNews)
  6. CVE-2026-72898 (and siblings) published to NVD
  7. CISA adds CVE-2026-72898 to the KEV catalog
    Federal civilian agencies given a 3-day remediation window.
  8. CISA KEV remediation deadline (today)
CompanyWhat was exposed
Framework (laptop maker)Customer names, emails, physical addresses, phone numbers, login IPs; business customers also had company name, VAT/EIN and billing email exposed. No payment or order data.
Tally (form builder)User email addresses and password hashes. Company said forms and submitted answers were unaffected — stored in a separate system.
n8n (workflow automation)136 customer records (names/emails); 5 of those included bcrypt-hashed passwords.
Kilo Code (AI coding agent)Slack access tokens for a subset of users via its Metabase-connected Slackbot; tokens invalidated after discovery.

Who's affected, and the fix

BranchVulnerable rangeFixed in
0.58 / 1.58x.58.0 – x.58.23x.58.24
0.59 / 1.59x.59.0 – x.59.20x.59.21
0.60 / 1.60x.60.0 – x.60.16x.60.17
0.61 / 1.61x.61.0 – x.61.10x.61.11
0.62 / 1.62x.62.0 – x.62.8x.62.9
0.63 / 1.63x.63.0 – x.63.3x.63.5

Every branch from 0.58 through 0.63 (and the corresponding Enterprise 1.x line) is covered — both OSS and Enterprise editions got fixes for each. Metabase Cloud customers were patched automatically; self-hosted deployments are only fixed once an admin upgrades.

If your reset-password endpoint was ever exposed

  1. Upgrade to the fixed release for your branch (58.24 / 59.21 / 60.17 / 61.11 / 62.9 / 63.5).
  2. Revoke active sessions by clearing the core_session table in the application database.
  3. Audit API keys and remove any you don't recognize.
  4. Review admin accounts for unauthorized changes.
  5. Rotate credentials for every database or warehouse connected to the instance.
  6. Check downstream data-warehouse logs and Metabase's own query history for signs of unauthorized reads or exports.

Metabase's second CVSS-10, KEV-listed bug

This isn't the first time a maximum-severity, actively-exploited Metabase flaw has landed in CISA's KEV catalog. CVE-2021-41277 — an unvalidated GeoJSON map URL that exposed local files and environment variables — also scored a 10.0 and also made KEV, with an EPSS of 97.2% (99.9th percentile) at the time. Five years apart, same lesson: a self-hosted BI tool sitting on your network with database credentials attached is a high-value target the moment it's reachable from the internet.

Two CVSS-10 Metabase bugs, five years apart

CVE-2021-41277
  • Custom GeoJSON map URL not validated
  • Local file inclusion, including environment variables
  • Fixed in 0.40.5 / 1.40.5
  • EPSS 97.2% (99.9th pct) at time of KEV listing
CVE-2026-72898
  • Password-reset endpoint SQL injection
  • Full admin access to connected database credentials
  • Fixed in 58.24–63.5 depending on branch
  • EPSS 10.4% (95.3th pct) despite confirmed active exploitation

Data as of 2026-08-14live record →