Vulnerability in @insumermodel/mppx-condition-gate (CVE-2026-104891)
Summary
Vulnerability in @insumermodel/mppx-condition-gate (CVE-2026-104891). Confidential information can be exposed externally. Exploitable via mppx. Mitigation: upgrade to 3.0.0 or later.
Original description
The description as published by the source.
Impact
Both packages wrap an mppx payment method so that a wallet meeting on-chain conditions is granted free access instead of being charged.
The free-access path reads the payer address from credential.source — a client-supplied DID in the payment credential — asks InsumerAPI whether that address satisfies the configured conditions, and on a pass returns a successful receipt without ever calling the wrapped payment verifier. Nothing in that path establishes that the caller controls the wallet it named.
Because qualifying wallets are public chain state, an attacker does not need to guess one. Naming any qualifying address in credential.source is sufficient to obtain free access to a route that should have been paid for. An in-process cache (default TTL 300s, keyed on wallet and conditions) then re-serves the grant without re-evaluating.
mppx documents this requirement explicitly. Its type definitions describe source as "an asserted identity, not independent proof of control", and state that methods relying on it "must validate the relationship to the credential payload". These packages did not.
This is a defect in these wrapper packages, not in the attestation they consume. The attestation answers one question — does this wallet satisfy these conditions — and answered it honestly about the address it was given. Binding that address to the caller was the wrapper's responsibility.
Affected versions
Every published version of both packages is affe…
Source: NIST National Vulnerability Database NVD GitHub Advisory
Auto-generated summary
Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.
A vulnerability tracked as CVE-2026-104891 has been found in @insumermodel/mppx-condition-gate.
Attackers can target a specific entry point like mppx over the network to misuse the product.
Confidential information can be exposed externally. CVSS score: 7.5/10.
What to do: upgrade @insumermodel/mppx-condition-gate to 3.0.0 or later.
If unsure, ask your IT team or search "@insumermodel/mppx-condition-gate CVE-2026-104891" on the vendor's site.
CVE-2026-104891 (@insumermodel/mppx-condition-gate) — CWE-290 / CVSS v3 7.5
Attack vector: remote (network-reachable) / unauthenticated / no user interaction
Attack surface: mppx / credential.source / source
Patched: 3.0.0 — apply immediately
Workaround: Remove the condition gate from the payment method until a fixed version is installed, so all requests take the normal paid path.
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.
A vulnerability (CWE-290) exists in @insumermodel/mppx-condition-gate. Attackers reach the vulnerable code path via mppx without authentication.
Check the vendor advisory for the affected versions of @insumermodel/mppx-condition-gate. Attack surface: mppx / credential.source / source.
Severity: High (CVSS 7.5/10). Confidential information can be exposed externally.
Update to 3.0.0.
Workaround: Remove the condition gate from the payment method until a fixed version is installed, so all requests take the normal paid path.
Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r '@insumermodel/mppx-condition-gate' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.
Response actions
Concrete steps and command examples for SOC/SRE teams to execute in order
-
1Identify exposure identify
grep -r '@insumermodel/mppx-condition-gate' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
@insumermodel/mppx-condition-gateを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply temporary workaround mitigate
Remove the condition gate from the payment method until a fixed version is installed, so all requests take the normal paid path.パッチが適用されるまでの応急処置として、Remove the condition gate from the payment method until a fixed version is installed, so all requests take the normal paid path. を実施。回避策の副作用 (機能低下) を確認した上で。
-
3Apply patch patch
Upgrade @insumermodel/mppx-condition-gate to 3.0.0ステージング環境で 3.0.0 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
4Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
Affected packages
References
- advisory nvd.nist.gov
- package github.com
- web github.com
- web github.com
- web github.com
- web github.com
- web github.com