Summary
CVE-2026-73541 is a resource-allocation vulnerability (CWE-770) in ZenHive’s mpp package — an Elixir implementation of the Machine Payments Protocol (MPP), an HTTP 402 payment middleware used for AI-agent and machine-to-machine commerce. The flaw resides in the Tempo fee-sponsorship feature, which validates each sponsored transaction’s fee individually but never tracks or bounds the sponsor’s aggregate exposure across concurrent requests. An unauthenticated remote attacker can exploit this to drain a fee-payer (sponsor) wallet by submitting many simultaneous sponsored transactions, resulting in high impact to availability and integrity of the sponsoring service.
Technical details
- Root cause:
MPP.Methods.Tempo.FeePayerPolicyand theMPP.Methods.Tempomodule enforce a per-transaction ceiling (max_total_fee) but apply no throttling or aggregate accounting across concurrently in-flight sponsored requests. As the vendor advisory states, committed sponsor exposure is effectively "N times max_total_fee, bounded by nothing in the library." - Trigger conditions: The target server must have Tempo fee sponsorship enabled (
method_configset with"fee_payer" => true). This is not the library default. - Compounding factor: The default 900-second transaction validity window keeps co-signed sponsored transactions broadcastable for an extended period, widening the window in which concurrently issued transactions can all still be settled against the sponsor wallet.
- Attack vector: Network — no authentication or user interaction is required. An attacker simply issues many simultaneous sponsored-payment requests to a vulnerable, sponsorship-enabled endpoint.
- Impact: Exhaustion/drain of the fee-payer (sponsor) wallet’s funds, causing denial of the payment-sponsorship service and integrity loss of the intended spending limits; confidentiality is not affected.
Affected software
- Package:
mpp(ZenHive), Hex packagepkg:hex/mpp, GitHubpkg:github/zenhive/mpp - Affected versions: 0.2.0 through versions prior to 0.12.0
- Precondition: Only deployments with Tempo fee sponsorship explicitly enabled (
"fee_payer" => true) are exploitable.
Severity
- CVSS v4.0 Base Score: 8.3 (High)
- Vector:
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N - Attack Vector: Network | Attack Complexity: Low | Attack Requirements: Present | Privileges Required: None | User Interaction: None | Confidentiality: None | Integrity: High | Availability: High
Mitigation and recommended actions
- Immediate: Upgrade
mppto version 0.12.0 or later, which introduces atomic aggregate fee-budget reservations enforced across concurrent requests with explicit worst-case-fee and reservation-count ceilings. - If unable to patch immediately:
- Disable Tempo fee sponsorship entirely by setting
"fee_payer" => false(this is the library’s default configuration). - If sponsorship must remain enabled, reduce
max_total_feeandmax_validity_window_secondsin the method configuration to minimize per-request and aggregate exposure until the upgrade can be applied.
- Disable Tempo fee sponsorship entirely by setting

