首页
社区
课程
招聘
[分享]AI供应链安全:Xinference存在未授权访问漏洞(CVE-2025-45424)
发表于: 1天前 236

[分享]AI供应链安全:Xinference存在未授权访问漏洞(CVE-2025-45424)

1天前
236


漏洞名称
Xinference未授权访问
产品名称Xinference
产品简介一个集成多种模型推理和应用的开源平台,应用十分广泛
影响版本v1.7.0及之前的全部版本
漏洞编号CVE-2025-45424、CNVD-2025-16168
漏洞类型未授权访问
漏洞成因Xinference的auth_config_file参数值默认为空,导致其默认未配置身份验证
危害等级中危
利用条件默认配置且互联网可连接
漏洞危害攻击者可以实现窃取敏感模型资产、滥用模型计算资源、恶意删除模型和拒绝服务等
安全建议1.安全自查;2.避免资产暴露公网;3.增加身份验证,修改默认配置


一、产品概述

Xorbits Inference (Xinference) 是一个开源平台,用于简化各种 AI 模型的运行和集成。借助 Xinference,您可以使用任何开源LLM、嵌入模型和多模态模型在云端或本地环境中运行推理,并创建强大的 AI 应用。


Xinference功能强大且用途十分广泛当前Xinference支持分布式推理、VLLM增强,能够与DifyFastGPTRAGFlow等主流人工智能平台集成。借助Xinference,我们可以轻松部署并使用模型推理。


(图 Xinference GithubStarHistory


二、漏洞描述

Xinference作为一个集成多种模型推理及应用的开源平台,存在CVE-2025-45424漏洞。其漏洞成因是由于Xinference默认未设置身份验证。


对于存在漏洞且暴露在互联网中的Xinference极易遭受攻击攻击者可以实现窃取敏感模型资产、滥用模型计算资源、恶意删除模型和拒绝服务等操作。


三、漏洞危害

从攻防对抗视角分析,暴露在公网环境的 Xinference 实例将成为黑客的重要攻击目标。具体攻击链可分为三个阶段:


1. 探测阶段:通过端口扫描(默认端口通常为 9997)与指纹识别,快速定位存在漏洞的资产;


2. 利用阶段:调用模型部署、任务提交等 API 接口,实现无授权操作;


3. 破坏阶段:根据攻击目的实施针对性破坏,包括但不限于:


    a. 盗取预训练模型权重文件(尤其针对企业私有训练的垂直领域模型);

    b. 发起算力劫持(将目标设备纳入僵尸网络参与加密货币挖矿或分布式计算任务);

    c. 执行模型文件删除操作(通过 DELETE 请求删除关键模型存储路径);

    d. 构造畸形输入触发 OOM(内存溢出)实现拒绝服务。


四、资产暴露现状

截止20256月,我们通过fofa搜索引擎搜索相关资产,并快速完成筛选。发现互联网上暴露的可被利用资产不低于3795。这说明当前安全形势十分严峻。


五、官方响应及背书


确认该漏洞有效后,我们立即向CNVDCVE等官方团队提交了详尽技术报告(含POC复现、EXP攻击脚本、修复方案)。官方团队快速响应,并给予漏洞编号。


六、漏洞成因剖析


本例中分析的xinference源码版本为0.28。

进入xinference/api/restful_api.py源码文件中,可以看到fastapi的相关路由和接口。

分析源码,可知:

除/v1/models/prompts、/v1/models/vllm-supported、/v1/cluster/info等路由外,其他路由均存在权限验证的身份依赖。

再次分析路由的权限验证身份依赖,源码如下。

此处对源码进行解读:如果想要执行/v1/models/{model_uid} 路由,那么必须通过dependencies。

在dependencies中,如果self.is_authenticated()的值为Ture,即系统启用认证的情况下,为 API 路由添加一个权限检查依赖项,要求访问该路由的用户必须具有 models:stop 权限。

如果系统未启用认证,则不进行权限检查。

继续追踪self.is_authenticated() 方法,代码如下所示。

我们发现self.is_authenticated()的值与self._auth_service.config 有关,若self._auth_service.config为空,则返回False。

而通过self._auth_service 可以追踪到AuthService(auth_config_file)方法。

AuthService方法存在于xinference/api/oauth2中,相关源码如下所示。

通过上述源码,我们进一步分析,可以得到结论如下:_auth_service.config的值就是AuthService类中self._config的值,而self._config 的值由self.init_auth_config()返回。

而self.init_auth_config()返回的值,由auth_config_file来确定。

重点:如果auth_config_file为空,则self.init_auth_config()返回的值也为空。

在RESTfulAPI路由中,auth_config_file的值是多少呢?进一步查看,发现默认为空。

因此可以得出结论如下:

Xinference默认情况下auth_config_file 文件为空,导致权限默认为未设置。

Xinference默认配置下,攻击者可以未授权访问任意FastAPI路由,实现模型调用、模型删除等操作。


七、安全建议


基于上述分析,我们建议相关企业及个人用户立即采取以下措施:


首先,开展全面自查,确认自身 Xinference 部署是否受该漏洞影响;


其次,严格管控网络暴露面,非必要情况下避免将服务直接暴露于公网;


最后,强制启用并增强身份验证机制,如部署多因素认证、访问密钥管理等安全措施,从源头阻断未授权访问路径。



八、参考资料

bd7K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6Z5L8$3&6&6M7%4W2S2L8X3N6Q4x3V1k6j5K9h3&6X3k6i4u0W2L8X3y4W2i4K6u0r3j5X3I4G2j5W2)9J5c8X3#2S2K9h3&6Q4x3V1k6j5K9h3&6X3k6i4u0W2L8X3y4W2i4K6g2X3g2$3g2T1i4K6u0r3h3r3W2F1k6X3g2J5k6h3&6U0k6g2)9#2k6W2N6W2j5W2)9#2k6V1g2z5i4K6u0W2k6r3!0U0P5l9`.`. 

8b9K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6^5L8%4u0T1K9i4c8K6j5h3W2Q4x3V1k6A6L8X3k6W2M7X3g2F1j5$3f1`.

ab8K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6A6L8X3k6W2M7X3g2F1j5$3g2Q4x3X3g2J5k6h3q4V1N6r3S2W2k6r3!0U0M7#2)9J5k6h3W2G2i4K6u0r3P5X3S2Q4x3X3c8U0L8W2)9J5c8X3I4S2N6r3g2K6N6q4)9J5c8X3W2F1k6r3g2^5i4K6u0W2K9s2c8E0L8l9`.`.


结语

CVE-2025-45424 漏洞本质上是开源框架安全设计缺陷:Xinference 默认不启用身份验证,将安全责任完全转嫁给用户。


 我们通过资产探测,发现大量暴露公网且存在漏洞的资产,说明当前AI安全的形势十分严峻。从业务角度来讲,攻击者能够直接盗取模型敏感信息,滥用算力进而影响正常业务响应,通过恶意删除模型导致业务中断,其后果是难以评估的。


  应对问题的核心在于落实安全措施:自查公网暴露状态与认证配置,非必要不暴露服务,按官方规范启用 auth_config_file 及多因素认证,阻断未授权访问路径。




传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回