Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain write credential for any tenant
-
DeliverySend POST /v1/decay/sweep with ttl_seconds=0
-
ExploitUnfiltered decay query spans all tenants
-
ExecutionAll tenants' facts expired and destroyed
-
ImpactOptional: use dry_run mode to enumerate cross-tenant fact counts
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires: (1) the target stigmem-node deployment must have the opt-in stigmem-plugin-multi-tenant plugin installed and active - default single-tenant nodes are structurally immune; (2) the attacker must hold a valid write-level API credential for at least one tenant on the node (PR:L per CVSS vector); (3) network access to the POST /v1/decay/sweep endpoint. What limits exploitation: the multi-tenant plugin requirement is the decisive limiter - only operators who have explicitly enabled multi-tenancy are at risk. Authentication is required (write credential), ruling out unauthenticated exploitation. No special client-side software, specific protocol state, or race condition is needed - once the above conditions are met, a single HTTP POST is sufficient to trigger cross-tenant impact. |
| Impact | The CVSS 4.0 score of 7.2 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H) is well-calibrated to the vulnerability. Network delivery with low attack complexity and only low-privilege credentials required is accurate, because any legitimate write-credentialed API user of one tenant can trigger the flaw with a standard POST request - no exploitation tooling or elevated permissions needed. The high integrity and availability impact reflects that a ttl_seconds=0 sweep causes irreversible mass expiry of all tenants' facts. The low confidentiality impact reflects the dry_run oracle path, which leaks cross-tenant fact counts but not content. The critical constraint - and the primary risk limiter - is that exploitation is only possible on deployments running the opt-in stigmem-plugin-multi-tenant plugin; a default single-tenant deployment has a single implicit tenant and is structurally unaffected. No CISA KEV listing and no confirmed public exploit code exist at time of analysis, and the EPSS signal is unavailable for this CVE. Despite the absence of active exploitation evidence, operators running multi-tenant stigmem nodes should treat this as high priority: the attack is trivially automatable by any authenticated user, the data destruction impact is immediate and potentially irreversible, and no workaround exists short of upgrading. |
| Exploit ScenarioDerived | An attacker who has legitimately obtained write API credentials for their own tenant on a shared stigmem-node instance sends POST /v1/decay/sweep with ttl_seconds=0 to the endpoint. Because the decay worker applies no tenant_id filter, this single request immediately expires all facts across every tenant on the node, causing a complete data-destruction event for all co-tenants. No public exploit code is known, but the attack requires only knowledge of the endpoint and standard HTTP tooling. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 19, 2026
Cross-tenant broken object level authorization (BOLA) in stigmem-node's decay sweep endpoint allows any authenticated write-credentialed tenant to destroy or enumerate facts belonging to all other tenants. Specifically, POST /v1/decay/sweep with ttl_seconds=0 expires every tenant's facts globally due to missing tenant_id predicates in the candidate-selection queries. This vulnerability exclusively affects multi-tenant deployments running the opt-in stigmem-plugin-multi-tenant; no public exploit or CISA KEV listing exists at time of analysis, but the integrity and availability impact against multi-tenant operators is critical.
RemediationAI
Upgrade stigmem-node to version 0.9.0a12 or later, which was released as the definitive fix via PR #728 (https://github.com/eidetic-labs/stigmem/pull/728). The fix threads identity.tenant_id through the entire decay sweep execution path and adds AND tenant_id = ? predicates to all candidate selector queries, ensuring sweeps are scoped to the caller's tenant only. A CI guard (check_fact_query_tenant_scope.py) was extended to cover the lifecycle/ module to prevent regression. No supported workaround is available for affected multi-tenant deployments short of upgrading - the vendor advisory explicitly states this. Single-tenant deployments (those not using stigmem-plugin-multi-tenant) are unaffected and require no action. If an immediate upgrade is not possible, operators may consider temporarily restricting API access to the POST /v1/decay/sweep endpoint at the network or application gateway layer to trusted administrative identities only, accepting that this disables the decay lifecycle feature for all tenants until the upgrade is applied.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in pypi, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
stigmem-node (pip package, CPE: cpe:2.3:a:eidetic-labs:stigmem:*:*:*:*:*:*:*:*) is a knowledge graph or fact-lifecycle management system that supports multi-tenancy via an opt-in plugin. The vulnerability is rooted in CWE-863 (Incorrect Authorization): the lifecycle module at lifecycle/decay.py implemented candidate-selection functions (_select_ttl_candidates, _select_confidence_candidates) without a WHERE tenant_id = ? predicate, meaning every decay operation operated on the global fact table regardless of the caller's tenant scope. The async worker chain (run_decay_sweep / _decay_job_worker) similarly did not thread identity.tenant_id into its execution context, reachable via the authenticated REST endpoint POST /v1/decay/sweep. The dry_run mode of the same endpoint returned a global aggregate count, creating a cross-tenant existence and volume oracle - a secondary information disclosure path.
Know when Stigmem gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H/SC:N/SI:N/SA:N
Network endpoint, low complexity; PR:L for required write credential; S:C because impact crosses tenant security boundaries; C:L for dry_run oracle, I:H and A:H for destructive sweep.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
stigmem versions before 0.9.0a12 contain a broken object level authorization vulnerability in the decay sweep endpoint that allows authenticated attackers with write credentials for one tenant to execute decay operations affecting all tenants. Attackers can submit POST requests to the decay sweep endpoint with ttl_seconds=0 to expire facts across all tenants, or use dry_run to obtain cross-tenant fact counts and existence information.
Blast Radius
ecosystem impact- 11 pypi packages depend on stigmem-node (11 direct, 0 indirect)
Ecosystem-wide dependent count for version 0.9.0a12.
Executive ViewAI
stigmem-node deployments with multi-tenant mode enabled contain a broken tenant isolation flaw (CVE-2026-76238) that allows authenticated tenants to destroy or enumerate all other tenants' data. Multi-tenant SaaS operators and enterprises sharing stigmem infrastructure face immediate risk of cross-customer data loss and competitive exposure. Single-tenant deployments are unaffected.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict network access to POST /v1/decay/sweep endpoint to internal/trusted systems only via WAF or network policies; (2) Implement role-based access control to limit write credentials to essential service accounts; (3) Deploy logging and alerting on decay sweep endpoint calls to detect and respond to exploitation; (4) If multi-tenant functionality is not required, disable stigmem-plugin-multi-tenant to eliminate the attack surface entirely.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Anonymous read/write/federation access to Stigmem nodes (versions before 0.9.0a2) is possible when operators disable aut
Federation peer-registration authentication bypass in stigmem-node 0.9.0a1 lets a network-positioned attacker enroll a r
Cleartext exposure of federation traffic in eidetic-labs stigmem-node (versions before 0.9.0a2) occurs when operators ex
Cross-tenant broken object level authorization (BOLA) in stigmem-node exposes quarantined facts across tenant boundaries
SQL injection in stigmem-node 0.9.0a1 stems from PostgreSQL schema identifiers being interpolated into SQL strings witho
Arbitrary code execution is possible in stigmem-node versions before 0.9.0a2 when a single configuration flag is used to
Cross-tenant broken object level authorization in stigmem-node before 0.9.0a12 allows an authenticated tenant in a multi
Availability disruption in stigmem-node 0.9.0a1 (pip package by eidetic-labs) allows authenticated federation peers to h
Blind Server-Side Request Forgery in Stigmem before 0.9.0a11 allows authenticated users to redirect the application serv
EUVD-2026-62478
GHSA-w3ff-rjv9-m452
NVD
CVE.org
EPSS
Exploit-DB