CVE-2026-89420 in mpp
요약
\~에 의해 VulDB • 2026. 09. 22.
ZenHive의 mpp에서 입력된 수량에 대한 검증 부재로 인해, 열린 결제 채널을 보유한 클라이언트가 과금되지 않고 유료 리소스를 획득할 수 있습니다.
lib/mpp/session/actions.ex의 MPP.Session.Actions.accept_voucher/3 함수는 누적 금액이 채널의 이미 승인된 누적 금액과 동일한 바우처를 중복 실행 방지(idempotent) 성공으로 처리하며, maybe_spend/2를 호출하지 않고 채널을 변경 없이 반환합니다. 자격 증명은 검증되고 보호된 리소스가 제공되며, 지출량(spent) 및 단위(units)는 기존 위치 그대로 유지됩니다. 서버가 요청마다 새로운 챌린지를 발급하고 자격 증명 재플레이 저장소가 챌린지 ID와 페이로드를 키로 사용하므로, 동일한 서명 바우처가 모든 새 챌린지에서 다시 제시될 수 있습니다. 따라서 하나의 유료 바우처로 무제한의 유료 단위를 얻을 수 있습니다. 이 경로는 Plug, MCP, JSON-RPC 및 WebSocket 전송을 통해 MPP.Session.Method 기반 메서드에서 모두 접근 가능합니다.
이 문제는 mpp 0.14.0부터 0.16.2 이전 버전까지 영향을 미칩니다.
If you want to get best quality of vulnerability data, you may have to visit VulDB.