Radare2 zawiera podatność typu use-after-free w funkcji get_none_object parsera plików PYC (skompilowany Python). Luka umożliwia atakującemu odczyt zwolnionej pamięci, co może prowadzić do odmowy usługi (DoS).
▸ Pokaż oryginał (EN)
Radare2 has a use-after-free vulnerability in pyc parser's get_none_object function. Attacker can read freed memory afterwards. This will allow attackers to cause denial of service.
Podatność wynika z błędu zarządzania pamięcią w funkcji get_none_object wchodzącej w skład parsera plików PYC narzędzia Radare2. Po zwolnieniu obiektu w pamięci aplikacja nie unieważnia wskaźnika, co pozwala na dalszy odczyt już zwolnionego obszaru pamięci (use-after-free). Atakujący może dostarczyć specjalnie spreparowany plik PYC, który wyzwoli ten błąd podczas analizy.
Atakujący może doprowadzić do odmowy usługi (DoS) poprzez wywołanie nieprawidłowego dostępu do zwolnionej pamięci. Odczyt tej pamięci może destabilizować działanie procesu Radare2 lub powodować jego awaryjne zakończenie.
Należy zaktualizować Radare2 do wersji zawierającej commit naprawczy 5e16e2d1c9fe245e4c17005d779fde91ec0b9c05 dostępny w oficjalnym repozytorium GitHub. Należy zastosować patche dostępne u producenta zgodnie z referencjami.
Radare2 (produkt firmy Radareorg) — konkretne wersje podatne wskazane w referencjach producenta (commit naprawczy dostępny w repozytorium GitHub).
Mimo oceny CVSS 10.0 (CRITICAL), opisany w zgłoszeniu skutek podatności ogranicza się do odmowy usługi (DoS). Podatność nie jest ujęta w katalogu CISA KEV. Szczegóły błędu dostępne w issue #18666 repozytorium Radare2 na GitHub.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HRadare Radare2
APPRadare5.3.0
Powiązane podatności
Buffer overflow w radare2 — przepełnienie bufora pamięci (CVSS 10.0)
Krytyczny Out-of-bounds Write (heap buffer overflow) w Radare2
Buffer Overflow w Radare2 umożliwiający wykonanie dowolnego kodu (RCE)
Out-of-bounds read w Radare2 – funkcja print_insn32_fpu (NDS32)
Out-of-bounds read w Radare2 — funkcja print_insn32 (NDS32)