CVE-2026-89420 in mpp
Resumen
por VulDB • 2026-09-22
Validación incorrecta de la cantidad especificada en el input en ZenHive mpp permite que un cliente con un canal de pago abierto obtenga recursos pagados sin ser cobrado.
MPP.Session.Actions.accept_voucher/3 en lib/mpp/session/actions.ex trata un voucher cuyo cumulativeAmount es igual al monto acumulado ya aceptado del canal como un éxito idempotente, devolviendo el canal sin cambios y sin llamar a maybe_spend/2. La credencial se verifica, el recurso protegido se sirve, y los valores de spent (gastados) y units (unidades) permanecen en su estado anterior. Dado que el servidor emite un nuevo challenge por solicitud y las claves del almacén de replay de credenciales se basan en el id del challenge y la payload, el mismo voucher firmado puede presentarse nuevamente bajo cada nuevo challenge, lo que significa que un único voucher pagado genera una cantidad ilimitada de unidades pagadas. El vector es accesible desde cualquier método construido sobre MPP.Session.Method a través de los transportes Plug, MCP, JSON-RPC y WebSocket.
Este problema afecta a mpp: desde la versión 0.14.0 hasta antes de la 0.16.2.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.