Wysoka

vyper vulnerable to storage allocator overflow

  • Ujawniono: 05.05.2023
  • Aktualizacja: 11.10.2026 15:17

Impact

The storage allocator does not guard against allocation overflows. This can result in vulnerabilities like the following:

vyper
owner: public(address)
take_up_some_space: public(uint256[10])
buffer: public(uint256[max_value(uint256)])

@external
def initialize():
    self.owner = msg.sender

@external
def foo(idx: uint256, data: uint256):
    self.buffer[idx] = data

Per @toonvanhove, "An attacker can overwrite the owner variable by calling this contract with calldata: 0x04bc52f8 fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff (spaces inserted for readability) 0x04bc52f8 is the selector for foo(uint256, uint256), and the last argument fff...fff is the new value for the owner variable."

Patches

patched in 0bb7203b584e771b23536ba065a6efda457161bb

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

References

Are there any links users can visit to find out more?

Czego dotyczy

Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.

PlatformaPaczkaPodatne wersjePoprawka w wersji
Python (PyPI) vyper < 0.3.8 0.3.8

Odnośniki

Ocena CVSS 7.5/10
Wektor CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Słabość (CWE)
CWE-789
Platforma
Python (PyPI)
Paczka
vyper
Ujawniono
05.05.2023
Aktualizacja
11.10.2026 15:17

Źródła i licencje

OSV / GitHub Advisory Database - PYSEC-2023-76 - PyPA Advisory Database; CC BY 4.0

OSV / GitHub Advisory Database - GHSA-mgv8-gggw-mrg6 - CC BY 4.0

Historia podatności: vyper

Wszystkie opisane podatności tej paczki (Python (PyPI)), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.

Wszystkie (47) w archiwum
Wszystkich wpisów
47
Pierwsza → ostatnia
03.2020 10.2026
Bez poprawki
5
Wykorzystywana w atakach
0

Rozkład istotności

  • Krytyczna 3
  • Wysoka 14
  • Średnia 20
  • Niska 10

Ujawnienia w latach

  1. 2020: 1
  2. 2021: 5
  3. 2022: 4
  4. 2023: 14
  5. 2024: 14
  6. 2025: 6
  7. 2026: 3
Istotność:
  1. Krytyczna · 9.8 CVE-2024-24563 < 0.4.0 0.4.0
  2. Krytyczna · 9.8 CVE-2024-24561 < 0.4.0 0.4.0
  3. Wysoka · 7.3 CVE-2024-22419 >= 0.3.0, < 0.4.0 0.4.0
  4. Wysoka · 7.5 CVE-2023-46247 < 0.3.8 0.3.8
  5. Wysoka · 8.1 CVE-2023-42443 >= 0.3.4, < 0.3.10 0.3.10
  6. Krytyczna · 8.7 CVE-2023-39363 >= 0.2.15, < 0.3.1 0.3.1
  7. Wysoka · 7.5 CVE-2023-32058 < 0.3.8 0.3.8
  8. vyper vulnerable to storage allocator overflow ten wpis
    Wysoka · 7.5 CVE-2023-30837 < 0.3.8 0.3.8
  9. Wysoka · 7.5 CVE-2023-30629 >= 0.3.1, < 0.3.8 0.3.8
  10. Wysoka · 7.5 CVE-2022-29255 < 0.3.4 0.3.4
  11. Wysoka · 7.1 CVE-2022-24788 < 0.3.2 0.3.2
  12. Wysoka · 7.5 CVE-2022-24787 < 0.3.2 0.3.2
  13. Wysoka ghsa-7f92-rr6w-cq64 >= 0.2.13, < 0.2.15 0.2.15

Dowiedz się, które podatności dotyczą Twojej aplikacji

Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.

Podłącz swoją aplikację
Newsletter DockRay

Bezpieczeństwo aplikacji w Twojej skrzynce

Najważniejsze podatności, konkretne zalecenia i praktyczne wskazówki dla Twoich aplikacji. Wybierz technologie i śledź to, co ma znaczenie dla Twojego projektu.

  • Codzienne zestawienie nowych podatności, także krytycznych.
  • Powiadomienia o ważnych aktualizacjach.
  • Praktyczne porady o bezpieczeństwie i monitoringu aplikacji.

Pozostaw puste, aby otrzymywać informacje o wszystkich technologiach.

Zapis jest bezpłatny. Wypiszesz się jednym kliknięciem w wiadomości.