W bibliotece Assimp (do wersji 6.0.2 włącznie) istnieje podatność typu heap buffer overflow w module importera plików FBX. Atakujący może dostarczyć spreparowany plik FBX, który prowadzi do przepełnienia bufora na stercie, co stanowi poważne zagrożenie dla integralności i dostępności systemu.
▸ Pokaż oryginał (EN)
Buffer Overflow vulnerability exists in Assimp versions up to 6.0.2 in the FBX Importer. The vulnerability occurs in aiMaterial::AddBinaryProperty, where a property key string from a crafted FBX file is copied into a fixed-size heap buffer using strcpy() without runtime length validation
Podatność występuje w funkcji aiMaterial::AddBinaryProperty, odpowiedzialnej za przetwarzanie właściwości materiałów podczas wczytywania pliku FBX. Ciąg znaków stanowiący klucz właściwości jest kopiowany do bufora o stałym rozmiarze na stercie przy użyciu funkcji strcpy(), bez wcześniejszej weryfikacji długości wejściowego łańcucha. Atakujący może osadzić w spreparowanym pliku FBX nadmiernie długi klucz właściwości, powodując przepełnienie bufora (CWE-122 — heap-based buffer overflow) i nadpisanie sąsiednich obszarów pamięci.
Udane wykorzystanie podatności może umożliwić atakującemu wykonanie dowolnego kodu (RCE) w kontekście procesu przetwarzającego plik FBX, a także doprowadzić do naruszenia poufności i integralności danych lub całkowitej niedostępności aplikacji (crash). Brak wymagań dotyczących uwierzytelnienia i interakcji użytkownika (poza otwarciem pliku) znacząco podnosi ryzyko ataku.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Zaleca się aktualizację biblioteki Assimp do wersji wyższej niż 6.0.2, gdy tylko zostanie udostępniona. Tymczasowo należy unikać przetwarzania plików FBX pochodzących z niezaufanych źródeł oraz rozważyć sandboxowanie procesów obsługujących wczytywanie plików przy użyciu tej biblioteki.
Biblioteka Assimp (Open Asset Import Library) we wszystkich wersjach do 6.0.2 włącznie, korzystająca z importera plików FBX.
W referencjach dostępny jest publiczny proof-of-concept (gist na GitHub autorstwa GunP4ng), co może przyspieszyć pojawienie się aktywnych exploitów w środowisku naturalnym.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H