Katalog CVE

CVE-2020-37288

NiskieCVSS 3.7
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

Kompilator Vyper w wersjach od 0.1.0b10 do 0.2.3 generuje niepoprawny kod dla instrukcji return wewnątrz pętli for w funkcji wewnętrznej wywoływanej co najmniej dwa poziomy wywołań w głąb, co prowadzi do nieprawidłowego celu skoku (stack underflow). Dotknięte kontrakty niepotrzebnie odrzucają takie wywołania, co w ograniczonych przypadkach może umożliwić atak odmowy usługi na publiczne kontrakty.

Ocena ryzyka

Może to powodować nieoczekiwane odrzucanie transakcji w inteligentnych kontraktach, a w skrajnych przypadkach umożliwić atakującemu wywołanie odmowy usługi na publicznych kontraktach.

Rekomendacja

Zaktualizuj kompilator Vyper do wersji 0.2.3 lub nowszej i ponownie skompiluj oraz wdróż dotknięte kontrakty.

Inne podatności w Vyper

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

Vyper from 0.1.0b10 before 0.2.3 generates incorrect code for a return statement inside a for loop in an internal function called two or more internal calls deep, producing an invalid jump destination (stack underflow). Affected contracts revert such calls unnecessarily, which in limited circumstances could enable denial of service against public contracts.

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