JeecgBoot匿名聊天附件解析SSRF漏洞CVE-2026-19000
JeecgBoot 开源 AI 低代码快速开发平台(Apache2.0 协议),主打低代码 + 零代码双模式,基于 SpringBoot+Vue3 前后端分离架构。
一、基本情况
JeecgBoot 开源低代码开发平台专用来快速搭建企业中后台系统,开箱即用、权限与工作流成熟、国产化适配完善、AI 降低开发门槛。

JeecgBoot 单体微服务自由切换、中文文档完善,提供应用生成、企业级后台 AI 集成能力,用于OA、ERP、政务、CRM、管理后台。
栋科技漏洞库关注到 JeecgBoot 在 3.9.2 版本存在的匿名聊天附件解析SSRF漏洞,现已追踪为CVE-2026-19000,CVSS 3.X评分 7.3。
二、漏洞分析
CVE-2026-19000漏洞是 JeecgBoot 相关版本中的 Airag 匿名聊天附件解析,导致可访问内网及远程 HTTP 资源并回显文档内容漏洞。
受影响版本中,AiragChatController#send 是公开可访问的匿名接口,未校验 X-Access-Token 即可传入 files;
AiragChatServiceImpl 在 buildContentWithFiles 阶段对 files 中形如 http(s):// 的远程地址调用 SsrfFileTypeFilter.checkSsrfHttpUrl,
而该校验仅阻断 loopback 与 link-local,未阻断 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 等私网地址,
导致 FileDownloadUtils.download2DiskFromNet 直接以服务端身份请求内网资源并经 Tika 解析后回显到模型上下文,
存在服务器端请求伪造风险。
具体来说,/airag/chat/send 是匿名可访问接口,请求体中的 files 参数允许传入远程 http/https 文件地址。
后端会下载该文件,使用 Tika 解析文本,并将解析结果拼接进模型上下文。
当前 SSRF 校验只阻断 loopback 和 link-local 地址,未阻断 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 等私网地址。
因此攻击者可以让服务端访问内网文件服务;如果返回的是 txt/pdf/docx/xlsx 等允许的文档类型,文档内容可能通过模型响应泄露。
入口接口:
org.jeecg.modules.airag.app.controller.AiragChatController
@IgnoreAuth
@PostMapping(value = "/send")
public SseEmitter send(@RequestBody ChatSendParams chatSendParams) {
return chatService.send(chatSendParams);
}
附件进入模型上下文:
org.jeecg.modules.airag.app.service.impl.AiragChatServiceImpl
if(!CollectionUtils.isEmpty(sendParams.getFiles())){
content = buildContentWithFiles(content, sendParams.getFiles());
}
远程文件下载:
if (LLMConsts.WEB_PATTERN.matcher(fileRef).matches()) {
SsrfFileTypeFilter.checkSsrfHttpUrl(fileRef);
FileDownloadUtils.download2DiskFromNet(fileRef, tempFilePath);
return new File(tempFilePath);
}
SSRF 校验逻辑:
org.jeecg.common.util.filter.SsrfFileTypeFilter
for (InetAddress addr : InetAddress.getAllByName(host)) {
if (addr.isLoopbackAddress() || addr.isLinkLocalAddress()) {
throw new JeecgBootException("非法URL:禁止访问本机或链路本地地址 " + addr.getHostAddress());
}
}
满足以下条件即可触发:
攻击者可访问 /airag/chat/send
请求无需携带有效登录态或 X-Access-Token
files 中传入服务端可访问的内网 HTTP 文件地址
文件扩展名在允许列表中,例如 txt、pdf、docx、doc、pptx、xlsx、md
错误截图:
读取内网及远程服务器的文件并原样输出在模型上下文
内网文件请求

远程文件请求

远程服务器接收到请求

三、影响范围
JeecgBoot ≤ 3.9.2
四、修复建议
JeecgBoot>3.9.2
五、参考链接
管理员已设置登录后刷新可查看