Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify any qualifying wallet from public on-chain state
-
ExploitSend request with credential.source set to that wallet
-
ExecutionGate validates condition, skips payment verifier
-
ImpactReceive free-access receipt and replay cached grant
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Anti-spoofing controls
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitable only where a vulnerable version is deployed and actively using the free-access path: @insumermodel/mppx-condition-gate before 3.0.0, or @insumermodel/mppx-token-gate 1.0.0 through 1.0.3, configured with on-chain conditions to grant free access to otherwise-paid content. The attacker must name a wallet address that actually satisfies the configured condition (token balance or NFT ownership), but since qualifying wallets are public blockchain state this is a lookup, not a secret. No authentication, user interaction, or control of the named wallet is required (PR:N, UI:N), and default condition-gating configurations are affected. The primary limiting factor is scope of deployment, not exploit prerequisites; upgrading to the fixed versions, which require a provenPayer resolver and fall through to payment when control is unproven, eliminates the condition. |
| Impact | This is a genuine access-control bypass (CWE-290, Authentication Bypass by Spoofing) rather than a high-CVSS-but-low-real-risk issue, but its practical priority is tightly bounded by the affected software's tiny footprint. The signals are internally consistent: the NVD CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N, 7.5) matches the description - a remote, unauthenticated caller supplies credential.source and receives a free-access receipt with no proof of wallet control, and the qualifying wallets are public on-chain state, so there is nothing to brute-force or guess. The exploit is therefore trivially reliable where the vulnerable gate is deployed. However, no EPSS score, KEV listing, or public POC was provided in the intelligence; there is no public exploit identified at time of analysis and no evidence of active exploitation. The dominant risk-limiting factor is NOT exploit difficulty but deployment scarcity: these are obscure, now-deprecated npm packages for mppx crypto payment gating. Note the confidentiality-only scoring (C:H/I:N/A:N) is defensible since the impact is unauthorized access to paid content, though one could also frame payment-bypass as an integrity/business-logic concern - the vendor fix confirms the access-control reading. |
| Exploit ScenarioDerived | An attacker browsing a site that uses mppx-condition-gate (<3.0.0) or mppx-token-gate (<1.0.4) for paywalled content looks up any wallet that already satisfies the configured on-chain condition (e.g., holds the required token or NFT) - public chain data - and sends a request whose credential.source names that wallet. The gate confirms the address meets the condition and returns a free-access receipt without ever invoking the wrapped payment verifier or proving the caller controls the wallet, so the attacker receives the paid content for free, and the cached grant can be replayed for the configured cache lifetime. No public exploit code was identified, but exploitation is low-complexity and requires no authentication. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 05, 2026
An authentication bypass in the npm packages @insumermodel/mppx-condition-gate (before 3.0.0) and @insumermodel/mppx-token-gate (1.0.0 through 1.0.3) lets unauthenticated remote attackers obtain content that should require payment by simply naming any wallet address that satisfies the configured on-chain condition. The gates trusted the client-supplied credential.source as proof of payer identity instead of verifying wallet control, so since qualifying wallets are public blockchain state, no secret or wallet ownership is needed; cached free-access grants can also be reused for the configured cache lifetime. No public exploit code was identified at time of analysis, and practical risk is bounded by the small deployment footprint of these packages; the vendor-released fixes are @insumermodel/mppx-condition-gate 3.0.0 and @insumermodel/mppx-token-gate 1.0.4.
RemediationAI
Upgrade to the vendor-released fixed versions: @insumermodel/mppx-condition-gate 3.0.0 or later, and @insumermodel/mppx-token-gate 1.0.4. Note that the token-gate 1.0.4 fix does not restore the free-access feature - it removes the free-access path so all traffic takes the paid route (the API signature is preserved for compile compatibility, but receipt references and behavior change), so upgrade only after confirming that loss of free access is acceptable or after migrating to condition-gate v3. The condition-gate 3.0.0 migration requires supplying a provenPayer resolver, for example provenPayer: (details) => details.payer ?? null, which receives only method-specific validation details and falls through to payment whenever payer control is not proven. If upgrading immediately is not possible, disable condition-based free access entirely (stop configuring on-chain conditions that waive the wrapped payment verifier), accepting that legitimate wallet holders lose free access; alternatively, in deployments that cannot remove the feature, shorten the grant cache lifetime to reduce reuse of leaked free-access receipts, but be aware this is only a partial control because the core spoofing bypass remains. Full details and migration guidance are in the vendor advisory GHSA-jg6q-3qfh-r9f8 and the associated fix commits.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 4 packages in npm, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The affected code is a middleware-style wrapper for mppx payment methods that implements "conditional free access": if a caller's named wallet meets configured on-chain conditions (token balance or NFT ownership, checked against the configured chain such as EVM, Solana, XRPL, or Bitcoin), the gate issues a successful free-access receipt without invoking the wrapped payment verifier. The root cause is CWE-290 (Authentication Bypass by Spoofing): the gate read the payer address from the caller-supplied credential.source field, which mppx itself documents as "an asserted identity, not independent proof of control," and never established that the caller controlled that wallet. Because qualifying wallet addresses are public chain state, an attacker can look up any wallet meeting the configured threshold and claim free access; receipts issued as token-gate:free: can also be cached and reused for the configured cache lifetime. The fixed versions require a provenPayer resolver that only receives mppx's method-specific validation details (never the credential or source) and fall through to the paid path whenever a proven payer is unavailable. The legacy mppx-token-gate package removes the free-access path entirely rather than repairing it, since it has no mechanism to obtain a proven payer.
Know when npm 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
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Remote unauthenticated caller spoofs any public qualifying wallet with no interaction (AV:N/AC:L/PR:N/UI:N); impact is unauthorized access to paid content, so C:H with no integrity/availability effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
mppx-condition-gate provides conditional free-access wrappers for mppx payment methods. Prior to @insumermodel/mppx-condition-gate 3.0.0 and @insumermodel/mppx-token-gate 1.0.4, the packages read a wallet address from the client-supplied credential.source, checked whether that public address met configured on-chain conditions, and returned a successful free-access receipt without invoking the wrapped payment verifier or proving that the caller controlled the wallet. An unauthenticated attacker could name any qualifying wallet and obtain content that should require payment, and cached grants could be reused for the configured cache lifetime. The corrected packages prevent free-access authorization unless payer control has been established. These issues are fixed in @insumermodel/mppx-condition-gate 3.0.0 and @insumermodel/mppx-token-gate 1.0.4.
Technical POC Analysis
CWE-290 (Authentication Bypass by Spoofing), with a secondary CWE-863 (Incorrect Authorization) per the advisory.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Two npm packages used to gate paid content behind on-chain wallet conditions - @insumermodel/mppx-condition-gate and @insumermodel/mppx-token-gate - can be bypassed by anyone who names a qualifying wallet address, because the gates accept a client-supplied claim of payer identity rather than verifying actual wallet control. Any organization relying on these packages to monetize digital content or token-gated services should assume its paywall can be defeated without payment, undermining both revenue and the access controls that underpin paid-tier entitlements. Exposure is limited to the packages' small deployment footprint, but for affected teams the loss of monetization integrity is direct and immediate.
Apply vendor patch. Where upgrading cannot be completed immediately, disable or remove the affected gating packages, invalidate cached free-access grants, and require server-side verification of wallet ownership instead of trusting client-supplied credential.source values.
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.
The npm ci command in npm 7.x and 8.x through 8.1.3 proceeds with an installation even if dependency information in pack
DNS rebinding against the local Streamable HTTP MCP listener in @zereight/mcp-gitlab before 2.1.30 lets a malicious web
Archive extraction in the Node.js decompress package allows a crafted archive containing chained symlink entries to reso
The legacy DOC renderer in File Viewer emits document-controlled hyperlink targets into generated HTML after character e
Untrusted git configuration includes reachable through simple-git before 4.0.0 let an attacker execute arbitrary command
A remote, unauthenticated denial-of-service condition in the NestJS (Nest) microservices framework lets an attacker cras
Deeply nested brace patterns cause unbounded recursion in the npm brace-expansion library, exhausting the native stack a
Stack exhaustion in the npm library brace-expansion (all versions prior to 1.1.19, 2.1.5, 3.0.7, and 5.0.10) lets a craf
The JavaScript library ip-address (npm) fails to treat the NAT64 local-use prefix 64:ff9b:1::/48 as private, so applicat
Cross-family subnet comparisons in the ip-address npm library (all versions before 10.7.1) can cause isInSubnet and isHo
Denial of service in the ip-address JavaScript/npm library (all versions prior to 10.7.1) lets remote attackers stall or
A credential-isolation flaw in geelen mcp-remote 0.1.16 through 0.1.38 allows a remote attacker who controls or can pred
EUVD-2026-92447
GHSA-jg6q-3qfh-r9f8
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB