Katalog CVE

CVE-2021-48018

WysokieCVSS 7.4
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

Vyper od wersji 0.2.13 przed 0.2.15 przydziela sloty pamięci dla blokad reentrancyjnych @nonreentrant w tych samych lokalizacjach co zmienne przechowywania kontraktu. Gdy wywoływana jest funkcja używająca @nonreentrant, ustawienie blokady nadpisuje nakładającą się zmienną przechowywania, uszkadzając stan kontraktu i łamiąc zamierzoną logikę kontraktu.

Ocena ryzyka

Uszkodzenie stanu kontraktu może prowadzić do nieprzewidzianych zachowań i potencjalnych strat finansowych. Może to podważyć zaufanie do kontraktów inteligentnych napisanych w Vyper.

Rekomendacja

Zaktualizuj Vyper do wersji 0.2.15 lub nowszej. Przeaudytuj istniejące kontrakty pod kątem użycia @nonreentrant i zmiennych przechowywania.

Inne podatności w Vyper

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

Vyper from 0.2.13 before 0.2.15 allocates storage slots for @nonreentrant reentrancy locks at the same locations as contract storage variables. When a function using @nonreentrant is called, setting the lock overwrites the overlapping storage variable, corrupting contract state and breaking the contract's intended logic.

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