Katalog CVE

CVE-2025-61784

WysokieCVSS 7.6
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.38%

Percentyl 29 - wyżej niż 29% wszystkich znanych CVE

Streszczenie

LLaMA-Factory przed wersją 0.9.4 zawiera podatność SSRF w API czatu, która pozwala uwierzytelnionemu użytkownikowi na zmuszenie serwera do wykonywania dowolnych żądań HTTP do sieci wewnętrznych i zewnętrznych. Ta sama podatność umożliwia również odczyt dowolnych plików z systemu plików serwera (LFI). Problem występuje w funkcji `_process_request` w `src/llamafactory/api/chat.py`, która nie waliduje URL-i.

Ocena ryzyka

Atakujący może uzyskać dostęp do wrażliwych usług wewnętrznych, przeprowadzić rozpoznanie sieci wewnętrznej lub odczytać poufne pliki z serwera, co może prowadzić do naruszenia poufności i integralności danych.

Rekomendacja

Zaktualizuj LLaMA-Factory do wersji 0.9.4 lub nowszej, która naprawia ten problem. Dodatkowo ogranicz dostęp do API czatu tylko dla zaufanych użytkowników.

Inne podatności w LLaMA-Factory

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

LLaMA-Factory is a tuning library for large language models. Prior to version 0.9.4, a Server-Side Request Forgery (SSRF) vulnerability in the chat API allows any authenticated user to force the server to make arbitrary HTTP requests to internal and external networks. This can lead to the exposure of sensitive internal services, reconnaissance of the internal network, or interaction with third-party services. The same mechanism also allows for a Local File Inclusion (LFI) vulnerability, enabling users to read arbitrary files from the server's filesystem. The vulnerability exists in the `_process_request` function within `src/llamafactory/api/chat.py.` This function is responsible for processing incoming multimodal content, including images, videos, and audio provided via URLs. The function checks if the provided URL is a base64 data URI or a local file path (`os.path.isfile`). If neither is true, it falls back to treating the URL as a web URI and makes a direct HTTP GET request using `requests.get(url, stream=True).raw` without any validation or sanitization of the URL. Version 0.9.4 fixes the underlying issue.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS