CVE-2023-37902
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 38 - wyżej niż 38% wszystkich znanych CVE
Streszczenie
Vyper to język programowania w Pythonie, który celuje w Ethereum Virtual Machine (EVM). Przed wersją 0.3.10, prekompilacja ecrecover nie wypełniała bufora wyjściowego, jeśli podpis nie był weryfikowany, co mogło prowadzić do fałszywych wyników weryfikacji podpisu.
Ocena ryzyka
Organizacje mogą być narażone na ryzyko akceptacji nieprawidłowych podpisów, co może prowadzić do nieautoryzowanego dostępu lub manipulacji danymi. Wykorzystanie tej podatności może skutkować poważnymi konsekwencjami finansowymi i reputacyjnymi.
Rekomendacja
Zaleca się aktualizację Vyper do wersji 0.3.10 lub nowszej, aby załatać tę podatność. Dodatkowo, warto przeprowadzić audyt kodu w celu identyfikacji potencjalnych miejsc, gdzie może wystąpić ta luka.
Oryginalny opis (angielski, źródło NVD)
Vyper is a Pythonic programming language that targets the Ethereum Virtual Machine (EVM). Prior to version 0.3.10, the ecrecover precompile does not fill the output buffer if the signature does not verify. However, the ecrecover builtin will still return whatever is at memory location 0. This means that the if the compiler has been convinced to write to the 0 memory location with specially crafted data (generally, this can happen with a hashmap access or immutable read) just before the ecrecover, a signature check might pass on an invalid signature. Version 0.3.10 contains a patch for this issue.

