CVE-2026-59252
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 29 - wyżej niż 29% wszystkich znanych CVE
Streszczenie
Podatność w bibliotece mpp (ZenHive) pozwala nieuwierzytelnionemu zdalnemu klientowi na drenowanie portfela opłacającego opłaty (fee-payer) poprzez wysyłanie transakcji EVM z celowo zaniżonym limitem gazu. Powoduje to, że serwer współpodpisuje i rozgłasza transakcję, która kończy się niepowodzeniem z powodu braku gazu, ale portfel opłacający jest obciążany kosztami spalonego gazu, podczas gdy atakujący nie ponosi kosztów. W rezultacie dochodzi do odmowy usługi dla legalnych klientów, ponieważ portfel opłacający wyczerpuje środki.
Ocena ryzyka
Organizacja narażona jest na wyczerpanie środków z portfela opłacającego opłaty, co uniemożliwia sponsorowanie gazu dla legalnych transakcji i prowadzi do przerwania działania usługi płatniczej. Atak może być przeprowadzony wielokrotnie przy minimalnym koszcie dla atakującego.
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę mpp do wersji 0.6.0 lub nowszej, która zawiera poprawkę walidacji limitu gazu. Do czasu aktualizacji zaleca się tymczasowe wyłączenie funkcji fee_payer lub ręczne sprawdzanie poprawności limitu gazu w transakcjach klienta.
Inne podatności w mpp
Zobacz wszystkie- CVE-2026-59695Wysokie
Podatność w bibliotece ZenHive mpp pozwala nieuwierzytelnionemu zdalnemu atakującemu na wyczerpanie portfela opłacającego opłaty w jednym żądaniu poprzez podanie dowolnie wysokiej ceny gazu. Biblioteka nie waliduje pól max_fee_per_gas i max_priority_fee_per_gas przed podpisaniem transakcji, co prowadzi do obciążenia portfela serwera zawyżonymi kosztami.
- CVE-2026-59694Wysokie
Podatność w bibliotece mpp (ZenHive) pozwala nieuwierzytelnionemu klientowi na zawyżenie kosztów gazu płaconych przez fee-payera poprzez dodanie dużej liczby wpisów do listy dostępu EIP-2930. Serwer podpisuje transakcję bez walidacji długości ani zawartości listy, co prowadzi do wielokrotnego wzrostu kosztów gazu.
Oryginalny opis (angielski, źródło NVD)
Improper Validation of Specified Quantity in Input in ZenHive mpp allows an unauthenticated remote client to drain the fee-payer wallet, resulting in denial of service for legitimate clients. When the mpp Elixir library is configured as fee payer (fee_payer: true), the MPP.Methods.Tempo payment method co-signs and broadcasts a client-supplied EVM transaction without first validating that the client-supplied gas_limit is sufficient to complete the intended call. A malicious client can submit a signed transferWithMemo transaction with gas_limit deliberately set just below the amount required for successful execution. The server co-signs the transaction and broadcasts it via rpc_broadcast_sync. The transaction runs out of gas during EVM execution and reverts, but the fee-payer wallet is still charged for the burned gas while the client pays nothing and receives no resource. Repeated requests from one or more malicious clients drain the fee-payer wallet at near-zero cost to the attacker, ultimately preventing the server from sponsoring gas for legitimate payment requests. The wait_for_confirmation = false (optimistic) path is also affected: it invokes simulate_payment_call via eth_call, but that simulation omits the gas parameter and therefore does not catch out-of-gas conditions. This issue affects mpp: from 0.2.0 before 0.6.0.

