Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-79785— X-AnyLabeling before 4.0.0-beta.9 Improper Certificate Validation in Model Downloads

Quick assessment

Affected
CVHub520 X-AnyLabeling
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

X-AnyLabeling 的模型下载器禁用了 TLS 证书验证。 中的 函数使用 构建了上下文,并将其传递给 ,因此在进行任何模型下载时,既未验证证书链,也未校验主机名。模型通过 HTTPS 从项目的发布主机获取。由于缺乏双向验证,任何能够拦截该连接的第三方都可以用自己的内容响应请求。 下载的文件首先写入 文件,随后通过 原子性地替换为目标文件。下载后的唯一检查函数 仅验证文件格式,而未对其来源进行验证:未将文件的哈希值或签名与预期值进行比对。 对于 ONNX 目标格式,被替换的文件通过 的检查,随后被用于推理,

CVSS 5.9 · Medium

Affected Version Matrix 2

VendorProduct Version RangeStatus
CVHub520 X-AnyLabeling < 4.0.0-beta.9 affected
< 4.0.0b9 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-79785

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
X-AnyLabeling before 4.0.0-beta.9 Improper Certificate Validation in Model Downloads
Source: CVE Program / CVE List V5
Vulnerability Description
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.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
证书验证不恰当
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
CVHub520 X-AnyLabeling 0 ~ 4.0.0-beta.9 -
CVHub520 X-AnyLabeling 0 ~ 4.0.0b9 -

II. Public POCs for CVE-2026-79785

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-79785

登录查看更多情报信息。

Patches & Fixes for CVE-2026-79785 (2)

Vendor Advisories for CVE-2026-79785 (1)

Vendor Pages for CVE-2026-79785 (1)

Other References for CVE-2026-79785 (1)

IV. Related Vulnerabilities

V. Comments for CVE-2026-79785

No comments yet


Leave a comment