找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

3672

积分

0

好友

503

主题
发表于 昨天 20:11 | 查看: 4| 回复: 0

2025年初,随着DeepSeek R1的开源,凭借其优异的性能和低成本优势,迅速成为社区焦点。官网服务时常拥堵,许多开发者和企业开始转向本地部署方案,利用Ollama、LM Studio等工具将大模型能力引入内网或个人环境。

Google搜索“deepseek本地部署”结果

然而,这些便捷的AI工具在带来效率提升的同时,也暗藏着不容忽视的安全隐患。近期安全研究发现,一些广受欢迎的部署工具普遍存在安全漏洞。配置不当可能导致用户数据泄露、计算资源被窃取,甚至整个设备被控制。

本文将梳理这些流行工具中已知的安全问题,并介绍如何使用开源工具AI-Infra-Guard进行一键式风险检测与收敛。

一、Ollama的安全风险

Ollama是一款开源应用程序,允许用户在Windows、Linux和macOS上本地运行大型语言模型。它借鉴了Docker的设计理念,简化了AI模型的打包与部署流程,目前已成为个人电脑运行大模型最流行的方案之一,网络上多数DeepSeek R1本地部署教程也推荐使用它。

Ollama默认启动时会开放11434端口,通过RESTful API提供核心功能,如下载模型、上传模型、模型对话等。虽然默认配置下服务仅绑定到本地回环地址,但在使用Docker容器部署时,情况可能不同。

Ollama Docker镜像配置说明

Ollama的Docker镜像默认会以root权限启动,并且可能将服务暴露在公网上。更为关键的是,这些API接口普遍缺乏有效的鉴权机制。一旦攻击者通过扫描发现这些对外开放的服务,便可以发起多种攻击。

1)模型删除

攻击者可以直接调用DELETE /api/delete接口,删除服务器上的模型文件。

2)模型窃取

通过GET /api/tags接口可以查看服务器上存在的所有模型。Ollama支持自定义镜像源,攻击者可以搭建一个恶意镜像服务器,然后通过GET /api/pull接口,诱使目标Ollama服务从该源拉取模型,从而窃取私有模型文件。

3)算力窃取

同样先通过GET /api/tags接口获取模型列表,然后使用POST /api/generate请求进行对话,即可免费盗用目标机器的GPU/CPU算力资源。

4)模型投毒

攻击流程更为复杂:查看运行中的模型 -> 从恶意源下载有毒模型 -> 删除正常模型 -> 将有毒模型文件移动到正常模型的存储路径,从而污染使用者的对话结果。

5)远程命令执行漏洞 CVE-2024-37032

Ollama在2024年6月曾曝出一个严重的远程命令执行漏洞(CVE-2024-37032)。该漏洞CVSSv3评分为9.1,影响0.1.34之前的所有版本。攻击者通过自建镜像服务器并伪造manifest文件,可实现任意文件读写,最终达到远程代码执行的目的。

缓解方案

  • 立即升级:将Ollama升级到最新版本。
  • 网络隔离:运行ollama serve时,务必确认环境变量OLLAMA_HOST设置为本地地址(如127.0.0.1),避免服务暴露在公网。
  • 增加代理:如需对外提供访问,建议仅在本地运行Ollama,然后通过反向代理工具(如Nginx)增加访问控制和鉴权层。

据统计,目前公网上仍有约4万个未设防的Ollama服务。请务必检查您的部署环境是否安全。

FOFA搜索引擎发现的公网Ollama服务

二、OpenWebUI的安全问题

OpenWebUI是目前最流行的大模型对话Web界面,集成了聊天、图片上传、RAG等多种功能,并能方便地与Ollama集成,也是DeepSeek本地化部署的常见搭配。然而,它在历史上也出现过不少安全漏洞。

【CVE-2024-6707】文件上传路径遍历漏洞

当用户通过OpenWebUI的HTTP界面点击消息输入框左侧的“+”号上传文件时,文件会被存储到静态上传目录。系统未对上传文件名进行充分校验,攻击者可以构造包含路径遍历字符(如../../)的文件名,从而将文件上传到服务器任意目录。

攻击者可通过上传恶意模型文件(包含可被反序列化执行的Python对象),或直接上传SSH公钥文件(authorized_keys)到对应用户的.ssh目录,实现远程命令执行。

攻击流程图如下:
OpenWebUI文件上传漏洞攻击流程

缓解方案

  • 将OpenWebUI升级到已修复该漏洞的最新版本。
  • 审慎开启多用户系统功能,若非必要,建议关闭。

三、ComfyUI的插件生态风险

