首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >「AI开源组件安全风险」系列一:配置缺陷,让你的GPU沦为矿机

「AI开源组件安全风险」系列一:配置缺陷,让你的GPU沦为矿机

作者头像
云鼎实验室
发布2026-04-09 12:30:11
发布2026-04-09 12:30:11
1260
举报

引言

随着生成式AI技术的快速发展,ComfyUI、Stable Diffusion WebUI 等AI开源组件已成为 AI 应用开发的基础设施。然而,在这些组件快速迭代的背后,一个容易被忽视的安全问题正在浮现:AI开源组件的 Web 安全水位可能偏低,而其背后的高性能算力资源却成为黑产眼中的"香饽饽"

腾讯安全云鼎实验室长期聚焦于 AI 组件生态的安全风险研究,对主流AI开源组件进行了系统性的安全分析,发现了多类普遍存在的安全隐患。本文是「AI开源组件安全风险分析」系列的第一篇,将重点分析AI开源组件中因配置缺陷导致的安全漏洞——包括组件自身的设计缺陷,以及用户部署时的配置失误,并结合真实云上攻击案例进行深度剖析。后续我们将持续披露更多研究成果(如供应链安全,AI Infra安全等),敬请关注。

AI开源组件配置缺陷

一个普遍存在的安全问题

近年来,多个主流 AI 开源组件被披露存在因配置缺陷导致的高危问题。这类问题往往具有共同特点:组件为了易用性/可扩展性,提供了“可远程触发的高权限能力”;而默认配置、暴露面判断或配套鉴权措施不足时,就会被攻击者利用

典型案例(公开披露)

这些漏洞揭示了AI开源组件在安全设计上的共性问题:为了追求功能的灵活性和易用性,可能忽视了安全边界的控制

在对 AI 组件生态进行横向观察时,我们发现 Stable Diffusion WebUI(下称 SD WebUI)同样存在典型的“配置缺陷”风险。更值得关注的是:即便某些保护机制已在项目侧引入,仍会因为“反向代理暴露、端口转发、多用户共享、升级滞后”等现实部署场景,导致公网中持续存在大量高风险实例。

深度分析

Stable Diffusion WebUI的配置缺陷

⚠️ 重要说明:此漏洞于2023年被披露,属于已知的Nday漏洞(CNVD-2023-81119)。官方已提供有效修复方案——通过 disable_extension_access 参数默认禁止公网环境下的远程扩展安装。请所有用户立即检查并更新至最新版本,并参照本文末尾「安全配置建议」进行安全加固,避免因配置不当或版本滞后导致实例暴露于风险之中

3.1 漏洞原理

漏洞的原理非常直接:攻击者可以远程安装恶意扩展插件,从而实现任意代码执行。 在SD WebUI的代码中,扩展安装流程会直接执行插件目录下的install.py脚本:

代码语言:javascript
复制
# SD WebUI 扩展安装代码(简化)
def run_extension_installer(extension_dir):
    path_installer = os.path.join(extension_dir, "install.py")
ifnot os.path.isfile(path_installer):
return

try:
        env = os.environ.copy()
        env['PYTHONPATH'] = f"{script_path}{os.pathsep}{env.get('PYTHONPATH', '')}"

        # 危险:直接执行远程扩展的install.py脚本
stdout = run(f'"{python}""{path_installer}"', 
                    errdesc=f"Error running install.py for extension {extension_dir}")
        if stdout:
            print(stdout)
    except Exception as e:
        errors.report(str(e))

这意味着,一旦用户安装了恶意扩展,攻击者编写的任意Python代码就会在目标机器上执行。

3.2 官方修复方案

CNVD-2023-81119漏洞披露后,SD WebUI官方的修复方案是在安装远程插件之前增加了检查机制:

代码语言:javascript
复制
# 安装前的安全检查(官方修复)
if disable_extension_access == True:
return  # 禁止远程安装扩展

关键参数:disable_extension_access

这个参数是官方修复的核心,其值由多个启动配置共同决定:

代码语言:javascript
复制
# disable_extension_access 的判断逻辑
is_exposed_to_internet = any([
    cmd_opts.share,        # --share: 使用Gradio公共分享链接
    cmd_opts.listen,       # --listen: 监听0.0.0.0允许外部访问
    cmd_opts.ngrok,        # --ngrok: 使用ngrok隧道
    cmd_opts.server_name   # --server-name: 指定非默认服务器名称
])

disable_extension_access = is_exposed_to_internet andnot cmd_opts.enable_insecure_extension_access

官方修复后的安全逻辑解析:

图片
图片

3.3 为什么公网仍存在大量可攻击实例

虽然官方已经默认对开到公网的服务加了限制,但我们实际发现外网的机器多数都开启了扩展安装功能,可被此漏洞攻击

