LocalAI w wersji 2.17.1 zawiera krytyczną podatność umożliwiającą zapis plików w dowolne lokalizacje serwera poprzez atak typu 'tarslip' podczas automatycznej ekstrakcji archiwów. Może to prowadzić do zdalnego wykonania kodu (RCE) przez nadpisanie plików używanych przez serwer.
▸ Pokaż oryginał (EN)
mudler/LocalAI version 2.17.1 allows for arbitrary file write due to improper handling of automatic archive extraction. When model configurations specify additional files as archives (e.g., .tar), these archives are automatically extracted after downloading. This behavior can be exploited to perform a 'tarslip' attack, allowing files to be written to arbitrary locations on the server, bypassing checks that normally restrict files to the models directory. This vulnerability can lead to remote code execution (RCE) by overwriting backend assets used by the server.
Gdy konfiguracja modelu wskazuje dodatkowe pliki jako archiwa (np. .tar), LocalAI automatycznie ekstrahuje je po pobraniu. Mechanizm ten nie weryfikuje prawidłowo ścieżek zawartych w archiwum, co pozwala atakującemu na spreparowanie archiwum .tar zawierającego pliki z path traversal w nazwach (np. ../../). W efekcie pliki mogą być zapisywane poza przeznaczonym katalogiem modeli, omijając mechanizmy zabezpieczeń. Nadpisanie plików backendowych używanych przez serwer może następnie doprowadzić do RCE.
Atakujący może zapisać dowolne pliki w dowolnym miejscu systemu plików serwera, a przez nadpisanie zasobów backendowych — uzyskać zdalne wykonanie kodu (RCE) z uprawnieniami procesu LocalAI.
Należy zastosować patch dostępny w repozytorium producenta (commit a181dd0ebc5d3092fc50f61674d552604fe8ef9c na GitHub) i zaktualizować LocalAI do wersji zawierającej tę poprawkę. Zaleca się ograniczenie dostępu sieciowego do instancji LocalAI oraz restrykcję uprawnień procesu serwera do minimum niezbędnego.
mudler/LocalAI wersja 2.17.1
Podatność zgłoszona za pośrednictwem platformy huntr.com (bounty 752d2376-2d9a-4e17-b462-3c267f9dd229). Sklasyfikowana jako CWE-59 (Improper Link Resolution Before File Access — 'Link Following'), co odpowiada mechanizmowi ataku tarslip.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HMudler Localai
APPMudler2.17.1
Powiązane podatności
Command injection w LocalAI — pełne przejęcie systemu przez parametr backend
Path traversal w LocalAI umożliwiający usuwanie dowolnych plików
Command injection w mudler/LocalAI — endpoint transkrypcji audio
mudler/localai version 2.17.1 is vulnerable to remote code execution. The vulnerability arises because the loc...
mudler/localai version v2.21.1 contains a Cross-Site Scripting (XSS) vulnerability in its search functionality...