CVE-2026-110735
NiskieCVSS 2.5Streszczenie
Godot Engine do wersji 4.7.2 ma lukę typu heap out-of-bounds write w loaderze zasobów binarnych (core/io/resource_format_binary.cpp, ResourceLoaderBinary::get_unicode_string). Długość ciągu odczytana z pliku zasobu trafia do 32-bitowej liczby całkowitej ze znakiem i jest porównywana z rozmiarem bufora docelowego za pomocą porównania ze znakiem, co warunkowo zmienia rozmiar bufora. Wartość ujemna pomija zmianę rozmiaru, a następnie ta sama wartość jest przekazywana do procedury kopiującej jako liczba bajtów bez znaku, gdzie rozszerza się do ogromnej wartości, kopiując dane kontrolowane przez plik daleko poza zbyt małą alokację sterty.
Ocena ryzyka
Wczytanie spreparowanego pliku zasobu binarnego (.res) może doprowadzić do uszkodzenia pamięci sterty i potencjalnie do wykonania kodu w kontekście aplikacji.
Rekomendacja
Zaktualizuj Godot Engine do wersji zawierającej poprawkę i nie wczytuj niezaufanych plików .res w produktach oraz eksportowanych grach.
Inne podatności w Godot Engine
Zobacz wszystkie- CVE-2026-110736Niskie
Godot Engine do wersji 4.7.2 ma lukę typu out-of-bounds read w zoptymalizowanym loaderze tłumaczeń (core/string/optimized_translation.cpp, OptimizedTranslation::get_message). Przesunięcia odczytane z tablicy mieszającej spreparowanego zasobu .translation są używane jako indeksy do tablicy kubełków bez walidacji zakresu; odrzucana jest tylko pojedyncza wartość sentinela. Spreparowany plik może wskazać indeks daleko poza zaalokowanym buforem, powodując awarię lub zwrócenie surowych bajtów z pamięci procesu jako przetłumaczonego ciągu, co ujawnia pamięć procesu.
- CVE-2026-110734Niskie
Godot Engine do wersji 4.7.2 ma lukę typu heap out-of-bounds write w dekoderze obrazów Radiance HDR (.hdr) (modules/hdr/image_loader_hdr.cpp). Pętla dekodowania RLE rozwija instrukcje RLE odczytane z pliku do bufora o rozmiarze wynikającym z wymiarów obrazu, bez sprawdzenia, czy liczba powtórzeń lub kopiowanych bajtów mieści się w pozostałej pojemności bufora wiersza. Spreparowany plik .hdr zapisuje więc dane dostarczone przez atakującego poza końcem alokacji sterty, a długość i zawartość przepełnienia są kontrolowane przez plik.
Oryginalny opis (angielski, źródło NVD)
Godot Engine through 4.7.2 has a heap out-of-bounds write exists in the binary resource loader (core/io/resource_format_binary.cpp, ResourceLoaderBinary::get_unicode_string). A string length is read from the resource file into a signed 32-bit integer and compared against the destination buffer size with a signed comparison, which conditionally resizes the buffer. A negative length value skips the resize; the same value is then passed to the copy routine as an unsigned byte count, where it sign-extends to a huge value, copying file-controlled data far past the undersized heap allocation. The defect is reached when the product or an exported game loads a crafted binary resource file (.res). NOTE: the Supplier's position is that the research has identified "no security issues" because the required attacker access is outside of the current Godot Engine threat model.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