可能的原因:

  • 服务开启在本地,通过反向代理或端口转发暴露到公网:用户在本地启动SD WebUI(此时扩展安装默认开启),然后通过Nginx反向代理、frp、ngrok、Cloudflare Tunnel等方式将服务暴露到公网。由于SD WebUI检测不到公网暴露,安全限制不会生效。
  • 主动开启了 --enable-insecure-extension-access:部分用户为了便利性,在启动命令中添加了此参数,强制允许远程安装扩展。
  • 使用的 Stable Diffusion WebUI 版本很老:2023年修复前的旧版本(<=1.6.0)完全没有 disable_extension_access 安全检查,任何公网可访问的实例都可被直接攻击。

云上威胁态势

通过腾讯云主机安全和网络入侵等产品的安全感知能力,我们捕获到多起真实的云上 SD WebUI 失陷事件,以其中一次真实入侵事件为例,还原了攻击者从初始入侵到挖矿牟利的完整攻击链路。

图片
图片

整个攻击过程分为以下四个阶段:

  • 阶段一:初始入侵。受害主机以 --listen 模式启动 SD WebUI,扩展安装 API 暴露于公网。攻击者远程安装了恶意扩展,安装后即为攻击者提供了一个持久化的 Web Shell。
  • 阶段二:信息收集。攻击者通过 Web Shell 执行了 whoami、ps aux、lscpu、uname -a、nvidia-smi 等命令,快速确认当前用户权限、运行环境和 GPU 算力情况,评估主机的利用价值。
  • 阶段三:持久化。攻击者下载并安装了 sshx 远程终端工具,随后执行 sshx -q > /var/tmp/sshx_link.txt 生成远程访问链接。sshx 是一个开源工具,被攻击者滥用为反向隧道后门,通过浏览器即可获得完整 Shell 权限,属于无文件持久化技术,更难被检测。
  • 阶段四:目标达成。攻击者下载 XMRig v6.22.2 挖矿程序,将其重命名为 rdxr 以规避进程名检测,连接矿池。最终通过 nohup + trap + while true 无限循环实现持久化挖矿,确保进程被杀死后自动重启。

五、核心问题

高性能算力成为黑产新目标

行业特点导致安全水位偏低

5.1 传统Web应用 vs AI开源组件

5.2 黑产的新目标:高性能GPU算力

AI开源组件的典型硬件配置:

  • 消费级:RTX 4090(24GB显存)
  • 专业级:NVIDIA A10(24GB显存)
  • 企业级:A100(40GB/80GB显存)

这些GPU的算力价值:

  • 挖矿收益:单张4090每日可产生5-10美元的挖矿收益
  • AI算力租赁:A100的云端租赁价格高达每小时2-4美元
  • 规模化攻击:批量控制100台机器,月收益可达数万美元

5.3 为什么AI开源组件安全水位偏低?

技术栈侧重不同

  • AI 组件开发者通常更专注于模型算法与推理效果,Web 安全并非其核心关注领域
  • 这与传统 Web 开发团队长期积累的安全经验形成了客观差异

快速发展阶段的共性挑战

  • AI 开源生态正处于高速发展期,功能迭代速度快,安全审查机制尚在完善中
  • 第三方扩展生态蓬勃发展的同时,统一的安全规范和准入标准仍在建立过程中

部署场景的复杂性

  • 部分组件在设计时主要面向本地或可信环境使用
  • 但实际部署中,公网暴露、反向代理转发、多用户共享等场景较为普遍,超出了原始设计预期

依赖管理的混乱

  • Python等语言生态的依赖问题
  • 扩展插件权限过高

纵深防御

如何保护AI开源组件安全

面对AI开源组件的安全威胁,需要从网络边界到主机层面构建纵深防御体系。

6.1 腾讯云安全产品方案

腾讯云NDR 腾讯云容器安全入侵防御模块支持对漏洞的后利用恶意行为的检测

图片
图片

6.2 安全配置建议

  • 优先本地访问:默认仅监听本地地址,避免直接暴露公网
  • 启用认证:如需远程访问,务必配置访问认证
  • 反向代理加固:如通过Nginx反向代理,可以在配置时添加基础认证

结语

本文作为「AI开源组件安全风险分析」系列的第一篇,重点分析了因配置缺陷导致的安全漏洞。从ComfyUI-Manager到Stable Diffusion WebUI,我们看到:

  • AI开源组件的扩展安装机制普遍缺乏安全控制
  • 配置参数的复杂性增加了用户出错的概率
  • 公网中仍存在大量可被攻击的脆弱实例

关于我们

腾讯安全云鼎实验室长期深耕云安全领域,持续关注AI生态的安全问题。

腾讯云提供完整的云原生安全产品矩阵,可有效应对AI开源组件面临的安全威胁:

  • 腾讯云主机安全:漏洞检测能力,实时监控异常进程,阻断恶意程序,主机安全的最后一道防线。
  • 腾讯云WAF:支持Web漏洞的检测和防护。
  • 腾讯云防火墙:精细化的访问控制和入侵防御。
  • 腾讯云NDR:网络流量深度分析,发现C2通信和横向移动。
图片
图片

END

更多精彩内容点击下方扫码关注哦~

关注云鼎实验室,获取更多安全情报

图片
图片
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-03-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云鼎实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档