A business intelligence platform is supposed to make data easier to reach. That same convenience becomes the danger when the platform itself is compromised. On August 6, 2026, Metabase disclosed that attackers had exploited a previously unknown SQL injection flaw against Metabase Cloud. The vulnerability affects major versions 58 and later, can be reached without authentication, and can turn a password-reset request into administrator access [Metabase Security Update].
For an SMB leader, the central issue is not the phrase “SQL injection.” It is the authority behind the Metabase connection. A compromised BI administrator can potentially change application settings, obtain stored credentials for connected databases, query the business data those credentials can reach, and export results. Metabase confirmed active exploitation and assigned the advisory a maximum CVSS score of 10.0 [Metabase GitHub Advisory]. This checklist explains how to verify ownership, patch the right point release, preserve evidence, review activity, rotate access, and decide whether the Metabase server should be isolated.
⚠ Active zero-day exploitation
Metabase Cloud has been patched by the vendor. Self-hosted operators running affected builds must upgrade immediately. As of August 10, 2026, the flaw has no assigned CVE identifier; the authoritative identifier is GHSA-vwf4-m7j8-wcjf. Do not delay action while waiting for a CVE.
Immediate executive checklist
- Identify the deployment owner: Metabase Cloud, your internal team, an MSP, or another hosting provider.
- Record the exact edition and build: OSS uses a
v0prefix; Pro and Enterprise usev1. - Upgrade to Metabase’s designated safe point release for your major version, not merely the next available build.
- Preserve logs and a defensible application-database snapshot before deleting sessions or rebuilding, when operationally feasible.
- Review sessions, API keys, administrator accounts, queries, downloads, ingress activity, and warehouse access.
- Rotate every connected database credential if exposure is suspected or confirmed, then invalidate the prior credentials.
- Restrict or isolate the instance when evidence indicates ongoing access or the server can no longer be trusted.
In this article
How Does the Reset-Password Attack Become a Business-Data Incident?
The vulnerable route is the unauthenticated POST /api/session/reset_password endpoint. At a business level, an attacker sends crafted reset input that Metabase mishandles as SQL against its own application database. The attacker can then obtain administrator-level control of the Metabase instance without first possessing a valid user account.
The initial injection targets the Metabase application database, not the connected warehouse directly. That distinction matters, but it does not reduce the potential impact. The application database contains the identities, sessions, configuration, connection definitions, and other control information Metabase needs to operate. Once the attacker becomes an administrator, the BI platform becomes a bridge into whatever its database connections are authorized to see.
Potential blast-radius path
Public reset route
Crafted unauthenticated request
Application database
SQL injection reaches control data
Metabase admin
Settings, accounts, keys, and queries
Connected data
Credentials, warehouse access, and exports
The compromise follows the authority granted to the BI platform, not the visual boundaries of a dashboard.
Metabase’s advisory says an attacker could change application configuration, steal stored database credentials, read data accessible through those connections, and export it [Metabase GitHub Advisory]. Even where credentials are encrypted at rest, the running application must be able to use them. Control of the application can therefore be more important than possession of the raw database file.
That is why least privilege is decisive. A read-only warehouse account limited to curated reporting schemas creates a smaller incident than a shared database owner credential with access across production. A well-designed BI connection should not create tables, alter roles, reach unrelated databases, or use an identity shared with ETL jobs and administrators. If it does, the Metabase incident is also a database-governance finding.
Who Owns the Response: Metabase Cloud or Self-Hosted?
Metabase says its Cloud instances were upgraded and patched by the vendor. A self-hosted instance—including Metabase running in your own AWS, Azure, colocation, or MSP-managed virtual machine—remains the operator’s responsibility. “It is in the cloud” does not necessarily mean it is Metabase Cloud.
| Deployment model | Patch owner | Customer actions |
|---|---|---|
| Metabase Cloud | Metabase | Confirm tenant status and review credentials, accounts, keys, and data access if notified or exposed. |
| Self-hosted internally | Your IT or security team | Patch, preserve evidence, investigate, contain, rotate, and validate recovery. |
| Self-hosted by an MSP or cloud provider | Defined by contract and operating model | Obtain written proof of build, exposure window, log preservation, investigation scope, and credential ownership. |
Cloud patch ownership does not transfer your incident-response obligations. Your business still owns the connected warehouse accounts, the sensitivity of the data, regulatory decisions, and downstream password or secret rotation. Ask for an instance-specific timeline, the evidence reviewed, any attacker activity associated with your tenant, and the exact time protection was applied.
For self-hosted environments, establish a named technical owner and an executive decision-maker. If responsibility is shared with an MSP, a disciplined managed IT services operating model should make patch ownership, log retention, and emergency containment explicit before a zero-day occurs.
Which Metabase Versions Require an Immediate Upgrade?
Metabase major versions 58 through 63 require the designated fixed point release or later. The open-source edition uses the v0 prefix, while Pro and Enterprise use v1. Metabase states that versions below major 58 are not affected by this specific vulnerability, but downgrading is not a safe workaround and may reintroduce other security defects.
| Major train | Minimum safe OSS build | Minimum safe Pro/Enterprise build |
|---|---|---|
| 58 | v0.58.24 | v1.58.24 |
| 59 | v0.59.21 | v1.59.21 |
| 60 | v0.60.17 | v1.60.17 |
| 61 | v0.61.11 | v1.61.11 |
| 62 | v0.62.9 | v1.62.9 |
| 63 | v0.63.5 | v1.63.5 |
Use the designated safe build:
Do not infer that a build immediately below the table is safe. The advisory’s structured affected-version ranges contain apparent gaps, while Metabase’s explicit remediation table names the releases above. Follow the explicit minimum-safe list and verify the running build after restart.
Before upgrading a self-hosted instance, preserve the Metabase application database and configuration using your established backup procedure. Validate the backup, record the existing build and deployment artifacts, stage the matching point release, and verify the reported version after the service returns. Do not use an unpinned “latest” container tag as proof that the patched image is running.
What Do Framework, Tally, and n8n Show About the Blast Radius?
The disclosures show three different forms of the same architectural risk: an analytics or automation platform often sits between many users and many systems. Compromise the hub, and the practical blast radius is defined by the data and credentials connected to it.
Framework: ordinary customer records become actionable data
Framework told customers that an attacker accessed information through its Metabase environment. Reporting based on the company’s notification lists names, email addresses, login IP addresses, billing and shipping addresses, phone numbers, company names, and certain business-account identifiers [BleepingComputer]. That is not a database password leak to the affected consumer, but it demonstrates the downstream result of a BI connection that can reach customer data.
The business consequence extends beyond confidentiality. Accurate addresses, phone numbers, company affiliations, and a person’s relationship with Framework can make later phishing and impersonation more convincing. Incident response should therefore include fraud, privacy, legal, customer-support, and communications owners—not only the database administrator.
Tally: separation limited the exposed dataset
Tally said the attacker reached email addresses and cryptographic password hashes in its Metabase analytics environment, while forms and submitted answers were stored separately and were not reached [BleepingComputer]. That separation is a useful control lesson: keeping especially sensitive datasets outside the BI platform’s reachable scope can materially limit an incident.
A password hash is not the same as a plaintext password, but it is still security-sensitive. Its risk depends on the hashing algorithm, configuration, password strength, and reuse. Affected users may need password-reset and anti-phishing guidance, while the company verifies whether the hashes were appropriately salted and computationally resistant.
n8n: direct access can still leave record-level uncertainty
n8n published a first-party update on August 8 after learning that an unauthorized party had queried data available through its internal Metabase environment. n8n confirmed access to 136 records containing names and email addresses across its self-hosted and Cloud user population. Five of those records contained bcrypt-hashed passwords for n8n Cloud accounts; n8n said self-hosted passwords are never shared with the company [n8n].
The disclosure also shows why incident scoping can remain uncertain even with query evidence. n8n said the malicious queries returned a variable, nondeterministic set of rows each time, so it could not identify the specific records accessed. Its investigation separately found a previously fixed historical bug that had stored a small number of Cloud passwords in plaintext. n8n considered access to those records unlikely but contacted 25 account holders as a precaution; that does not mean 25 plaintext passwords were confirmed stolen.
Together, the examples show that BI risk follows reachable data and architectural separation. Framework’s environment exposed broad customer contact and address data. Tally’s separated form-response storage limited the confirmed scope. n8n confirmed a queried set of 136 records but could not identify every affected person. The defensible design is to limit analytics platforms to narrowly scoped identities and datasets, isolate trust boundaries, and retain enough telemetry to reconstruct queries.
Metabase Credential-Exposure Review Checklist
Patching stops new exploitation of this flaw; it does not revoke an attacker’s session, erase an unauthorized administrator, invalidate a copied database password, or explain which records were queried. Treat remediation and investigation as parallel workstreams.
1. Preserve evidence before changing the record
Export Metabase application logs, reverse-proxy or load-balancer logs, WAF records, identity-provider events, application-database backups, container or VM metadata, and warehouse audit logs to storage the suspected instance cannot alter. Record time zones and clock drift. Preserve original files and calculate hashes where your incident-response process supports it.
Metabase instructs operators to revoke all active sessions by deleting the rows in the application database’s core_session table. That is an important containment step, but it changes evidence. Where the threat is not actively moving, capture a defensible application-database snapshot first. Where active data theft is occurring, containment takes priority; document what was changed and when. CISA’s incident-response playbook similarly emphasizes containment, forensic preservation, credential rotation, and monitoring for an attacker’s reaction [CISA].
2. Review and revoke sessions
- Revoke all Metabase sessions using the vendor-prescribed process after preserving evidence where feasible.
- Correlate recent sign-ins with identity-provider, VPN, proxy, and endpoint records.
- Investigate sessions outside normal geographies, networks, devices, or working hours.
- Do not assume a password change alone terminates every existing session.
3. Inspect administrator accounts and authentication settings
- Export the current user and administrator list; compare it with a known-good roster and HR or identity records.
- Look for new admins, reactivated users, changed email addresses, group changes, or unexpected password resets.
- Review SSO, LDAP, email, embedding, and authentication configuration for changes that could preserve access.
- Verify that break-glass accounts are known, protected, and not shared.
4. Inventory API keys and machine access
Metabase API keys inherit the permissions of their assigned group. Review each key’s name, group, intended integration, owner, creation context, and last known use. Delete unknown keys, regenerate required keys, and confirm the old value no longer works. Pay special attention to keys assigned to an administrative or broadly privileged group. Metabase also warns that deleting a group can reassign its API keys to the All Users group, so check for orphaned keys after group changes [Metabase API Key Documentation].
Search CI/CD variables, scripts, command histories, orchestration platforms, and documentation for copies of rotated keys. Updating Metabase without updating every legitimate consumer can cause outages; leaving an old key active to avoid that outage defeats the rotation.
5. Review Metabase activity, queries, and downloads
Examine saved questions, native SQL, dashboard activity, revisions, downloads, subscriptions, alerts, public links, and exports during the exposure window. Focus on broad enumeration queries, unusually large result sets, access to sensitive tables, off-hours activity, and queries inconsistent with the named user’s role.
Pro and Enterprise Usage Analytics can provide Activity and Query logs, including the user, database, query source, execution time, rows returned, IP address, user agent, and authentication method where available. Metabase documents a default retention period of 720 days for usage data. Open Source and Cloud Starter do not collect the same Activity and View data, so application, ingress, identity, and warehouse logs become essential [Metabase Usage Analytics]. Absence of a convenient dashboard is not evidence of absence.
6. Hunt the vendor-published ingress pattern
Published compromise pattern
Look for a POST /api/session/reset_password request returning 400, followed by a GET /api/user/current request returning 200.
Metabase says finding this sequence in application or ingress logs likely means the instance was compromised. Correlate by source, session, headers, and time where telemetry permits; a lone reset error is not the full published pattern.
Search beyond a single IP address. Review forwarded headers carefully, account for proxies, and preserve the raw request chain. Identify the earliest occurrence, the last suspicious activity, and what followed it. A managed detection and response team can help correlate ingress events with server, identity, network, and database telemetry without treating one log source as complete.
7. Validate data warehouse and database activity
- Identify every database connection configured in Metabase and the exact principal each connection uses.
- Pull warehouse authentication, query, export, and network logs for the full exposure window plus a safety margin.
- Flag new source addresses, unusual client metadata, broad table discovery, sensitive-schema access, bulk reads, or queries outside established workloads.
- Compare warehouse activity with Metabase query history; unexplained database activity may indicate direct use of stolen credentials.
- Confirm whether the same credential is reused by ETL jobs, applications, administrators, or another BI tool.
Do not limit review to personally identifiable information. Reachable business data can include pricing, contracts, payroll, customer health information, financial forecasts, support records, product roadmaps, and operational metrics. Scope the incident by what the credential could access, what logs show it accessed, and what evidence is missing.
How Should Connected Credentials Be Rotated?
Rotate from the outside in: first contain attacker access to Metabase, then issue new narrowly scoped database credentials, update the patched instance, validate connectivity, and revoke the previous identities. If you revoke first without a tested replacement, reporting may fail. If you create replacements but leave the old credentials valid, the attacker’s access may continue.
- Build the dependency map. List each Metabase database, warehouse, API key, SSO secret, email credential, embedding secret, and automation dependency.
- Create separate replacement identities. Do not reuse the old username with only a new password when a new service identity improves traceability.
- Reduce privileges before reconnecting. Restrict schemas, tables, network sources, query capabilities, and administrative rights to the minimum reporting requirement.
- Update and test the patched instance. Validate key dashboards and scheduled jobs using the replacement identity.
- Disable the old credential. Confirm rejected authentication in database logs and monitor for attempts to use it.
- Rotate related secrets where scope requires it. Include privileged Metabase passwords, API keys, SSO or embedding secrets, and credentials exposed by reuse or shared storage when evidence shows they were reachable.
For human administrator passwords and shared emergency credentials, ITECS can help establish controlled storage and rotation as an authorized 1Password reseller and managed services partner. That complements—not replaces—database-native service identities, least privilege, MFA through SSO, and secrets-management controls.
When Should You Block the Endpoint or Isolate the Metabase Server?
Block /api/session/reset_password when a self-hosted instance cannot be upgraded immediately. Metabase presents this as a temporary workaround. It will disrupt password-reset functionality, does not remove prior compromise, and does not invalidate sessions or credentials already obtained. Keep the block until the fixed build is installed and verified.
A temporary endpoint block is appropriate when the server remains otherwise trusted, the vulnerable route can be reliably denied at every ingress path, and an immediate upgrade is being staged. A broader network restriction—such as limiting the administrative application to a VPN or trusted management network—is also prudent, but it is not a substitute for the patch.
| Evidence or condition | Recommended containment level |
|---|---|
| Affected build, no suspicious evidence, patch delayed briefly | Block the reset endpoint, restrict ingress, preserve logs, and patch urgently. |
| Published 400-to-200 attack pattern appears | Treat as likely compromise; revoke sessions, restrict access, rotate credentials, and begin incident response. |
| Unknown admin or API key, malicious queries, unexplained exports, or active unauthorized sessions | Isolate the application from users and downstream data while preserving forensic access. |
| Server integrity is uncertain or attacker activity continues after containment | Hard-isolate the server, block its database paths, and recover from a known-good build under incident-response direction. |
Isolation should be a deliberate incident-response action, not an improvised shutdown. Preserve volatile and durable evidence when feasible, maintain a controlled forensic path, notify database and business owners, and document the time and scope of each containment change. If active exfiltration is suspected, stopping access outweighs dashboard availability.
If you have the vendor pattern, an unknown administrator, unexpected exports, or no reliable logs to establish scope, contact an incident-response team through ITECS’ active breach response channel. Do not let an affected server continue querying sensitive systems merely because leadership reports depend on it.
The Long-Term Fix Is a Smaller BI Trust Boundary
This zero-day is urgent, but the durable finding is architectural. BI platforms should be treated like privileged data infrastructure: private administrative access, prompt point-release patching, SSO and MFA, short sessions, separate API identities, external log retention, narrowly scoped warehouse roles, and tested emergency isolation.
Run a quarterly inventory of every connected dataset and credential. Ask whether the reporting use case still exists, whether the account is read-only, whether access is limited to approved schemas, and whether another business process shares the same secret. Test that your team can revoke sessions, block an endpoint, rotate a warehouse account, and keep essential reporting available without guessing under pressure.
Can you prove what your BI platform can reach?
ITECS can assess your exposed services, connected identities, logging coverage, and incident containment plan before a compromised analytics account becomes a business-data breach.
Start a cybersecurity assessment →Related ITECS resources
Sources
- Metabase — Security update available for Metabase
- Metabase GitHub Advisory — GHSA-vwf4-m7j8-wcjf
- Metabase Documentation — API keys
- Metabase Documentation — Usage analytics
- Metabase Documentation — Usage analytics reference
- BleepingComputer — Metabase SQLi zero-day exploited in customer data theft attacks
- n8n — Metabase security incident update
- CISA — Cybersecurity Incident and Vulnerability Response Playbooks
