What’s Vulnerable › Vulnerabilities
CVE-2026-89186: mpp writes Payment-Receipt and Cache-Control before the wrapped application runs, letting a consumer's own Cache-Control expose paid responses to shared caches
- Severity: medium (CVSS 6.3 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.5% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-09-16 · updated 2026-09-16
- Weakness: CWE-524
Description
Use of Cache Containing Sensitive Information in ZenHive mpp allows a shared HTTP cache to store a paid response and serve it to clients that never paid. MPP.Plug.verify_credential in lib/mpp/plug.ex sets payment-receipt and cache-control: private on the connection before the wrapped application runs, and registers no register_before_send/2 callback. Plug.Conn.put_resp_header/3 replaces an existing header, so a mounting application that sets its own cache-control on the paid resource (for example public, max-age=3600) silently overrides the private the library relies on, and a CDN or reverse proxy can then store the paid 200 together with its Payment-Receipt and serve both to unpaid clients. The library-level guarantee is therefore defeatable by the application it protects. For the same reason a downstream non-2xx response still carried Payment-Receipt, issuing a receipt for a response that delivered no resource. This issue affects mpp: from 0.1.0 before 0.16.2.
Affected products
- ZenHive mpp: from 0.1.0 before 0.16.2 — fixed in 0.16.2
How to fix
Upgrade to a fixed version: ZenHive mpp 0.16.2. Check the vendor advisory for mitigations.
References
- https://cna.erlef.org/cves/CVE-2026-89186.html
- https://github.com/ZenHive/mpp/commit/2d4d1d94aae7790ae0623063961adbeef171fa71
- https://github.com/ZenHive/mpp/commit/2fd91a5ecbd0b0ad2a4ac202b79659e8126dbc0b
- https://github.com/ZenHive/mpp/security/advisories/GHSA-82qh-vrvm-gqvc
- https://osv.dev/vulnerability/EEF-CVE-2026-89186
Get alerted when CVE-2026-89186 or the next vulnerability affects your stack