Katalog CVE

CVE-2025-66908

ŚrednieCVSS 5.3
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.44%

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

Streszczenie

Moduł Turms AI-Serving w wersji v0.10.0-SNAPSHOT i wcześniejszych zawiera podatność na niewłaściwą walidację typu pliku w funkcji przesyłania obrazów OCR. Kontroler OcrController w pliku turms-ai-serving/src/main/java/im/turms/ai/domain/ocr/controller/OcrController.java używa adnotacji @FormData(contentType = MediaTypeConst.IMAGE) do ograniczenia przesyłania do plików obrazów, ale to ograniczenie nie jest właściwie egzekwowane. System polega wyłącznie na dostarczanych przez klienta nagłówkach Content-Type i rozszerzeniach plików bez walidacji rzeczywistej zawartości pliku za pomocą magicznych bajtów (sygnatur plików). Atakujący może przesłać dowolne typy plików, w tym pliki wykonywalne, skrypty, HTML lub webshelle, ustawiając nagłówek Content-Type na "image/*" lub używając rozszerzenia pliku obrazu. To obejście umożliwia potencjalne wykonanie kodu po stronie serwera, przechowywany XSS lub ujawnienie informacji w zależności od tego, jak przesłane pliki są przetwarzane i serwowane.

Ocena ryzyka

Ryzyko obejmuje możliwość przesłania złośliwych plików, co może prowadzić do wykonania kodu po stronie serwera, przechowywanego XSS lub ujawnienia informacji, zagrażając integralności i poufności systemu.

Rekomendacja

Zaleca się natychmiastową aktualizację modułu Turms AI-Serving do wersji nowszej niż v0.10.0-SNAPSHOT oraz wdrożenie walidacji zawartości plików na podstawie magicznych bajtów, a nie tylko nagłówków Content-Type i rozszerzeń.

Powiązane podatności

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

Turms AI-Serving module v0.10.0-SNAPSHOT and earlier contains an improper file type validation vulnerability in the OCR image upload functionality. The OcrController in turms-ai-serving/src/main/java/im/turms/ai/domain/ocr/controller/OcrController.java uses the @FormData(contentType = MediaTypeConst.IMAGE) annotation to restrict uploads to image files, but this constraint is not properly enforced. The system relies solely on client-provided Content-Type headers and file extensions without validating actual file content using magic bytes (file signatures). An attacker can upload arbitrary file types including executables, scripts, HTML, or web shells by setting the Content-Type header to "image/*" or using an image file extension. This bypass enables potential server-side code execution, stored XSS, or information disclosure depending on how uploaded files are processed and served.

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