仅针对您拥有或获得授权测试的服务器运行。
范围: 通过结果仅表示此狭窄检查发现存在身份验证挑战,并且 Langflow 版本等于或高于 CVE-2025-3248 的修补阈值。它不是通用的安全性、声誉、配置或入侵结论。
针对与 CVE-2025-3248 相关的 Langflow 暴露问题的小型防御性自检工具。向 EXPOSECHECK 提供一个基础 URL(您自己的服务器或 localhost),它将报告:
/api/v1/validate/code 是否挑战未认证的请求;1.3.0;这不是一个漏洞利用工具或批量扫描器。它只接受一个目标,不发送任何可执行代码,也不进行全网范围的发现。验证端点探测仅提交一个空 JSON 对象 ({})。
Sysdig 威胁研究团队 记录了 JADEPUFFER,研究人员认为这是首个由 AI 代理完全自主运行的勒索软件攻击。初始访问与已知且已修补的 Langflow 漏洞 CVE-2025-3248 相关:旧的暴露实例允许未认证访问代码验证端点。
Langflow 是一个合法的开源 AI 应用框架。风险在于暴露且未修补的部署——而非 Langflow 本身。Langflow 1.3.0+ 包含相关修复,并需要对该端点进行身份验证。
需要 Node.js 18+;无需安装任何包。
node check.js http://localhost:7860
您也可以输出机器可读的结果:
node check.js http://localhost:7860 --json
退出码在本地脚本中很有用:
0 — 已针对 CVE-2025-3248 修补1 — 已暴露2 — 需要注意,输入无效,或检查结果不确定已针对 CVE-2025-3248 修补 要求同时满足 401/403 身份验证挑战和检测到的版本为 1.3.0 或更新。这并不意味着服务器总体上是安全的。一个到达请求验证但未触发身份验证挑战的端点是 已暴露。缺失、重定向、被阻止或模糊的响应会明确报告为 需要注意,而不是猜测为安全。
直接打开 index.html,或本地提供目录服务:
python3 -m http.server 8080
然后访问 http://localhost:8080。
浏览器会强制执行 CORS 和混合内容规则。跨域服务器可能正常运行,但仍阻止页面读取其响应。这会产生一个不确定的结果;请使用 CLI 进行可靠检查。
使用 Node.js 18+ 运行内置回归测试套件:
node --test test.js
该套件锁定了公开结果词汇,因此 CVE 作用域内的修补状态不会无声地退化为一般的 安全 或 一切正常 声明。
演示是确定性的,不会联系外部服务器。
CLI:
node check.js --demo exposed
node check.js --demo patched
浏览器:使用结论面板上方的 Demo: exposed 和 Demo: patched 按钮。页面默认加载暴露演示,这使得屏幕录制可靠,无需将工具对准实时目标。
网络提示仅检查输入的 URL。它不解析 DNS,也不证明主机可从互联网访问。
绿色样式仅适用于显示的谓词。特别是,已针对 CVE-2025-3248 修补 并不意味着 安全。
将 Langflow 升级到 1.3.0+,将其置于身份验证之后,并从公共互联网上移除。
纵深防御仍然重要:限制入站流量,避免将开发工具直接暴露在公网,如果怀疑有暴露则轮换凭据,并审查服务器日志。如果此工具报告旧版本但仍需认证,它将返回 需要注意,因为该软件仍应被修补。
MIT。参见 LICENSE。
| 检查项 | 观察到的防御信号 | 需要注意的信号 |
|---|
| 可达性 | 任何 HTTP 响应确认主机在线 | 超时或连接失败不确定 |
| 端点认证 | 未认证空请求返回 401 或 403 | 返回 2xx、400 或 422 表示请求在被接受/验证前未触发认证挑战 |
| 版本 | Langflow 1.3.0+ | <1.3.0 存在漏洞;未知版本需要手动验证 |
| 网络提示 | 本地/私有 URL | 公网 IP/域名仅供参考,应促使进行暴露审查 |