Katalog CVE

CVE-2021-48019

ŚrednieCVSS 4.8
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

Vyper w wersji przed 0.2.9 wdraża proxy forwarderów przez wbudowaną funkcję create_forwarder_to, która zgłasza stały rozmiar RETURNDATASIZE wynoszący 4096 bajtów zamiast rzeczywistego rozmiaru zwracanych danych. Wywołania przez te proxy mogą zwracać uszkodzone dane, gdy funkcja zwraca więcej niż 4096 bajtów bez sanityzacji danych zwrotnych, i powodują niepowodzenie ścisłych kontroli rozmiaru zwrotu, takich jak SafeERC20.safeTransfer.

Ocena ryzyka

Kontrakty inteligentne korzystające z forwarderów mogą otrzymywać uszkodzone dane, co prowadzi do błędnego działania logiki biznesowej, nieudanych transferów tokenów i potencjalnych strat finansowych. Organizacje używające Vyper do kontraktów DeFi są narażone na błędy integralności danych.

Rekomendacja

Zaktualizuj kompilator Vyper do wersji 0.2.9 lub nowszej i ponownie wdróż dotknięte kontrakty. Przeaudytuj kontrakty korzystające z create_forwarder_to pod kątem obsługi danych zwrotnych większych niż 4096 bajtów.

Inne podatności w Vyper

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

Vyper before 0.2.9 deploys forwarder proxies through the built-in create_forwarder_to function that report a fixed 4096-byte RETURNDATASIZE rather than the actual return data size. Calls through these proxies can yield corrupted data when a function returns more than 4096 bytes without return data sanitation, and fail strict return-size checks such as SafeERC20.safeTransfer.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS