Katalog CVE

CVE-2026-79785

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

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.18%

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

Streszczenie

W X-AnyLabeling pobieranie modeli wyłącza weryfikację certyfikatów TLS. Funkcja download_with_retry używa niezweryfikowanego kontekstu SSL, co pozwala atakującemu przechwycić połączenie i podmienić pobierany model. Podmieniony plik może być użyty do wykonania dowolnego kodu lub wpłynięcia na wyniki adnotacji.

Ocena ryzyka

Ryzyko obejmuje możliwość zdalnego wykonania kodu na maszynie użytkownika oraz manipulację wynikami działania aplikacji. Atakujący może przechwycić ruch sieciowy i dostarczyć złośliwy model.

Rekomendacja

Zaleca się aktualizację X-AnyLabeling do wersji, która weryfikuje certyfikaty TLS. Należy również unikać korzystania z niezaufanych sieci lub skonfigurować odpowiednie zabezpieczenia sieciowe.

Powiązane podatności

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

X-AnyLabeling's model downloader disabled TLS certificate verification. download_with_retry in anylabeling/services/auto_labeling/model.py built a context with ssl._create_unverified_context() and passed it to urllib.request.urlopen, so neither the certificate chain nor the hostname was checked on any model download, and models are fetched over HTTPS from the project's release host. Any party positioned to intercept that connection could therefore answer it with content of their own choosing. The response is written to a .part file and moved into place with os.replace, and the only post-download check, safe_check_model, validates the file's format rather than its provenance: no hash or signature is compared against an expected value. For an ONNX target the substituted file passes onnx.checker.check_model and is then used for inference, so the attacker chooses the model that produces the application's annotations. For a .pth or .pt target, which the shipped SAM2 video, YOLOE, UPN and open_vision configurations use, the check worker calls torch.load without weights_only, so a substituted file is unpickled and executes code of the attacker's choosing on PyTorch releases predating the weights_only default.

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