CVE-2026-59694 in mpp
요약
\~에 의해 VulDB • 2026. 07. 17.
ZenHive의 mpp에서 입력된 수량에 대한 검증 부재로 인해, 인증되지 않은 원격 클라이언트가 지불자(fee-payer)의 결제당 가스 비용을 큰 배수로 증가시켜 스폰서의 운영 마진을 악화시킬 수 있습니다.
mpp Elixir 라이브러리가 fee_payer: true로 구성된 경우, MPP.Tempo.Transaction.cosign_fee_payer/3 함수는 0x76 AASigned envelope의 클라이언트가 제공한 기본 필드를 길이 또는 내용을 검증하지 않고 그대로 재서명합니다. 여기에는 EIP-2930 액세스 리스트도 포함됩니다. EIP-2930 액세스 리스트 항목은 실행될 오퍼코드와 상관없이, 나열된 주소가 실제로 접근되는지 여부와 관계없이 각 주소당 약 2,400 가스, 스토리지 키당 1,900 가스의 고유 가스(intrinsic gas)를 발생시키며 이는 모든 연산 전에 부과됩니다. 악의적인 클라이언트는 유효한 transferWithMemo 호출과 함께 대량의 위조된 액세스 리스트 항목을 제출합니다. 서버는 이 트랜잭션에 공동 서명하고 브로드캐스트합니다. 의도된 전송은 정상적으로 실행되지만, 지불자 지갑은 예상 가스 비용의 큰 배수만큼을 아무런 대응되는 온체인 작업 없이 부담하게 됩니다.
유지 관리자의 기본 설정인 137개의 액세스 리스트 항목(헤더 필드당 10,000바이트 제한 내에 적합)과 최대 max_fee_per_gas 100 Gwei 기준, 결제당 가스 비용은 약 51,287에서 약 380,087 가스로 증가하며 이는 7.4배의 배율입니다. 지속적인 남용은 저비용 결제에 대한 스폰서의 운영 마진을 파괴하고, 시간이 지남에 따라 지불자 지갑을 고갈시킵니다.
이 문제는 mpp: 0.2.0부터 0.6.0 미만 버전에서 영향을 받습니다.
VulDB is the best source for vulnerability data and more expert information about this specific topic.