文章总结: 文档介绍了Dify开源LLM平台架构,重点分析了近期SSRF、XSS及RCE等高危漏洞,建议升级至v1.11.x版本。提出了涵盖网络、主机与数据的纵深防御体系,并提供了使用Nmap与Suricata进行资产发现与审计的具体方法,以消除安全盲点。 综合评分: 90 文章分类: 漏洞分析,安全建设,AI安全,漏洞预警
Dify 网络安全防护
OZ OZ
AI安全运营
2026年2月5日 15:55 北京
1. Dify 软件介绍
1.1 核心定位
Dify(全称 Dify.AI)是一个开源的 LLM 应用开发平台(Large Language Model Application Development Platform),专注于帮助个人开发者、团队和企业快速构建、生产级别的 Agentic AI 应用(智能体驱动的应用)。它结合了可视化工作流编排、RAG(Retrieval-Augmented Generation 检索增强生成)、AI Agent 框架、多模型管理、可观测性等能力,让用户从原型到生产部署的整个过程变得更简单、高效。官方 slogan 经常提到 “Do It For You”(名字 Dify 就是这个缩写),目标是降低大模型应用开发的门槛。
1.2 主要功能
1.2.1 可视化编排(Workflow)
-
拖拽式界面
:通过直观的拖拽操作构建复杂的 AI 工作流
-
节点化设计
:支持多种节点类型,包括 LLM 节点、知识库检索节点、条件判断节点、代码执行节点等
-
流程控制
:支持分支、循环、并行等流程控制逻辑
1.2.2 RAG(检索增强生成)引擎
-
文档上传
:支持 PDF、Word、TXT、Markdown 等多种格式
-
智能分块
:自动将长文档分割成适合检索的片段
-
向量化存储
:使用向量数据库(如 Weaviate、Qdrant、Milvus)存储文档向量
-
语义检索
:基于向量相似度进行精准的文档检索
-
混合检索
:结合关键词检索和语义检索,提高检索准确度
1.2.3 Agent(智能体)构建
-
工具调用
:集成多种工具,如搜索引擎、API 调用、数据库查询等
-
自主规划
:Agent 可以根据任务目标自主规划执行步骤
-
记忆管理
:支持短期记忆和长期记忆,保持对话上下文
-
多轮对话
:支持复杂的多轮交互场景
1.2.4 模型管理
-
多模型支持
:支持 OpenAI、Anthropic Claude、Google PaLM、Llama 等主流模型
-
本地模型
:支持部署本地开源模型(如 Llama 2、ChatGLM、Qwen 等)
-
模型切换
:灵活切换不同模型,比较效果
-
参数调优
:支持温度、Top-P、最大 Token 数等参数调整
1.3 技术架构
Dify 系统架构示意图
Dify 采用前后端分离架构:
-
前端
:基于 React + Next.js 构建,提供现代化的用户界面
-
后端
:基于 Python (Flask) 构建,提供高性能的 API 服务
-
数据库
:使用 PostgreSQL 存储结构化数据,Redis 缓存会话信息
-
向量数据库
:支持多种向量数据库(如 Weaviate, Qdrant, Milvus)作为 RAG 引擎的存储后端
-
消息队列
:使用 Celery + Redis 处理异步任务
2. 影响Dify 的网络安全漏洞
2.1 相关漏洞汇总
以下是 最近(特别是 2025 年下半年到 2026 年初) 比较受关注或较新的几个 CVE 简单介绍(按时间倒序大致排列,重点关注 2025 年 10 月之后的):
-
CVE-2025-67732(2026 年 1 月公开,高危) 在 v1.11.0 之前,模型提供商配置的 API Key 通过前端接口以明文形式暴露给客户端。攻击者可通过浏览器开发者工具或中间人等方式窃取密钥,导致模型账号被滥用。 官方在 v1.11.0 修复。
-
CVE-2025-56520(2026 年 1 月左右公开,严重) Dify v1.6.0 存在 SSRF(服务端请求伪造),位于 controllers.console.remote_files 处。攻击者可利用让服务器发起任意请求,可能访问内网资源或触发其他攻击。 属于较老版本问题,但近期被独立披露。
-
CVE-2025-63387(2025 年 12 月) v1.9.1 版本中 /console/api/system-features 接口未授权即可访问,返回部分系统配置信息。 官方称属于设计如此(用于前端初始化),不含敏感信息,但仍被分配了 CVE。
-
CVE-2025-58747(2025 年 10 月公开,严重/高危) MCP(Model Context Protocol)OAuth 组件存在 XSS 漏洞。受害者连接攻击者控制的恶意服务器时可触发跨站脚本攻击,可能结合其他漏洞升级为更严重后果(如钓鱼、窃取 token)。 在 v1.9.1 及以下版本受影响,已在后续 commit 修复。
-
React Server Components 相关连锁漏洞(2025 年 12 月最受关注)
-
CVE-2025-55182(最核心的一个,严重/高危)
-
CVE-2025-55184
-
CVE-2025-67779 React 19.x 早期版本的 Server Components / Server Actions 存在严重缺陷,导致 远程代码执行(RCE)、数据泄露、跨边界访问等。 Dify v1.10.1 及之前版本受影响(因为用了有问题的 react-server-dom-webpack)。 社区和官方在 2025 年 12 月紧急升级到 v1.11.1,将 React 升级到修复版 19.2.1 来解决。SaaS 版不受影响或已修复。
其他 2025 年中上半年的漏洞(如 CVE-2025-3466 代码节点未过滤导致 RCE、CVE-2025-3467 XSS、CVE-2025-49149 输入过滤不足等)危害也较大,但相对没那么“新”。 建议:
- 自建 Dify 的用户尽快升级到 最新版本(截至 2026 年 2 月建议至少 v1.11.x 或更高),尤其是用了 v1.9.x ~ v1.10.x 的实例。
- 关注 https://github.com/langgenius/dify/security/advisories 获取官方 advisory。
- 开启了公开访问的实例,建议检查 API Key 是否已泄露、是否被异常调用。
3. Dify 整体防御架构
为了全面保障 Dify 在企业内网环境中的安全,建议构建多层防御体系,集成现有的安全基础设施。
4. 总结
Dify 作为 LLMOps 平台,其前后端分离、微服务化的技术架构(Next.js + Flask + Celery)决定了其高效灵活的特性,但也引入了复杂的攻击面。企业在利用其可视化编排、RAG 引擎和 Agent 能力赋能业务的同时,必须正视潜在的安全风险。
近期频发的安全漏洞(如 SSRF、Prompt 注入、IDOR 等)表明,Dify 面临着来自内外部的多重威胁。攻击者可能利用 Web Scraper 探测内网,通过 Prompt 注入绕过系统限制,或通过 IDOR 越权访问敏感数据。针对这些已知漏洞,我们整理了详细的漏
洞统计表,并给出了“白名单限制”、“输入过滤”、“权限鉴权”等针对性的防御手段。
构建整体防御架构是保障 Dify 安全运行的根本。集“边界防御、网络管控、主机安全、数据保护”于一体的纵深防御体系。通过部署 NGFW、WAF、HIDS、EDR 以及数据防泄漏(DLP)等安全组件,形成从网络边界到核心数据资产的全方位保护网。这不仅能有效抵御外部攻击,也能规范内部操作,确保企业在使用 AI 能力的同时,数据资产安全可控。
A. 资产发现与审计案例
场景描述
在企业内部网络中,员工可能私自部署 Dify 服务(Shadow IT),或者在测试环境(如 ESXi 虚拟机)中遗留了未管理的 Dify 实例。这些未纳管的资产可能成为安全盲点,导致数据泄露或被作为攻击跳板。
发现方法
1. 端口扫描 (Nmap) Dify 默认使用特定端口(Web 服务通常为 80/443 或自定义端口,后端 API 为 5001)。
# 扫描网段内的开放 Web 端口
nmap -p 80,443,5001 -sV --open 192.168.1.0/24
# 针对性识别 Dify 指纹(通过 HTTP 响应头或 Title)
# Dify 的默认 Title 可能包含 "Dify"
nmap -p 80,443,5001 --script http-title 192.168.1.0/24 | grep "Dify"
2. 流量分析 (Wireshark / Suricata) 可以将以下规则添加到 Suricata 规则库 (local.rules) 中,用于检测 Dify 的 API 流量。
检测 Dify API 调用 (通用 API 路径)
alerthttp$HOME_NETany->$EXTERNAL_NETany(msg:"ETPOLICYDifyAPIAccessDetected(CommonPath)";flow:established,to_server;content:"/v1/chat-messages";http_uri;classtype:policy-violation;sid:1000001;rev:1;)
alerthttp$HOME_NETany->$EXTERNAL_NETany(msg:"ETPOLICYDifyAPIAccessDetected(CompletionPath)";flow:established,to_server;content:"/v1/completion-messages";http_uri;classtype:policy-violation;sid:1000002;rev:1;)
检测 Dify 控制台 API 访问
alerthttp$HOME_NETany->$EXTERNAL_NETany(msg:"ETPOLICYDifyConsoleAccessDetected";flow:established,to_server;content:"/console/api";http_uri;classtype:policy-violation;sid:1000003;rev:1;)
# 检测 Dify 特有的 Authorization Header (Bearer app-...)
alerthttp$HOME_NETany->$EXTERNAL_NETany(msg:"ETPOLICYDifyAppKeyUsageDetected";flow:established,to_server;content:"Authorization|3a|Bearerapp-";http_header;fast_pattern;classtype:policy-violation;sid:1000004;rev:1;)
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:AI安全运营 OZ OZ《Dify 网络安全防护》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论