ComfyUI是目前最流行的稳定扩散(Diffusion)模型工作流应用,以其丰富的插件生态和高度可定制的节点系统闻名,广泛应用于文生图、图生视频等领域。

与Ollama类似,ComfyUI最初可能仅为本地使用设计,默认没有任何鉴权机制。但在实际中,存在大量对外开放访问的ComfyUI实例。

FOFA发现的公网ComfyUI服务

ComfyUI的强大离不开其插件生态,但许多插件由个人开发者维护,对安全性的关注可能不足。安全研究团队在过去一年中就发现了多个ComfyUI核心及其插件的安全漏洞。

历史发现的部分漏洞列表:
ComfyUI历史漏洞列表

以上漏洞影响范围广泛,涉及ComfyUI核心代码(包括当时的最新版本)及多个流行插件,可能造成远程命令执行、任意文件读写、数据窃取等严重后果。

缓解方案

由于部分漏洞修复周期较长,且新版本可能仍存在未公开的安全问题,强烈不建议将ComfyUI服务直接暴露在公网环境中使用。

四、AI-Infra-Guard:AI基础设施风险一键检测

面对日益复杂的AI应用安全态势,传统安全工具往往难以覆盖这些新兴的、小众的AI框架和组件。为此,腾讯朱雀实验室开源了一款专为AI基础设施设计的安全评估工具——AI-Infra-Guard。

AI-Infra-Guard是什么?

AI Infra Guard (AI Infrastructure Guard) 是一款高效、轻量、易用的安全评估工具,专门用于发现和检测AI系统中的潜在安全风险。目前它已支持检测超过30种AI组件,不仅涵盖常见的AI应用如Dify、ComfyUI、OpenWebUI,也包括RAGFlow、LangChain、LLaMA-Factory等开发训练框架。

核心特性

  1. AI驱动的漏洞规则积累:为了应对海量AI组件CVE漏洞的人工分析成本,该工具利用大模型自动化处理漏洞收集与规则生成。传统方式中,人工分析一个CVE并编写检测规则可能需要3小时,而现在通过大模型自动解析生成,仅需约30秒。同时实现了对AI组件相关漏洞的实时监控。
    AI漏洞监控示例

  2. 用户友好,性能优异

    • 零依赖,开箱即用,二进制文件仅约8MB。
    • 内存占用低于50MB,扫描大型集群时也不会造成系统卡顿。
    • 跨平台支持Windows、macOS和Linux。

如何使用?

AI-Infra-Guard已在GitHub开源,目前收录了30多种AI应用指纹和超过200个安全漏洞规则,其中包含多个由实验室独家发现的知名AI组件漏洞。

  • 个人用户检测本地环境
    如果你想检查自己电脑上运行的AI服务是否存在风险,可以执行以下命令进行一键检测:

    ./ai-infra-guard -localscan

    该命令将对本地所有开放端口进行扫描和识别,并给出相应的安全建议。
    例如,如果检测到存在漏洞的Ollama版本,会输出如下报告:
    本地扫描漏洞报告示例
    如果检测到AI服务被错误地暴露在公网,也会给出明确警告:
    公网暴露警告示例

  • 开发者/运维人员检测部署环境
    对于需要检测内网或公网AI服务安全性的场景,可以使用以下命令模式:

    # 扫描单个目标
    ./ai-infra-guard -target [IP:PORT/域名]
    
    # 扫描多个目标
    ./ai-infra-guard -target [IP1:PORT] -target [IP2:PORT]
    
    # 扫描整个网段,寻找AI服务
    ./ai-infra-guard -target 192.168.1.0/24
    
    # 从文件中读取目标列表进行扫描
    ./ai-infra-guard -file target.txt

    针对MLFlow服务的扫描报告示例

获取地址

  • 项目开源地址:https://github.com/Tencent/AI-Infra-Guard/
  • 发行版下载地址(请根据系统选择对应版本):https://github.com/Tencent/AI-Infra-Guard/releases

AI技术的本地化部署极大地提升了应用的灵活性和数据可控性,但随之而来的安全挑战不容小觑。从Ollama的未授权访问到各类AI应用组件的安全漏洞,任何一个环节的疏忽都可能导致严重后果。建议开发者和运维人员在使用这些强大工具的同时,建立起基本的安全意识,定期使用如AI-Infra-Guard这类专项工具进行安全检查,确保AI基础设施的稳定与安全。对这类前沿技术安全话题感兴趣的读者,也可以在云栈社区人工智能安全/渗透/逆向板块找到更多深度讨论。




上一篇:UML实战:三张图搞懂在线教育平台的业务架构设计
下一篇:Claude Scientific Skills 拆解:为什么你的 AI 写不出能跑通的量化代码?
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-4 07:41 , Processed in 0.477506 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表