MS SWIFT WEB-UI远程代码执行漏洞分析与修复方案

本文详细分析了MS SWIFT WEB-UI组件中存在的远程代码执行漏洞(CVE-2025-41419),包括漏洞复现步骤、攻击原理、影响版本及修复方案。该漏洞源于命令拼接不当,攻击者可通过构造恶意参数实现任意命令执行。

CVE-2025-41419:MS SWIFT WEB-UI远程代码执行漏洞

漏洞详情

受影响版本

  • 受影响版本:< 3.7.0
  • 修复版本:3.7.0

漏洞描述

I. 详细描述

包含场景、截图、漏洞复现方法。对于账户相关漏洞,请提供测试账户。如果复现过程复杂,可以录制视频上传到Taopan并附上链接。

复现步骤:

  1. 安装ms-swift

    1
    
    pip install ms-swift -U
    
  2. 启动web-ui

    1
    
    swift web-ui --lang en
    
  3. 启动后通过浏览器访问 http://localhost:7860/ 查看启动的微调框架程序

  4. 填写必要参数 在LLM Training界面中,填写必要参数包括Model id、Dataset Code。–output_dir参数可以随意填写,因为稍后将通过抓包修改

  5. 点击Begin开始训练。抓包并修改对应–output_dir的参数 可以在启动web-ui的终端中看到正在执行的拼接命令

  6. 等待程序运行(测试显示至少需要5分钟),可以观察到命令执行创建文件的效果

II. 漏洞证明

1
/tmp/xxx'; touch /tmp/inject_success_1; #

III. 修复方案

  1. swift.ui.llm_train.llm_train.LLMTrain#train()方法在接收前端命令后,不应直接拼接参数与命令
  2. swift.ui.llm_train.llm_train.LLMTrain#train_local()方法不应使用os.system执行,应改为subprocess.run([cmd, arg1, arg2...])格式

技术信息

严重程度

  • 中等严重程度
  • CVSS评分:5.1/10

CVSS v4基础指标

可利用性指标:

  • 攻击向量:网络
  • 攻击复杂度:低
  • 攻击要求:存在
  • 所需权限:无
  • 用户交互:主动

脆弱系统影响指标:

  • 机密性:高
  • 完整性:低
  • 可用性:无

弱点分类

  • CWE-117:日志输出中和不当
  • 产品未对或错误地对写入日志的输出进行中和处理

参考信息

  • CVE ID: CVE-2025-41419
  • GHSA ID: GHSA-7c78-rm87-5673
  • 源代码: modelscope/ms-swift

致谢

发现者:TencentAISec 联系方式:security@tencent.com

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计