Metabase SQL Injection Under Active Exploitation
Unauthenticated Administrator Takeover, Connected-Database Credential Risk, and Required Post-Upgrade Investigation
- Field
- User Topic
- Value
- A newly disclosed, critical Metabase SQL-injection vulnerability in /api/session/reset_password that Metabase says is under active exploitation.
- Field
- Interpreted Questions
- Value
- What is confirmed, which releases need action, how could compromise cross from Metabase into connected data stores, what evidence should owners preserve, and what can defenders conclude without public actor or IOC reporting?
- Field
- Initial Observations
- Value
- Metabase says its Cloud service was attacked through this previously unknown flaw, confirms active exploitation, and publishes a high-value likely-compromise sequence: POST /api/session/reset_password returning HTTP 400 followed by GET /api/user/current returning HTTP 200. The flaw can yield Metabase administrator access and expose credentials and data reachable through connected databases. Framework and Tally disclosed data impacts in notices reported by BleepingComputer; LexisNexis disclosed a related third-party disruption but had not confirmed data exposure. No CVE, actor identity, attacker infrastructure, malware artifact, or authoritative victim count is public.1, 11, 12
- Field
- Source Coverage
- Value
- Tier
- Tier 0 - Most Trusted
- Checked
- 3
- Candidate Hits
- 2
- Planner Selected
- 2
- Not Used
- 1
- Tier
- Tier 1 - Authoritative
- Checked
- 5
- Candidate Hits
- 5
- Planner Selected
- 5
- Not Used
- 0
- Tier
- Tier 2 - High-Value Research
- Checked
- 6
- Candidate Hits
- 3
- Planner Selected
- 0
- Not Used
- 6
- Tier
- Tier 3 - Corroborating News
- Checked
- 4
- Candidate Hits
- 4
- Planner Selected
- 1
- Not Used
- 3
- Tier
- Tier 4 - Community Signal
- Checked
- 3
- Candidate Hits
- 0
- Planner Selected
- 0
- Not Used
- 3
- Tier
- Tier 5 - Custom Source
- Checked
- 0
- Candidate Hits
- 0
- Planner Selected
- 0
- Not Used
- 0
- Tier
- Tier 6 - Custom Integrations with API/Keys
- Checked
- 0
- Candidate Hits
- 0
- Planner Selected
- 0
- Not Used
- 0
- Tier
- Tier 7 - Inner Discovery
- Checked
- 4
- Candidate Hits
- 0
- Planner Selected
- 0
- Not Used
- 4
- Tier
- Tier 8 - Expansion Research / AI Agent Delta
- Checked
- 4
- Candidate Hits
- 4
- Planner Selected
- 4
- Not Used
- 0
- Tier
- Total
- Checked
- 29
- Candidate Hits
- 19
- Planner Selected
- 12
- Not Used
- 17
Tier Checked Candidate Hits Planner Selected Not Used Tier 0 - Most Trusted 3 2 2 1 Tier 1 - Authoritative 5 5 5 0 Tier 2 - High-Value Research 6 3 0 6 Tier 3 - Corroborating News 4 4 1 3 Tier 4 - Community Signal 3 0 0 3 Tier 5 - Custom Source 0 0 0 0 Tier 6 - Custom Integrations with API/Keys 0 0 0 0 Tier 7 - Inner Discovery 4 0 0 4 Tier 8 - Expansion Research / AI Agent Delta 4 4 4 0 Total 29 19 12 17
| Field | Value | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| User Topic | A newly disclosed, critical Metabase SQL-injection vulnerability in /api/session/reset_password that Metabase says is under active exploitation. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Interpreted Questions | What is confirmed, which releases need action, how could compromise cross from Metabase into connected data stores, what evidence should owners preserve, and what can defenders conclude without public actor or IOC reporting? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Initial Observations | Metabase says its Cloud service was attacked through this previously unknown flaw, confirms active exploitation, and publishes a high-value likely-compromise sequence: POST /api/session/reset_password returning HTTP 400 followed by GET /api/user/current returning HTTP 200. The flaw can yield Metabase administrator access and expose credentials and data reachable through connected databases. Framework and Tally disclosed data impacts in notices reported by BleepingComputer; LexisNexis disclosed a related third-party disruption but had not confirmed data exposure. No CVE, actor identity, attacker infrastructure, malware artifact, or authoritative victim count is public.1, 11, 12 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Source Coverage |
|
This is a zero-day exploitation and data-access incident, not merely a high-scoring vulnerability announcement. The decisive questions are whether a Metabase instance ran an affected release, whether the reset-password endpoint was reachable, whether the vendor-published request sequence appears, and which downstream credentials and datasets Metabase could access.1, 11, 12
Vendor Severity
10.0
Critical CVSS v3.1; AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H.
Exploit Status
Active
Metabase confirms active exploitation in the public advisory.
Fixed Families
6
Named fixes for x.58, x.59, x.60, x.61, x.62, and x.63.
Cloud Incident
Confirmed
Metabase says its Cloud service was attacked and Cloud instances were patched.
Likely-Compromise Pattern
400 → 200
POST reset_password HTTP 400 followed by GET user/current HTTP 200.
Use this snapshot to move from fleet exposure to incident classification without waiting for an IP or hash blocklist.
- Decision Dimension
- Incident status
- What Is Confirmed
- Metabase Cloud was attacked through an unknown vulnerability; the vendor confirms active exploitation.
- Defender Decision
- Treat affected, reachable self-hosted instances as P0 incident-triage candidates.
- Decision Dimension
- Entry path
- What Is Confirmed
- Unauthenticated SQL injection through /api/session/reset_password into the application database.
- Defender Decision
- Block only as temporary containment; upgrade to the named safe release.
- Decision Dimension
- Likely-compromise signal
- What Is Confirmed
- POST /api/session/reset_password → HTTP 400, followed by GET /api/user/current → HTTP 200.
- Defender Decision
- If temporally correlated in ingress or application logs, declare likely compromise and expand scoping immediately.
- Evidence Boundary
- A lone request to either endpoint is weaker evidence than the ordered pair.11
- Decision Dimension
- Blast radius
- What Is Confirmed
- Administrator access can expose configuration, connected-database credentials, reachable data, and export capability.
- Defender Decision
- Rotate every connected-database credential and review downstream authentication, queries, and exports.
- Decision Dimension
- Safe-version floor
- What Is Confirmed
- 0.58.24 / 0.59.21 / 0.60.17 / 0.61.11 / 0.62.9 / 0.63.5.
- Defender Decision
- Install the applicable release or later and prove the running version after restart.
- Decision Dimension
- Observed impact
- What Is Confirmed
- Framework and Tally disclosed data exposure; LexisNexis disclosed a third-party-system disruption under investigation.
- Defender Decision
- Use these cases to scope comparable customer, identity, address, password-hash, and business-data exposure.
- Evidence Boundary
- These disclosures do not establish total victim count, common actor, or identical data impact.12
| Decision Dimension | What Is Confirmed | Defender Decision | Evidence Boundary |
|---|---|---|---|
| Incident status | Metabase Cloud was attacked through an unknown vulnerability; the vendor confirms active exploitation. | Treat affected, reachable self-hosted instances as P0 incident-triage candidates. | Global exploitation does not prove compromise of every exposed instance.1, 11 |
| Entry path | Unauthenticated SQL injection through /api/session/reset_password into the application database. | Block only as temporary containment; upgrade to the named safe release. | The vendor does not publish exploit payloads or attacker infrastructure.1, 11 |
| Likely-compromise signal | POST /api/session/reset_password → HTTP 400, followed by GET /api/user/current → HTTP 200. | If temporally correlated in ingress or application logs, declare likely compromise and expand scoping immediately. | A lone request to either endpoint is weaker evidence than the ordered pair.11 |
| Blast radius | Administrator access can expose configuration, connected-database credentials, reachable data, and export capability. | Rotate every connected-database credential and review downstream authentication, queries, and exports. | Potential capability must be distinguished from locally verified access or theft.1, 11 |
| Safe-version floor | 0.58.24 / 0.59.21 / 0.60.17 / 0.61.11 / 0.62.9 / 0.63.5. | Install the applicable release or later and prove the running version after restart. | Metabase says releases below 58 are not affected; do not infer safety from gaps in the GHSA display.1, 11 |
| Observed impact | Framework and Tally disclosed data exposure; LexisNexis disclosed a third-party-system disruption under investigation. | Use these cases to scope comparable customer, identity, address, password-hash, and business-data exposure. | These disclosures do not establish total victim count, common actor, or identical data impact.12 |
On August 6, 2026, Metabase published GHSA-vwf4-m7j8-wcjf and instructed customers to upgrade as soon as possible. The advisory assigns CVSS 10.0 and describes a network-reachable, low-complexity, unauthenticated path with no user interaction.1
The vulnerable reset-password endpoint can be used to inject arbitrary SQL into the application database. That database holds Metabase operational state and security-relevant configuration; vendor-stated consequences begin with administrator access and can extend to connected databases through credentials and permissions entrusted to Metabase.1, 3
This is not closed by installing a patch alone when the endpoint was publicly reachable. The vendor specifically calls for session revocation, API-key and administrator review, connected-database credential rotation, and inspection of warehouse logs plus Metabase activity and query history after upgrade.1, 2, 4
The vendor gives defenders an unusually specific likely-compromise test: correlate a POST to /api/session/reset_password returning HTTP 400 with a subsequent GET to /api/user/current returning HTTP 200. Finding the ordered pair in application or ingress logs should move the case from exposure management into incident response.11
Attributed notifications from Framework and Tally describe theft of customer or user data after August 3 Metabase compromises. LexisNexis described disruption involving third-party-hosted systems but had not confirmed data exposure at the reporting cutoff. These cases prove real impact while requiring organization-specific boundaries.12
The public record confirms exploitation in the wild but does not establish compromise of any particular organization. No public attacker infrastructure, malware artifact, payload, actor name, victim list, or exploitation start date is supplied by the controlling source.1
The same event creates different decisions for each audience. Assign each row to an accountable owner.
- Audience
- Executives / risk
- What They Need to Know
- Potential cross-database blast radius and service/business exposure.
- Required Decision / Output
- Set P0 ownership, reporting cadence, risk acceptance threshold, and escalation path.1
- Audience
- Metabase / platform owner
- What They Need to Know
- Exact build, edition, deployment, endpoint reachability, ingress controls, and maintenance path.
- Audience
- Database / data owner
- What They Need to Know
- Every connected data source, stored credential, privilege, and sensitive dataset.
- Required Decision / Output
- Rotate secrets, reduce privilege, and review authentication/query evidence.1
- Audience
- SOC / incident response
- What They Need to Know
- Endpoint, session, administrator, key, query, export, and downstream database evidence.
- Audience
- MSP / cyber insurer
- What They Need to Know
- Customer-by-customer version, reachability, privilege, data sensitivity, and logging posture.
- Required Decision / Output
- Prioritize outreach and separate vulnerable assets from verified incidents.1
- Audience
- Legal / privacy / communications
- What They Need to Know
- Verified access, credential use, data objects, exports, affected records, and confidence limits.
- Required Decision / Output
- Make notification and external-statement decisions from evidence, not vulnerability presence alone.1
| Audience | What They Need to Know | Required Decision / Output |
|---|---|---|
| Executives / risk | Potential cross-database blast radius and service/business exposure. | Set P0 ownership, reporting cadence, risk acceptance threshold, and escalation path.1 |
| Metabase / platform owner | Exact build, edition, deployment, endpoint reachability, ingress controls, and maintenance path. | Contain, back up, upgrade, verify, and supply auditable evidence.1, 2, 3 |
| Database / data owner | Every connected data source, stored credential, privilege, and sensitive dataset. | Rotate secrets, reduce privilege, and review authentication/query evidence.1 |
| SOC / incident response | Endpoint, session, administrator, key, query, export, and downstream database evidence. | Determine exposed, suspected, or confirmed-compromise state and scope the timeline.1, 4 |
| MSP / cyber insurer | Customer-by-customer version, reachability, privilege, data sensitivity, and logging posture. | Prioritize outreach and separate vulnerable assets from verified incidents.1 |
| Legal / privacy / communications | Verified access, credential use, data objects, exports, affected records, and confidence limits. | Make notification and external-statement decisions from evidence, not vulnerability presence alone.1 |
- This is an exploited zero-day with demonstrated data impact: Metabase confirms its Cloud service was attacked, and attributed notices document Framework customer-data theft and Tally email/password-hash exposure. Treat reachable affected self-hosted instances as P0 incident-triage candidates—not routine patch tickets.1, 11, 12
- Hunt the vendor-published compromise sequence immediately: Correlate POST /api/session/reset_password returning HTTP 400 with a following GET /api/user/current returning HTTP 200. Metabase says this ordered pattern in application or ingress logs means the instance is likely compromised.11
- Patch to the named release floor and prove the running build: Use 0.58.24, 0.59.21, 0.60.17, 0.61.11, 0.62.9, 0.63.5, or later in the applicable family. Metabase says versions below 58 are not affected; validate edition and runtime rather than relying on package inventory alone.1, 2, 11
- Blocking the endpoint is containment, not closure: If immediate upgrade is impossible, block /api/session/reset_password at every ingress layer and validate externally. Blocking neither repairs the vulnerable code nor determines whether pre-block exploitation succeeded.1, 11
- Assume the blast radius follows every Metabase-held credential: After upgrade, revoke sessions, remove unrecognized API keys, review administrators, rotate all connected-database credentials, and inspect warehouse authentication, queries, Metabase activity, and exports. Broad/shared service accounts deserve first priority.1, 3, 4, 11
- Separate exposure, likely compromise, and confirmed impact: Affected plus reachable is exposure; the ordered request pattern is vendor-described likely compromise; unauthorized identities, credential use, queries, exports, or victim records define confirmed scope. No public actor or infrastructure IOC set is available.1, 11, 12
Research and scoping note
For U.S. SMBs and MSPs, the highest-risk pattern is an externally reachable Metabase instance connected to production, customer, financial, insurance, or operational data using broad/shared credentials. Owners should report four facts quickly: running version, historical endpoint reachability, credential privilege, and whether relevant telemetry was retained.1, 3, 11, 12
Metabase's August 6 disclosures establish both a critical vulnerability and an actual incident. The company says Metabase Cloud was attacked through a previously unknown flaw affecting versions 1.58 and above, blocked the abused endpoints, patched Cloud, and published emergency guidance for self-hosted customers. The associated GHSA rates the unauthenticated SQL injection CVSS 10.0 and confirms active exploitation.1, 11
The vulnerable surface is POST /api/session/reset_password. An unauthenticated remote attacker can inject arbitrary SQL into the Metabase application database and obtain administrator-level control. That is a trust-boundary failure: the attacker begins at a public API and may end with control of the BI application and access to secrets that connect it to higher-value databases.1, 11
Metabase published a concrete detection sequence that materially changes triage quality: a POST to /api/session/reset_password returning HTTP 400 followed by a GET to /api/user/current returning HTTP 200. The vendor says finding this pattern in Metabase application or server-ingress logs means the instance is likely compromised. Defenders should preserve timestamps, request identifiers, source addresses, headers, response sizes, and surrounding requests before remediation destroys context.11
The risk is larger than a dashboard outage. Administrator control may enable configuration changes, while the application's trusted connections may expose credentials and data in downstream databases. The advisory identifies credential theft, reading data reachable through those connections, and data export as potential consequences; each requires local validation before it is reported as an observed impact.1, 3
Metabase names fixed versions x.58.24, x.59.21, x.60.17, x.61.11, x.62.9, and x.63.5. The GHSA's machine-readable affected ranges contain visible gaps immediately below several named fixes. Because the vendor does not call those intervening builds safe, IntelliOS uses the named fixed release—or a later supported release—as the operational threshold.1, 2
The temporary workaround is to block /api/session/reset_password. Durable remediation is an upgrade. For publicly accessible instances, the vendor then directs customers to revoke all sessions by deleting core_session rows, review and remove unexpected API keys, review administrator accounts, rotate connected-database credentials, and inspect both data-warehouse and Metabase histories.1, 2, 3, 4
The public impact record is no longer empty. BleepingComputer reports that Framework notified customers that attackers accessed its Metabase instance on August 3 and stole names, email addresses, login IPs, billing and shipping addresses, phone numbers, company information, and—in some business records—VAT, EIN, and billing email data. Tally reportedly disclosed that its Metabase analytics environment was compromised on August 3 and exposed email addresses and cryptographic password hashes, while stating that form content and submissions were stored separately and were not reached.12
BleepingComputer also reports that LexisNexis disconnected third-party-hosted systems after unusual activity disrupted Diligence, Metabase API, and Newsdesk. LexisNexis had not confirmed customer-data exposure at the reporting cutoff. This row matters to SMBs and insurers because it demonstrates the third-party and service-availability dimension without overstating a verified Metabase data breach at LexisNexis.12
For U.S. SMB and MSP portfolios, priority should be driven by four multipliers: internet reachability, affected version, privilege of Metabase-held database identities, and sensitivity of connected data. An internal-only instance with tightly scoped read-only credentials is not equivalent to a public instance connected to customer, billing, identity, claims, or operational datasets with broad service-account permissions.1, 11, 12
No CVE is assigned as of this update, so the issue cannot appear as a normal CVE-indexed KEV entry even though exploitation is vendor-confirmed. No authoritative source retained here names an actor, campaign, attacker IP, domain, file, hash, malware family, or total victim count. The older CVE-2023-38646 is a separate 2023 Metabase setup-token/H2 connection-string vulnerability and must not be conflated with this event.1, 5, 6, 11
Research and scoping note
Decision rule: vulnerable and reachable means urgent exposure; evidence of unexpected endpoint use, sessions, administrators, API keys, queries, exports, or connected-database access means suspected compromise; verified unauthorized access or data activity determines incident scope. Do not collapse those three states into one label.1, 4, 11
Metabase is frequently trusted with broad visibility into operational and business data. The vulnerability can turn that trust relationship into a downstream access path.
- Risk Driver
- Remote + unauthenticated
- Why It Matters
- No valid account or user interaction is required in the scored attack path.
- What Changes the Decision
- Historical public reachability and running affected version.1
- Risk Driver
- Administrator access
- Why It Matters
- Successful exploitation can move the attacker into trusted application control.
- Risk Driver
- Connected-database pivot
- Why It Matters
- Stored credentials and permissions can expand impact beyond Metabase itself.
- What Changes the Decision
- Credential use, database authentication, queries, accessed objects, and exports.1
- Risk Driver
- SMB / MSP concentration
- Why It Matters
- Small teams may expose BI tools, reuse broad service credentials, or lack long-retention telemetry.
- What Changes the Decision
- Deployment inventory, privilege review, architecture, and log availability.1
- Risk Driver
- No public infrastructure IOCs
- Why It Matters
- Waiting for blocklists can delay containment while vendor-confirmed exploitation continues.
- What Changes the Decision
- Behavioral/local evidence around the exact vulnerable surface.1
| Risk Driver | Why It Matters | What Changes the Decision |
|---|---|---|
| Remote + unauthenticated | No valid account or user interaction is required in the scored attack path. | Historical public reachability and running affected version.1 |
| Administrator access | Successful exploitation can move the attacker into trusted application control. | Unexpected admins, keys, sessions, configuration, or privileged activity.1, 4 |
| Connected-database pivot | Stored credentials and permissions can expand impact beyond Metabase itself. | Credential use, database authentication, queries, accessed objects, and exports.1 |
| SMB / MSP concentration | Small teams may expose BI tools, reuse broad service credentials, or lack long-retention telemetry. | Deployment inventory, privilege review, architecture, and log availability.1 |
| No public infrastructure IOCs | Waiting for blocklists can delay containment while vendor-confirmed exploitation continues. | Behavioral/local evidence around the exact vulnerable surface.1 |
- Date / Period
- Jul 21, 2023
- Confirmed Event
- CVE-2023-38646 published for a separate setup-token/H2 Metabase RCE.
- Operational Meaning
- Do not transfer that issue's reporting, actors, or artifacts to this event.
- Boundary
- Historical context only.6
- Date / Period
- Aug 3, 2026
- Confirmed Event
- Framework and Tally identify access to their Metabase environments in notices reported by BleepingComputer.
- Operational Meaning
- Preserve logs covering at least this date and earlier; investigate comparable connected-data exposure.
- Boundary
- Not a proven universal campaign start date.12
- Date / Period
- Aug 6, 2026
- Confirmed Event
- Metabase discloses the Cloud attack, patches Cloud, publishes the GHSA, fixes, response actions, and likely-compromise request sequence.
- Operational Meaning
- Emergency upgrade and incident triage begin from vendor confirmation; a CVE is not required to act.
- Date / Period
- Aug 6–7, 2026
- Confirmed Event
- Framework and Tally impacts become public; LexisNexis reports third-party-system disruption under investigation.
- Operational Meaning
- Move the risk model from hypothetical downstream access to demonstrated customer and identity-data impact.
- Boundary
- LexisNexis data exposure remained unconfirmed.12
- Date / Period
- Aug 7, 2026
- Confirmed Event
- The public GHSA record is updated; no CVE is assigned.
- Operational Meaning
- Continue tracking the GHSA and vendor incident post as controlling records.
- Date / Period
- Aug 9, 2026
- Confirmed Event
- PANDA v3.0 research cutoff and card-by-card editorial rebuild.
- Operational Meaning
- Victim disclosures and detection guidance are now incorporated with explicit evidence boundaries.
| Date / Period | Confirmed Event | Operational Meaning | Boundary |
|---|---|---|---|
| Jul 21, 2023 | CVE-2023-38646 published for a separate setup-token/H2 Metabase RCE. | Do not transfer that issue's reporting, actors, or artifacts to this event. | Historical context only.6 |
| Aug 3, 2026 | Framework and Tally identify access to their Metabase environments in notices reported by BleepingComputer. | Preserve logs covering at least this date and earlier; investigate comparable connected-data exposure. | Not a proven universal campaign start date.12 |
| Aug 6, 2026 | Metabase discloses the Cloud attack, patches Cloud, publishes the GHSA, fixes, response actions, and likely-compromise request sequence. | Emergency upgrade and incident triage begin from vendor confirmation; a CVE is not required to act. | No actor or total victim count.1, 11 |
| Aug 6–7, 2026 | Framework and Tally impacts become public; LexisNexis reports third-party-system disruption under investigation. | Move the risk model from hypothetical downstream access to demonstrated customer and identity-data impact. | LexisNexis data exposure remained unconfirmed.12 |
| Aug 7, 2026 | The public GHSA record is updated; no CVE is assigned. | Continue tracking the GHSA and vendor incident post as controlling records. | No-CVE status does not reduce urgency.1, 11 |
| Aug 9, 2026 | PANDA v3.0 research cutoff and card-by-card editorial rebuild. | Victim disclosures and detection guidance are now incorporated with explicit evidence boundaries. | No public attacker infrastructure IOC set.1, 11, 12 |
Sequence containment and evidence preservation so emergency remediation does not erase the facts needed for scoping.
- Phase
- 1. Declare / preserve
- Actions
- Assign owner; inventory deployments, connections, credentials, public exposure, and logs; preserve relevant evidence.
- Phase
- 2. Contain
- Actions
- Block the exact endpoint if upgrade is delayed; validate externally; restrict unnecessary public access.
- Exit Evidence
- Validated enforcement and effective-time record.1
- Phase
- 3. Remediate
- Actions
- Back up, install a named fixed release or later, restart, and verify the running build.
- Phase
- 4. Evict / rotate
- Actions
- Clear core_session, validate admins, remove unrecognized API keys, and rotate every connected-database credential.
- Phase
- 5. Scope
- Actions
- Correlate endpoint, session, identity, query, export, and downstream database evidence.
- Exit Evidence
- Documented incident timeline, affected identities/data, and confidence gaps.1
- Phase
- 6. Recover / learn
- Actions
- Validate service, least privilege, monitoring, notification decisions, and preventive controls.
| Phase | Actions | Exit Evidence |
|---|---|---|
| 1. Declare / preserve | Assign owner; inventory deployments, connections, credentials, public exposure, and logs; preserve relevant evidence. | Timestamped asset/exposure record and evidence inventory.1, 3 |
| 2. Contain | Block the exact endpoint if upgrade is delayed; validate externally; restrict unnecessary public access. | Validated enforcement and effective-time record.1 |
| 3. Remediate | Back up, install a named fixed release or later, restart, and verify the running build. | Backup record, change record, version proof, and health check.1, 2, 3 |
| 4. Evict / rotate | Clear core_session, validate admins, remove unrecognized API keys, and rotate every connected-database credential. | Revocation, identity review, key review, and rotation evidence.1, 4 |
| 5. Scope | Correlate endpoint, session, identity, query, export, and downstream database evidence. | Documented incident timeline, affected identities/data, and confidence gaps.1 |
| 6. Recover / learn | Validate service, least privilege, monitoring, notification decisions, and preventive controls. | Approved return to service and tracked corrective actions.1, 2 |
- Term
- Application database
- Term
- Connected database
- Meaning Here
- A downstream data source queried by Metabase with stored connection credentials and assigned permissions.1
- Sources
- 1
- Term
- SQL injection
- Term
- core_session
- Meaning Here
- The application-database table Metabase directs exposed customers to clear in order to revoke active user sessions after upgrade.1
- Sources
- 1
| Term | Meaning Here | Sources |
|---|---|---|
| Application database | The database that stores Metabase configuration and operational state. It is distinct from the analytics/data-warehouse systems that Metabase connects to.1, 3 | 1, 3 |
| Connected database | A downstream data source queried by Metabase with stored connection credentials and assigned permissions.1 | 1 |
| SQL injection | A weakness in which untrusted input changes the intended structure of a database query. CWE-89 is the relevant analyst taxonomy; the GHSA itself lists no CWE.1, 7 | 1, 7 |
| core_session | The application-database table Metabase directs exposed customers to clear in order to revoke active user sessions after upgrade.1 | 1 |
| Exposure | An affected build and reachable vulnerable endpoint establish opportunity, not proof that exploitation succeeded.1 | 1 |
| Compromise | Unauthorized access or change supported by local or authoritative evidence, such as an unexpected administrator, key, session, query, export, or downstream database event.1, 4 | 1, 4 |
Only the public-facing application exploitation is directly supported as an initial-access mapping. Later rows are explicitly potential consequences, not observed behavior.
- Lifecycle
- Initial Access
- ATT&CK / Behavior
- T1190 — Exploit Public-Facing Application
- Lifecycle
- Privilege / Persistence
- ATT&CK / Behavior
- Administrator access; T1098 Account Manipulation (potential)
- Lifecycle
- Credential Access
- ATT&CK / Behavior
- Theft of stored connected-database credentials
- Evidence / Confidence
- Vendor-stated potential impact; no public theft instance or technique detail.1
- Lifecycle
- Access / Lateral Reach
- ATT&CK / Behavior
- T1078 Valid Accounts (potential)
- Lifecycle
- Collection / Exfiltration
- ATT&CK / Behavior
- Read and export data reachable through connections
- Evidence / Confidence
- Vendor-stated potential impact; method, victim, and volume unknown.1
| Lifecycle | ATT&CK / Behavior | Evidence / Confidence |
|---|---|---|
| Initial Access | T1190 — Exploit Public-Facing Application | High analyst confidence; exact endpoint and exploitation class are vendor-confirmed.1, 8 |
| Privilege / Persistence | Administrator access; T1098 Account Manipulation (potential) | Capability and review targets are confirmed; observed account manipulation is not.1, 10 |
| Credential Access | Theft of stored connected-database credentials | Vendor-stated potential impact; no public theft instance or technique detail.1 |
| Access / Lateral Reach | T1078 Valid Accounts (potential) | Analytical mapping if stolen credentials are used; not publicly observed here.1, 9 |
| Collection / Exfiltration | Read and export data reachable through connections | Vendor-stated potential impact; method, victim, and volume unknown.1 |
- Question
- Is exploitation confirmed?
- Source-Bound Answer
- Yes. Metabase explicitly confirms active exploitation. It does not publish start date, actor, victim count, or infrastructure.1
- Question
- What version should we install?
- Question
- Is blocking the endpoint sufficient?
- Source-Bound Answer
- No. It is a temporary workaround. Upgrade is the remediation, and previously public instances require the vendor's post-upgrade investigation actions.1
- Question
- Does patching close the incident?
- Source-Bound Answer
- Not by itself when the endpoint was reachable. Sessions, admins, keys, credentials, application history, and database logs still need review.1
- Question
- Is Metabase Cloud affected?
- Source-Bound Answer
- Yes. Metabase says Cloud was attacked through the zero-day and that it blocked the endpoints and patched Cloud customers. Self-hosted customers must validate and upgrade their own deployments.11
- Question
- What is the strongest public detection pattern?
- Source-Bound Answer
- A POST to /api/session/reset_password returning HTTP 400 followed by a GET to /api/user/current returning HTTP 200. Metabase says the ordered sequence indicates likely compromise.11
- Question
- Has real data theft been disclosed?
- Source-Bound Answer
- Yes. Framework and Tally disclosed different data impacts in notices reported by BleepingComputer. LexisNexis disclosed disruption but had not confirmed data exposure at cutoff.12
- Question
- What is the CVE and KEV status?
- Question
- Is this CVE-2023-38646?
- Question
- Does a vulnerable version prove compromise?
- Source-Bound Answer
- No. It proves exposure when reachable. Compromise requires unauthorized local or authoritative evidence.1
| Question | Source-Bound Answer |
|---|---|
| Is exploitation confirmed? | Yes. Metabase explicitly confirms active exploitation. It does not publish start date, actor, victim count, or infrastructure.1 |
| What version should we install? | At least x.58.24, x.59.21, x.60.17, x.61.11, x.62.9, or x.63.5 for the corresponding family—or a later supported release.1, 2 |
| Is blocking the endpoint sufficient? | No. It is a temporary workaround. Upgrade is the remediation, and previously public instances require the vendor's post-upgrade investigation actions.1 |
| Does patching close the incident? | Not by itself when the endpoint was reachable. Sessions, admins, keys, credentials, application history, and database logs still need review.1 |
| Is Metabase Cloud affected? | Yes. Metabase says Cloud was attacked through the zero-day and that it blocked the endpoints and patched Cloud customers. Self-hosted customers must validate and upgrade their own deployments.11 |
| What is the strongest public detection pattern? | A POST to /api/session/reset_password returning HTTP 400 followed by a GET to /api/user/current returning HTTP 200. Metabase says the ordered sequence indicates likely compromise.11 |
| Has real data theft been disclosed? | Yes. Framework and Tally disclosed different data impacts in notices reported by BleepingComputer. LexisNexis disclosed disruption but had not confirmed data exposure at cutoff.12 |
| What is the CVE and KEV status? | No CVE is assigned in the advisory as of cutoff. No KEV claim is made; vendor-confirmed exploitation is independently sufficient for urgent action.1, 5 |
| Is this CVE-2023-38646? | No. That is a separate 2023 setup-token/H2 connection-string vulnerability.1, 6 |
| Does a vulnerable version prove compromise? | No. It proves exposure when reachable. Compromise requires unauthorized local or authoritative evidence.1 |
- Reference
- —
- Status
- —
- Operational Use
- —11
- Reference
- GHSA-vwf4-m7j8-wcjf
- Status
- Current controlling advisory; Critical; active exploitation; no CVE.
- Operational Use
- Use for mechanism, versions, workaround, impact, and response.1
- Reference
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
- Status
- 10.0 Critical
- Operational Use
- Communicates technical severity; combine with reachability and data privilege for local priority.1
- Reference
- CWE-89
- Status
- Analyst mapping; not vendor-assigned in GHSA.
- Reference
- CVE-2023-38646
- Status
- Separate 2023 vulnerability.
- Operational Use
- Use only for deconfliction; do not import its exploit or IOC context.6
| Reference | Status | Operational Use |
|---|---|---|
| — | — | —11 |
| GHSA-vwf4-m7j8-wcjf | Current controlling advisory; Critical; active exploitation; no CVE. | Use for mechanism, versions, workaround, impact, and response.1 |
| CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H | 10.0 Critical | Communicates technical severity; combine with reachability and data privilege for local priority.1 |
| CWE-89 | Analyst mapping; not vendor-assigned in GHSA. | Use for weakness taxonomy, not attribution or detection.1, 7 |
| CVE-2023-38646 | Separate 2023 vulnerability. | Use only for deconfliction; do not import its exploit or IOC context.6 |
Indicator availability is stated category by category. No issue-specific attacker IP, domain, malicious URL, malware filename, or file hash is public at cutoff; those absences are explicit below. The strongest published detection is the vendor's ordered HTTP behavior, followed by local identity, application, and downstream-database evidence.
- IOC / Observable Type
- Attacker IP address
- Published Value or Availability
- Not publicly released
- IOC / Observable Type
- Attacker domain / FQDN
- Published Value or Availability
- Not publicly released
- IOC / Observable Type
- Attacker-controlled URL
- Published Value or Availability
- None published
- IOC / Observable Type
- Malware filename
- Published Value or Availability
- Not published / not established
- IOC / Observable Type
- Malware file hash
- Published Value or Availability
- Not published / not established
- IOC / Observable Type
- Ordered HTTP behavior
- Published Value or Availability
- POST /api/session/reset_password → HTTP 400; then GET /api/user/current → HTTP 200
- Defender Use / Caveat
- Highest-value vendor-published likely-compromise pattern. Correlate by source/session and preserve the complete surrounding request sequence.11
- IOC / Observable Type
- URI path / method
- Published Value or Availability
- POST /api/session/reset_password
- IOC / Observable Type
- URI path / method
- Published Value or Availability
- GET /api/user/current
- Defender Use / Caveat
- Prioritize when it follows the reset-password POST and returns HTTP 200 from the same source/session context.11
- IOC / Observable Type
- Application DB object
- Published Value or Availability
- core_session
- Defender Use / Caveat
- Preserve when appropriate; clear all rows after upgrade for publicly accessible instances as directed.1
- IOC / Observable Type
- Identity / token
- Published Value or Availability
- Administrator accounts; Metabase API keys
- IOC / Observable Type
- Application activity
- Published Value or Availability
- Metabase activity, query history, exports
- Defender Use / Caveat
- Correlate users, times, objects, queries, result sizes, and downloads.1
- IOC / Observable Type
- Downstream telemetry
- Published Value or Availability
- Connected-database/warehouse authentication and query logs
- Defender Use / Caveat
- Find anomalous credential use, sources, sessions, objects, queries, and volume.1
- IOC / Observable Type
- Indicator boundary
- Published Value or Availability
- No transferable IOC set from CVE-2023-38646 or unrelated Metabase reporting
| IOC / Observable Type | Published Value or Availability | Defender Use / Caveat |
|---|---|---|
| Attacker IP address | Not publicly released | Do not block Framework customer login-IP values: those are reportedly stolen victim-data fields, not attacker infrastructure. Preserve source IPs from local ingress logs for investigation.1, 11, 12 |
| Attacker domain / FQDN | Not publicly released | No issue-specific callback, scanner, staging, or exfiltration domain is available for blocking.1, 11 |
| Attacker-controlled URL | None published | The two API paths below belong to each customer's Metabase instance; they are behavioral observables, not globally malicious URLs.1, 11 |
| Malware filename | Not published / not established | No dropped file, web shell, script, archive, executable, or malware family is identified in the retained public record.1, 11 |
| Malware file hash | Not published / not established | No MD5, SHA-1, SHA-256, or other malicious-file hash is available. Tally's exposed password hashes are victim data, not file IOCs.1, 11, 12 |
| Ordered HTTP behavior | POST /api/session/reset_password → HTTP 400; then GET /api/user/current → HTTP 200 | Highest-value vendor-published likely-compromise pattern. Correlate by source/session and preserve the complete surrounding request sequence.11 |
| URI path / method | POST /api/session/reset_password | Hunt across reverse-proxy, WAF, CDN, load-balancer, and application telemetry. A path hit alone is not proof; method, status, sequence, source, and timing matter.1, 11 |
| URI path / method | GET /api/user/current | Prioritize when it follows the reset-password POST and returns HTTP 200 from the same source/session context.11 |
| Application DB object | core_session | Preserve when appropriate; clear all rows after upgrade for publicly accessible instances as directed.1 |
| Identity / token | Administrator accounts; Metabase API keys | Review creation, change, owner, scope, and use; remove unrecognized keys.1, 4 |
| Application activity | Metabase activity, query history, exports | Correlate users, times, objects, queries, result sizes, and downloads.1 |
| Downstream telemetry | Connected-database/warehouse authentication and query logs | Find anomalous credential use, sources, sessions, objects, queries, and volume.1 |
| Indicator boundary | No transferable IOC set from CVE-2023-38646 or unrelated Metabase reporting | Validate future issue-specific indicators against current ownership and local telemetry before enforcement.1, 6 |
- Actor / Label
- Unknown active exploiter
- Status
- Confirmed activity; unattributed actor.
- Analytical Boundary
- No public cluster, motive, geography, infrastructure, or victim set.1
- Actor / Label
- Opportunistic scanners/exploiters
- Status
- Plausible hypothesis only.
- Analytical Boundary
- Do not present as observed until supported by issue-specific telemetry or authoritative reporting.1
- Actor / Label
- Ransomware / extortion actor
- Status
- Not established.
- Analytical Boundary
- No retained primary source links the GHSA to ransomware.1
- Actor / Label
- Actors tied to older Metabase flaws
- Status
- Out of scope without new evidence.
| Actor / Label | Status | Analytical Boundary |
|---|---|---|
| Unknown active exploiter | Confirmed activity; unattributed actor. | No public cluster, motive, geography, infrastructure, or victim set.1 |
| Opportunistic scanners/exploiters | Plausible hypothesis only. | Do not present as observed until supported by issue-specific telemetry or authoritative reporting.1 |
| Ransomware / extortion actor | Not established. | No retained primary source links the GHSA to ransomware.1 |
| Actors tied to older Metabase flaws | Out of scope without new evidence. | Historical reporting for CVE-2023-38646 cannot be transferred to this issue.1, 6 |
- Audience
- Executive
- One-Minute Message
- Vendor-confirmed exploitation can move from an unauthenticated endpoint into administrator control and connected data.
- Specific Ask
- Authorize P0 upgrade, downstream credential rotation, and incident scoping.1
- Audience
- Metabase owner
- One-Minute Message
- A named fixed build and proof of endpoint history are required; a package-update ticket alone is insufficient.
- Audience
- SOC / IR
- One-Minute Message
- There are no public infrastructure IOCs, so behavior and local product artifacts drive detection.
- Audience
- Database owner
- One-Minute Message
- Metabase-held credentials may extend the blast radius into every connected store allowed by their privileges.
- Specific Ask
- Rotate credentials and validate anomalous authentication/query activity.1
- Audience
- Legal / privacy
- One-Minute Message
- Exposure and exploitation in the wild do not prove this organization had data accessed.
- Specific Ask
- Use verified local access and data scope for notification decisions.1
| Audience | One-Minute Message | Specific Ask |
|---|---|---|
| Executive | Vendor-confirmed exploitation can move from an unauthenticated endpoint into administrator control and connected data. | Authorize P0 upgrade, downstream credential rotation, and incident scoping.1 |
| Metabase owner | A named fixed build and proof of endpoint history are required; a package-update ticket alone is insufficient. | Return version, exposure, containment, backup, upgrade, and validation evidence.1, 2, 3 |
| SOC / IR | There are no public infrastructure IOCs, so behavior and local product artifacts drive detection. | Correlate path, sessions, admins, keys, queries, exports, and database events.1, 4 |
| Database owner | Metabase-held credentials may extend the blast radius into every connected store allowed by their privileges. | Rotate credentials and validate anomalous authentication/query activity.1 |
| Legal / privacy | Exposure and exploitation in the wild do not prove this organization had data accessed. | Use verified local access and data scope for notification decisions.1 |
- Priority / Owner
- P0 — Platform owner
- Decision-Ready Action
- Identify every deployment and classify exact version plus current/historical endpoint reachability.
- Completion Evidence
- Asset matrix with owner, URL, version, edition, exposure window, and control.1
- Priority / Owner
- P0 — Change owner
- Decision-Ready Action
- Contain if needed; back up; install a named fixed release or later; verify runtime.
- Priority / Owner
- P0 — IAM / Metabase admin
- Decision-Ready Action
- Revoke sessions; review admins and API keys; remove unrecognized access.
- Priority / Owner
- P0 — Database owners
- Decision-Ready Action
- Rotate every connected-database credential and validate least privilege.
- Completion Evidence
- Connection inventory, rotation timestamps, new-secret validation, privilege review.1
- Priority / Owner
- P1 — SOC / IR
- Decision-Ready Action
- Investigate application and downstream activity across the full plausible exposure window.
- Completion Evidence
- Timeline, searched telemetry, findings, gaps, and confidence statement.1
- Priority / Owner
- P1 — Legal / risk
- Decision-Ready Action
- Determine notice, insurer, customer, and authority obligations from verified impact.
- Completion Evidence
- Approved impact assessment tied to identities, systems, data, and dates.1
| Priority / Owner | Decision-Ready Action | Completion Evidence |
|---|---|---|
| P0 — Platform owner | Identify every deployment and classify exact version plus current/historical endpoint reachability. | Asset matrix with owner, URL, version, edition, exposure window, and control.1 |
| P0 — Change owner | Contain if needed; back up; install a named fixed release or later; verify runtime. | Ingress test, backup record, change record, runtime version, and health check.1, 2, 3 |
| P0 — IAM / Metabase admin | Revoke sessions; review admins and API keys; remove unrecognized access. | Revocation record, identity/key inventory, approvals, and removals.1, 4 |
| P0 — Database owners | Rotate every connected-database credential and validate least privilege. | Connection inventory, rotation timestamps, new-secret validation, privilege review.1 |
| P1 — SOC / IR | Investigate application and downstream activity across the full plausible exposure window. | Timeline, searched telemetry, findings, gaps, and confidence statement.1 |
| P1 — Legal / risk | Determine notice, insurer, customer, and authority obligations from verified impact. | Approved impact assessment tied to identities, systems, data, and dates.1 |
- Technology / Trust Surface
- Reset-password API
- Failure Mode
- Unauthenticated remote SQL injection into application DB.
- Priority Control
- Fixed release; temporary exact-path block if delayed; minimize public exposure.1
- Technology / Trust Surface
- Metabase application database
- Failure Mode
- Security state and operational configuration can be manipulated.
- Technology / Trust Surface
- Connected-database credentials
- Failure Mode
- Stored secrets can extend access beyond the BI application.
- Priority Control
- Rotation, least privilege, unique identities, source restrictions, monitored use.1
- Technology / Trust Surface
- Warehouses / business data
- Failure Mode
- Reachable data can potentially be read and exported.
- Priority Control
- Query/export logging, access review, anomaly detection, data minimization.1
- Technology / Trust Surface
- Shared / MSP-managed deployment
- Failure Mode
- One control plane may expose multiple teams, customers, or datasets.
- Priority Control
- Tenant/customer inventory, segmentation, scoped credentials, per-deployment evidence.1
| Technology / Trust Surface | Failure Mode | Priority Control |
|---|---|---|
| Reset-password API | Unauthenticated remote SQL injection into application DB. | Fixed release; temporary exact-path block if delayed; minimize public exposure.1 |
| Metabase application database | Security state and operational configuration can be manipulated. | Backup, access restriction, session revocation, admin/key review, monitoring.1, 3, 4 |
| Connected-database credentials | Stored secrets can extend access beyond the BI application. | Rotation, least privilege, unique identities, source restrictions, monitored use.1 |
| Warehouses / business data | Reachable data can potentially be read and exported. | Query/export logging, access review, anomaly detection, data minimization.1 |
| Shared / MSP-managed deployment | One control plane may expose multiple teams, customers, or datasets. | Tenant/customer inventory, segmentation, scoped credentials, per-deployment evidence.1 |
The record is primary-source dominant. One established secondary source is retained because it reproduces and attributes material affected-organization notices not available as stable public first-party pages at cutoff.
- Tier
- Tier 0 - Most Trusted
- Coverage / Disposition
- CISA KEV and CVE records checked; identifier boundary reconciled.
- Tier
- Tier 1 - Authoritative
- Coverage / Disposition
- Metabase GHSA, incident post, upgrade, backup, and API-key documentation.
- Tier
- Tier 2 - High-Value Research
- Coverage / Disposition
- Technical and incident-response reporting reviewed for corroboration and indicator leads.
- Retained Contribution
- No consequential claim or infrastructure IOC retained beyond stronger primary evidence.
- Tier
- Tier 3 - Corroborating News
- Coverage / Disposition
- BleepingComputer checked for affected-organization disclosures and incident impact.
- Retained Contribution
- Attributed Framework, Tally, and LexisNexis notice details.12
- Tier
- Tier 4 - Community Signal
- Coverage / Disposition
- Public discussion checked for leads and emerging claims.
- Retained Contribution
- No social-only claim or unverified IOC retained.
- Tier
- Tier 5 - Custom Source
- Coverage / Disposition
- No configured user-defined custom source changed the public record.
- Retained Contribution
- No private or unpublished evidence used.
- Tier
- Tier 6 - Custom Integrations with API/Keys
- Coverage / Disposition
- No authorized custom integration supplied issue-specific evidence for this publication.
- Retained Contribution
- No integration-only claim used.
- Tier
- Tier 7 - Inner Discovery
- Coverage / Disposition
- Linked-source and focused follow-up discovery checked for victim notices and technical indicators.
- Tier
- Tier 8 - Expansion Research / AI Agent Delta
- Coverage / Disposition
- MITRE CWE and ATT&CK taxonomy reconciled after the baseline source walk.
| Tier | Coverage / Disposition | Retained Contribution |
|---|---|---|
| Tier 0 - Most Trusted | CISA KEV and CVE records checked; identifier boundary reconciled. | No-CVE/KEV boundary and 2023 CVE deconfliction.5, 6 |
| Tier 1 - Authoritative | Metabase GHSA, incident post, upgrade, backup, and API-key documentation. | Vulnerability, Cloud incident, detection pattern, version, mitigation, and operational handling.1, 2, 3, 4, 11 |
| Tier 2 - High-Value Research | Technical and incident-response reporting reviewed for corroboration and indicator leads. | No consequential claim or infrastructure IOC retained beyond stronger primary evidence. |
| Tier 3 - Corroborating News | BleepingComputer checked for affected-organization disclosures and incident impact. | Attributed Framework, Tally, and LexisNexis notice details.12 |
| Tier 4 - Community Signal | Public discussion checked for leads and emerging claims. | No social-only claim or unverified IOC retained. |
| Tier 5 - Custom Source | No configured user-defined custom source changed the public record. | No private or unpublished evidence used. |
| Tier 6 - Custom Integrations with API/Keys | No authorized custom integration supplied issue-specific evidence for this publication. | No integration-only claim used. |
| Tier 7 - Inner Discovery | Linked-source and focused follow-up discovery checked for victim notices and technical indicators. | Discovery led to the vendor incident post and affected-organization reporting; authority remains source-bounded.11, 12 |
| Tier 8 - Expansion Research / AI Agent Delta | MITRE CWE and ATT&CK taxonomy reconciled after the baseline source walk. | Clearly labeled analyst mappings only; no post-publication AI Agent delta is claimed.7, 8, 9, 10 |
- Conflict / Question
- Affected-range gaps
- Reconciled Position
- Use named fixed releases or later; no gap build is declared safe.
- Conflict / Question
- No CVE but exploitation confirmed
- Reconciled Position
- GHSA controls; act on vendor confirmation without waiting for CVE/KEV.
- Conflict / Question
- SQL injection but no GHSA CWE
- Reconciled Position
- CWE-89 is labeled an IntelliOS analyst mapping, not a vendor assignment.
- Conflict / Question
- Confusion with CVE-2023-38646
- Reconciled Position
- Separate endpoint, mechanism, identifier, and event; no IOC or actor transfer.
- Conflict / Question
- Can vs. did
- Reconciled Position
- Admin, credential, read, and export capabilities are vendor-stated potential impacts; local evidence is required to say they occurred.
- Confidence
- High boundary.1
- Conflict / Question
- Vendor advisory omits victims; public notices identify impacts
- Reconciled Position
- Retain Framework and Tally as attributed affected-organization disclosures; retain LexisNexis only as disruption/investigation because data exposure was not confirmed.
| Conflict / Question | Reconciled Position | Confidence |
|---|---|---|
| Affected-range gaps | Use named fixed releases or later; no gap build is declared safe. | High operational confidence; conservative handling of vendor display.1, 2 |
| No CVE but exploitation confirmed | GHSA controls; act on vendor confirmation without waiting for CVE/KEV. | High.1, 5 |
| SQL injection but no GHSA CWE | CWE-89 is labeled an IntelliOS analyst mapping, not a vendor assignment. | High taxonomy fit; bounded attribution.1, 7 |
| Confusion with CVE-2023-38646 | Separate endpoint, mechanism, identifier, and event; no IOC or actor transfer. | High.1, 6 |
| Can vs. did | Admin, credential, read, and export capabilities are vendor-stated potential impacts; local evidence is required to say they occurred. | High boundary.1 |
| Vendor advisory omits victims; public notices identify impacts | Retain Framework and Tally as attributed affected-organization disclosures; retain LexisNexis only as disruption/investigation because data exposure was not confirmed. | Moderate-high for attributed notice details; bounded by secondary-source access.11, 12 |
Contributors are the organizations whose publications or disclosures supply evidence. IntelliOS performs synthesis and quality control but is not listed as a source contributor.
- Contributor
- Metabase Security
- What They Do
- Develops and secures the Metabase analytics platform and publishes product-security advisories and incident updates.
- Why They Matter Here
- Controls the vulnerability, Cloud incident, request-pattern detection, fixed releases, workaround, and response facts.
- Contributor
- Metabase Documentation
- What They Do
- Maintains supported product administration, upgrade, backup, and API-key guidance.
- Why They Matter Here
- Supports safe remediation sequencing and access-review procedures.
- Contributor
- CISA
- What They Do
- Maintains U.S. federal cyber advisories and the Known Exploited Vulnerabilities catalog.
- Why They Matter Here
- Defines the CVE-indexed KEV boundary used in this brief.
- Boundary
- Catalog structure cannot represent this no-CVE issue as a normal KEV entry.5
- Contributor
- CVE Program
- What They Do
- Maintains canonical public vulnerability identifiers and records.
- Why They Matter Here
- Deconflicts the separate 2023 Metabase vulnerability from the current GHSA.
- Boundary
- The current advisory still has no CVE identifier at cutoff.6
- Contributor
- MITRE CWE / ATT&CK
- What They Do
- Maintains weakness and adversary-behavior taxonomies used by defenders.
- Why They Matter Here
- Supports bounded CWE-89 and ATT&CK lifecycle mappings.
- Contributor
- BleepingComputer
- What They Do
- Reports cybersecurity vulnerabilities, incidents, breaches, and affected-organization notifications.
- Why They Matter Here
- Provides attributed Framework, Tally, and LexisNexis disclosure details unavailable as stable public first-party pages at cutoff.
- Boundary
- Secondary source; each organization's scope remains distinct and LexisNexis data exposure was unresolved.12
| Contributor | What They Do | Why They Matter Here | Boundary |
|---|---|---|---|
| Metabase Security | Develops and secures the Metabase analytics platform and publishes product-security advisories and incident updates. | Controls the vulnerability, Cloud incident, request-pattern detection, fixed releases, workaround, and response facts. | Does not publish actor identity, total victim count, or attacker infrastructure.1, 11 |
| Metabase Documentation | Maintains supported product administration, upgrade, backup, and API-key guidance. | Supports safe remediation sequencing and access-review procedures. | General operational guidance is not evidence that compromise occurred.2, 3, 4 |
| CISA | Maintains U.S. federal cyber advisories and the Known Exploited Vulnerabilities catalog. | Defines the CVE-indexed KEV boundary used in this brief. | Catalog structure cannot represent this no-CVE issue as a normal KEV entry.5 |
| CVE Program | Maintains canonical public vulnerability identifiers and records. | Deconflicts the separate 2023 Metabase vulnerability from the current GHSA. | The current advisory still has no CVE identifier at cutoff.6 |
| MITRE CWE / ATT&CK | Maintains weakness and adversary-behavior taxonomies used by defenders. | Supports bounded CWE-89 and ATT&CK lifecycle mappings. | Taxonomy does not establish observed actor behavior, compromise, or attribution.7, 8, 9, 10 |
| BleepingComputer | Reports cybersecurity vulnerabilities, incidents, breaches, and affected-organization notifications. | Provides attributed Framework, Tally, and LexisNexis disclosure details unavailable as stable public first-party pages at cutoff. | Secondary source; each organization's scope remains distinct and LexisNexis data exposure was unresolved.12 |
Observed disclosures demonstrate three distinct outcomes: confirmed customer-data theft, confirmed analytics-environment exposure with stated data boundaries, and service disruption under investigation.
- Scenario
- Framework — customer-data theft
- Evidence Pattern
- Reported August 3 Metabase access and theft of identity, contact, address, login-IP, and business-account fields.
- Decision
- Model downstream data by actual Metabase queries/exports and connected-database privileges; identify affected records.12
- Scenario
- Tally — bounded identity exposure
- Evidence Pattern
- Reported exposure of email addresses and password hashes; forms and submissions reportedly segregated and not reached.
- Decision
- Validate data separation, hashing properties, credential-reuse risk, and user-notification obligations.12
- Scenario
- LexisNexis — disruption / investigation
- Evidence Pattern
- Third-party-hosted systems disconnected after unusual activity; affected services became unavailable.
- Decision
- Do not call data theft without evidence; preserve availability, vendor, and forensic findings separately.12
- Scenario
- Local ordered request match
- Evidence Pattern
- POST reset_password HTTP 400 followed by GET user/current HTTP 200.
- Decision
- Treat as likely compromise, preserve evidence, revoke access, rotate downstream secrets, and scope data activity.11
| Scenario | Evidence Pattern | Decision |
|---|---|---|
| Framework — customer-data theft | Reported August 3 Metabase access and theft of identity, contact, address, login-IP, and business-account fields. | Model downstream data by actual Metabase queries/exports and connected-database privileges; identify affected records.12 |
| Tally — bounded identity exposure | Reported exposure of email addresses and password hashes; forms and submissions reportedly segregated and not reached. | Validate data separation, hashing properties, credential-reuse risk, and user-notification obligations.12 |
| LexisNexis — disruption / investigation | Third-party-hosted systems disconnected after unusual activity; affected services became unavailable. | Do not call data theft without evidence; preserve availability, vendor, and forensic findings separately.12 |
| Local ordered request match | POST reset_password HTTP 400 followed by GET user/current HTTP 200. | Treat as likely compromise, preserve evidence, revoke access, rotate downstream secrets, and scope data activity.11 |
Named disclosures are included only with attributed public reporting. They are examples, not a complete victim list or proof that every Metabase customer had the same impact.
- Disclosure Category
- Metabase Cloud
- Public Record at Cutoff
- Vendor confirms Cloud attack and remediation.
- Handling
- Authoritative incident status; total affected-customer scope not published.11
- Disclosure Category
- Framework
- Public Record at Cutoff
- Customer notification with specified stolen-data categories.
- Handling
- Retain as attributed data-theft disclosure, not universal impact.12
- Disclosure Category
- Tally
- Public Record at Cutoff
- User notification with email/password-hash exposure and stated forms-data boundary.
- Handling
- Retain both impact and non-impact statements; do not infer password reversibility.12
- Disclosure Category
- LexisNexis
- Public Record at Cutoff
- Third-party-system disruption and forensic investigation; data exposure unclear.
- Handling
- Do not list as confirmed data-theft victim.12
- Disclosure Category
- IntelliOS customer / insured status
- Public Record at Cutoff
- Unknown without owned telemetry.
- Handling
- Maintain a private, evidence-backed asset and incident matrix.1
| Disclosure Category | Public Record at Cutoff | Handling |
|---|---|---|
| Metabase Cloud | Vendor confirms Cloud attack and remediation. | Authoritative incident status; total affected-customer scope not published.11 |
| Framework | Customer notification with specified stolen-data categories. | Retain as attributed data-theft disclosure, not universal impact.12 |
| Tally | User notification with email/password-hash exposure and stated forms-data boundary. | Retain both impact and non-impact statements; do not infer password reversibility.12 |
| LexisNexis | Third-party-system disruption and forensic investigation; data exposure unclear. | Do not list as confirmed data-theft victim.12 |
| IntelliOS customer / insured status | Unknown without owned telemetry. | Maintain a private, evidence-backed asset and incident matrix.1 |
- Item
- GHSA-vwf4-m7j8-wcjf
- Current Status
- Critical; CVSS 10.0; active exploitation; no CVE.
- Meaning for Defenders
- Controlling record—upgrade and triage now.1
- Item
- CISA KEV
- Current Status
- No claim for this no-CVE issue.
- Item
- Fixed releases
- Current Status
- x.58.24 / x.59.21 / x.60.17 / x.61.11 / x.62.9 / x.63.5
- Item
- CVE-2023-38646
- Current Status
- Separate historical issue.
- Meaning for Defenders
- Do not merge technical details, IOCs, actors, or response assumptions.6
| Item | Current Status | Meaning for Defenders |
|---|---|---|
| GHSA-vwf4-m7j8-wcjf | Critical; CVSS 10.0; active exploitation; no CVE. | Controlling record—upgrade and triage now.1 |
| CISA KEV | No claim for this no-CVE issue. | Do not interpret catalog nonrepresentation as no exploitation; vendor directly confirms it.1, 5 |
| Fixed releases | x.58.24 / x.59.21 / x.60.17 / x.61.11 / x.62.9 / x.63.5 | Use applicable named fix or later and verify runtime.1, 2 |
| CVE-2023-38646 | Separate historical issue. | Do not merge technical details, IOCs, actors, or response assumptions.6 |
Mappings describe what the vendor-stated capabilities could align with. Only public-facing application exploitation is directly anchored to the confirmed entry path.
- Stage
- Initial access
- Mapping
- T1190 — Exploit Public-Facing Application
- Stage
- Privilege / persistence
- Mapping
- Administrator access; T1098 Account Manipulation (potential)
- Stage
- Credential access
- Mapping
- Steal stored connected-database credentials
- Evidence Status
- Potential impact stated by vendor; no observed sequence.1
- Stage
- Downstream access
- Mapping
- T1078 — Valid Accounts (potential)
- Stage
- Collection / exfiltration
- Mapping
- Read and export connected data
- Evidence Status
- Potential outcome stated; victim, method, and volume unknown.1
| Stage | Mapping | Evidence Status |
|---|---|---|
| Initial access | T1190 — Exploit Public-Facing Application | High-confidence analyst mapping.1, 8 |
| Privilege / persistence | Administrator access; T1098 Account Manipulation (potential) | Capability/review target confirmed; technique not observed publicly.1, 10 |
| Credential access | Steal stored connected-database credentials | Potential impact stated by vendor; no observed sequence.1 |
| Downstream access | T1078 — Valid Accounts (potential) | Conditional analytical mapping if stolen credentials are used.1, 9 |
| Collection / exfiltration | Read and export connected data | Potential outcome stated; victim, method, and volume unknown.1 |
- Source Class
- Metabase GHSA
- Weight
- Controlling / highest
- Permitted Use
- All vulnerability, exploitation, version, mitigation, and response facts.
- Limit
- No actor, victim, infrastructure, or local-impact detail.1
- Source Class
- Metabase incident post
- Weight
- Controlling / highest
- Permitted Use
- Cloud incident, detection pattern, below-v58 scope, and immediate response.
- Limit
- No actor or complete affected-customer scope.11
- Source Class
- Metabase docs
- Weight
- High / operational
- Permitted Use
- Upgrade, backup, and API-key administration.
- Source Class
- BleepingComputer
- Weight
- Moderate-high / attributed secondary
- Permitted Use
- Framework, Tally, and LexisNexis notification details.
- Limit
- Not a complete victim census; first-party notices were not stable public pages at cutoff.12
- Source Class
- CISA / CVE
- Weight
- High / canonical
- Permitted Use
- Identifier, catalog, and historical-vulnerability boundaries.
- Source Class
- MITRE CWE / ATT&CK
- Weight
- Analytical
- Permitted Use
- Weakness and behavior classification.
- Source Class
- News / social / community
- Weight
- Discovery only
- Permitted Use
- Surface leads and changes for verification.
- Limit
- Cannot establish consequential claims alone.
| Source Class | Weight | Permitted Use | Limit |
|---|---|---|---|
| Metabase GHSA | Controlling / highest | All vulnerability, exploitation, version, mitigation, and response facts. | No actor, victim, infrastructure, or local-impact detail.1 |
| Metabase incident post | Controlling / highest | Cloud incident, detection pattern, below-v58 scope, and immediate response. | No actor or complete affected-customer scope.11 |
| Metabase docs | High / operational | Upgrade, backup, and API-key administration. | Not evidence that compromise occurred.2, 3, 4 |
| BleepingComputer | Moderate-high / attributed secondary | Framework, Tally, and LexisNexis notification details. | Not a complete victim census; first-party notices were not stable public pages at cutoff.12 |
| CISA / CVE | High / canonical | Identifier, catalog, and historical-vulnerability boundaries. | Does not supersede vendor-confirmed exploitation.5, 6 |
| MITRE CWE / ATT&CK | Analytical | Weakness and behavior classification. | Not observed incident telemetry or attribution.7, 8, 9, 10 |
| News / social / community | Discovery only | Surface leads and changes for verification. | Cannot establish consequential claims alone. |
Rolling Intelligence Card
Exploitable Technology Risk
Track exposure, exploitation, remediation proof, and local incident evidence for high-risk technology.
CVE / KEV Cards
CVE / KEV Card Library
Review the distinct historical Metabase CVE and add this issue only if a CVE is assigned.
PANDA Collection
PANDA Intelligence Output
Return to source-backed threat briefs and operational intelligence products.
Published research notes
Public, read-only, source-backed context retained with this brief. No account or sign-in is required.
Confirmed facts
Metabase confirms its Cloud service was attacked, unauthenticated arbitrary SQL injection into the application database, CVSS 10.0, active exploitation, potential administrator access, potential configuration change/credential theft/data access/export, six named fixes, a temporary endpoint block, the exact POST-400 then GET-200 likely-compromise pattern, and required post-upgrade actions.1, 11
Not publicly established
CVE ID, actor, campaign name, motive, full exploitation window, total victim count, exploit payload, attacker IP/domain/file/hash, malware, and ransomware linkage remain unestablished. Framework and Tally impacts are attributed public disclosures; LexisNexis data exposure remained unconfirmed at cutoff.1, 11, 12
Exposure-to-incident decision rule
Affected build plus reachability means urgent exposure. Unexpected endpoint, identity, session, key, query, export, or database evidence means suspected compromise. Verified unauthorized access or data activity defines incident scope.1
Version handling
Install the named fixed release or later. Do not interpret gaps in the machine-readable affected ranges as proof that an intervening build is safe.1, 2
IOC handling
The public record provides no attacker IP/domain/file/hash set. The strongest public observable is the ordered POST /api/session/reset_password HTTP 400 followed by GET /api/user/current HTTP 200; defenders must combine it with version, application-database, administrator, API-key, activity, query, export, and connected-database telemetry.1, 4, 11
Operational safety
Back up the application database and coordinate session deletion, credential rotation, restart, and evidence preservation. Direct database changes and rushed upgrades can create outage, lockout, or evidence-loss risk.1, 2, 3
Confidence
High for the vendor-stated Cloud incident, vulnerability, exploitation, detection sequence, fixed releases, workaround, and response. Moderate-high for explicitly attributed Framework and Tally disclosure details; moderate for ATT&CK/CWE analytical mapping. Low or unavailable for actor, campaign, infrastructure, total victim scope, and any uninvestigated local impact.1, 7, 8, 9, 10, 11, 12
Monitoring status
This static brief is not assigned to a dedicated AI monitoring agent. Card 5 is intentionally empty; authoritative changes should be reconciled through the PANDA/CARDS review workflow and version log.1
- #
- 1
- Tier
- Tier 1 — Primary vendor advisory
- Publisher
- Metabase / GitHub
- Published
- Aug 6, 2026; updated Aug 7, 2026
- Why Used
- Controls mechanism, CVSS, active exploitation, affected/fixed versions, workaround, potential impact, post-upgrade actions, and no-CVE status.
- #
- 2
- Tier
- Tier 1 — Vendor documentation
- Publisher
- Metabase
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Supports safe upgrade sequencing, release-family handling, backups, and post-upgrade verification.
- Source
- Upgrading Metabase
- #
- 3
- Tier
- Tier 1 — Vendor documentation
- Publisher
- Metabase
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Supports preservation of the application database before upgrade or direct database maintenance.
- #
- 4
- Tier
- Tier 1 — Vendor documentation
- Publisher
- Metabase
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Provides operational context for reviewing, scoping, and removing unexpected Metabase API keys.
- Source
- API keys
- #
- 5
- Tier
- Tier 0 — Canonical registry
- Publisher
- CISA
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Defines the CVE-indexed KEV boundary; it does not override Metabase's direct exploitation confirmation.
- #
- 6
- Tier
- Tier 0 — Canonical record
- Publisher
- CVE Program
- Published
- Jul 21, 2023; maintained
- Why Used
- Establishes that the older setup-token/H2 pre-authentication RCE is a separate vulnerability.
- Source
- CVE-2023-38646
- #
- 7
- Tier
- Tier 8 — Expansion taxonomy
- Publisher
- MITRE CWE
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Supports an explicitly analyst-labeled SQL-injection taxonomy; the GHSA itself assigns no CWE.
- #
- 8
- Tier
- Tier 8 — Expansion taxonomy
- Publisher
- MITRE ATT&CK
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Supports the analyst initial-access mapping for exploitation of a reachable application endpoint.
- #
- 9
- Tier
- Tier 8 — Expansion taxonomy
- Publisher
- MITRE ATT&CK
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Supports a bounded potential mapping for use of stolen connected-database credentials or unauthorized administrative access.
- Source
- T1078 — Valid Accounts
- #
- 10
- Tier
- Tier 8 — Expansion taxonomy
- Publisher
- MITRE ATT&CK
- Published
- Maintained; checked Aug 9, 2026
- Why Used
- Supports a bounded potential mapping for unexpected administrator or API-key changes.
- #
- 11
- Tier
- Tier 1 — Primary vendor incident statement
- Publisher
- Metabase
- Published
- Aug 6, 2026
- Why Used
- Controls the Metabase Cloud incident statement, Cloud patch status, exact likely-compromise request sequence, below-v58 boundary, and self-hosted response guidance.
- #
- 12
- Tier
- Tier 3 — Corroborating security reporting
- Publisher
- BleepingComputer
- Published
- Aug 7, 2026
- Why Used
- Retains attributed details from Framework, Tally, and LexisNexis notices and separates confirmed data theft, stated non-impact, and unresolved third-party exposure.
| # | Tier | Publisher | Published | Why Used | Source |
|---|---|---|---|---|---|
| 1 | Tier 1 — Primary vendor advisory | Metabase / GitHub | Aug 6, 2026; updated Aug 7, 2026 | Controls mechanism, CVSS, active exploitation, affected/fixed versions, workaround, potential impact, post-upgrade actions, and no-CVE status. | GHSA-vwf4-m7j8-wcjf — SQL injection using an unauthenticated endpoint leading to admin access |
| 2 | Tier 1 — Vendor documentation | Metabase | Maintained; checked Aug 9, 2026 | Supports safe upgrade sequencing, release-family handling, backups, and post-upgrade verification. | Upgrading Metabase |
| 3 | Tier 1 — Vendor documentation | Metabase | Maintained; checked Aug 9, 2026 | Supports preservation of the application database before upgrade or direct database maintenance. | Backing up Metabase application data |
| 4 | Tier 1 — Vendor documentation | Metabase | Maintained; checked Aug 9, 2026 | Provides operational context for reviewing, scoping, and removing unexpected Metabase API keys. | API keys |
| 5 | Tier 0 — Canonical registry | CISA | Maintained; checked Aug 9, 2026 | Defines the CVE-indexed KEV boundary; it does not override Metabase's direct exploitation confirmation. | Known Exploited Vulnerabilities Catalog |
| 6 | Tier 0 — Canonical record | CVE Program | Jul 21, 2023; maintained | Establishes that the older setup-token/H2 pre-authentication RCE is a separate vulnerability. | CVE-2023-38646 |
| 7 | Tier 8 — Expansion taxonomy | MITRE CWE | Maintained; checked Aug 9, 2026 | Supports an explicitly analyst-labeled SQL-injection taxonomy; the GHSA itself assigns no CWE. | CWE-89 — Improper Neutralization of Special Elements used in an SQL Command |
| 8 | Tier 8 — Expansion taxonomy | MITRE ATT&CK | Maintained; checked Aug 9, 2026 | Supports the analyst initial-access mapping for exploitation of a reachable application endpoint. | T1190 — Exploit Public-Facing Application |
| 9 | Tier 8 — Expansion taxonomy | MITRE ATT&CK | Maintained; checked Aug 9, 2026 | Supports a bounded potential mapping for use of stolen connected-database credentials or unauthorized administrative access. | T1078 — Valid Accounts |
| 10 | Tier 8 — Expansion taxonomy | MITRE ATT&CK | Maintained; checked Aug 9, 2026 | Supports a bounded potential mapping for unexpected administrator or API-key changes. | T1098 — Account Manipulation |
| 11 | Tier 1 — Primary vendor incident statement | Metabase | Aug 6, 2026 | Controls the Metabase Cloud incident statement, Cloud patch status, exact likely-compromise request sequence, below-v58 boundary, and self-hosted response guidance. | Security update available for Metabase — Please upgrade now |
| 12 | Tier 3 — Corroborating security reporting | BleepingComputer | Aug 7, 2026 | Retains attributed details from Framework, Tally, and LexisNexis notices and separates confirmed data theft, stated non-impact, and unresolved third-party exposure. | Metabase SQLi zero-day exploited in customer data-theft attacks |
- Version
- v4.0
- Date
- Aug 9, 2026
- Changes
- Completed a third-pass, card-by-card FortiBleed exemplar audit. Rebuilt IOCs / Observables as an explicit indicator-availability matrix covering attacker IPs, domains, URLs, filenames, hashes, the vendor-published HTTP sequence, and local investigation artifacts; removed version inventory from the IOC card; restored separate Tier 0 through Tier 8 rows in the source-summary card; and corrected About the Contributors to describe source organizations rather than IntelliOS itself.
- Version
- v3.1
- Date
- Aug 9, 2026
- Changes
- Corrected Research Framing to match the FortiBleed exemplar exactly: restored separate Tier 0 through Tier 8 source-coverage rows, canonical tier labels, centered source counts, and the bold total row without combining tiers.
- Version
- v3.0
- Date
- Aug 9, 2026
- Changes
- Rebuilt the opening snapshot and materially expanded the executive, detection, timeline, victim-disclosure, response, and source-reconciliation cards. Added Metabase's Cloud-incident statement, the vendor-published likely-compromise request sequence, and bounded reporting on Framework, Tally, and LexisNexis impacts.
- Version
- v2.0
- Date
- Aug 9, 2026
- Changes
- Rebuilt all 32 cards against the PANDA gold-standard structure. Added four-row Research Framing, version-family decision tables, public-exposure triage, source-weighted response guidance, concrete observables, explicit confidence boundaries, and visible PANDA-index placement.
- Version
- v1.0
- Date
- Aug 8, 2026
- Changes
- Initial brief based on GHSA-vwf4-m7j8-wcjf. Superseded by the comprehensive v2.0 rewrite.
| Version | Date | Changes |
|---|---|---|
| v4.0 | Aug 9, 2026 | Completed a third-pass, card-by-card FortiBleed exemplar audit. Rebuilt IOCs / Observables as an explicit indicator-availability matrix covering attacker IPs, domains, URLs, filenames, hashes, the vendor-published HTTP sequence, and local investigation artifacts; removed version inventory from the IOC card; restored separate Tier 0 through Tier 8 rows in the source-summary card; and corrected About the Contributors to describe source organizations rather than IntelliOS itself. |
| v3.1 | Aug 9, 2026 | Corrected Research Framing to match the FortiBleed exemplar exactly: restored separate Tier 0 through Tier 8 source-coverage rows, canonical tier labels, centered source counts, and the bold total row without combining tiers. |
| v3.0 | Aug 9, 2026 | Rebuilt the opening snapshot and materially expanded the executive, detection, timeline, victim-disclosure, response, and source-reconciliation cards. Added Metabase's Cloud-incident statement, the vendor-published likely-compromise request sequence, and bounded reporting on Framework, Tally, and LexisNexis impacts. |
| v2.0 | Aug 9, 2026 | Rebuilt all 32 cards against the PANDA gold-standard structure. Added four-row Research Framing, version-family decision tables, public-exposure triage, source-weighted response guidance, concrete observables, explicit confidence boundaries, and visible PANDA-index placement. |
| v1.0 | Aug 8, 2026 | Initial brief based on GHSA-vwf4-m7j8-wcjf. Superseded by the comprehensive v2.0 rewrite. |
