Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
cve-2026-33067 — 用于检测 CVE-2026-33017 的 Nuclei 模板,该漏洞是 Langflow ≤ 1.8.2 中一个未经身份验证的远程代码执行漏洞。通过 HTTP 响应分析执行非破坏性预检查,以区分易受攻击的版本与已修补的版本。 | Kitploit
工具/GitHubGitHub/lopseg/cve-2026-33067
侦察漏洞扫描器漏洞利用Web应用程序漏洞利用渗透测试红队
GitHublopseg/cve-2026-33067

cve-2026-33067

用于检测 CVE-2026-33017 的 Nuclei 模板,该漏洞是 Langflow ≤ 1.8.2 中一个未经身份验证的远程代码执行漏洞。通过 HTTP 响应分析执行非破坏性预检查,以区分易受攻击的版本与已修补的版本。

查看仓库
24个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-33017 — Langflow 未认证 RCE Nuclei 模板

Severity CVSS CWE

用于检测 CVE-2026-33017 的 Nuclei 模板——这是 Langflow ≤ 1.8.2 中存在的一个未认证远程代码执行漏洞,可通过公共 flow 构建端点访问:

root@kitploit:~
POST /api/v1/build_public_tmp/{flow_id}/flow

存在漏洞的处理程序接受攻击者控制的 data 流程(flow)图,并在图构建期间将 data.nodes[].data.node.template.code.value 直接传入 Python exec(),且没有沙箱隔离。修复版本(≥ 1.9.0)将该 data 参数从处理程序签名中移除,因此已修补的构建会在 FastAPI 的校验层以 HTTP 422 拒绝同一请求。


模板如何判定

该模板是非破坏性的。它针对一个全零 UUID 的 flow ID 发送惰性(inert)载荷,因此在易受攻击的主机上也无法触达 exec()。它仅通过 HTTP 响应特征来区分存在漏洞的处理程序与已修补的处理程序。

阶段请求结果说明
1GET /api/v1/version确认目标是 Langflow 并提取构建版本。
2POST /api/v1/build_public_tmp/00000000-0000-0000-0000-000000000000/flow,请求体包含 字段以及一个惰性的

阶段 2 的路由判定:

真正的 RCE 确认仍然需要 (a) 目标上存在一个真实的公共 flow UUID,以及 (b) 一个带外回调(DNS/HTTP)。该步骤有意未包含在此模板中——此模板是安全预检查,用于判断运行主动利用是否有意义。


使用方法

单主机扫描:

root@kitploit:~
nuclei -t CVE-2026-33017.yaml -u https://target.example.com

从列表批量扫描:

root@kitploit:~
nuclei -t CVE-2026-33017.yaml -l targets.txt -rl 20 -c 10

带调试输出(查看原始请求/响应):

root@kitploit:~
nuclei -t CVE-2026-33017.yaml -u https://target.example.com -debug-req -debug-resp

运行前在本地校验模板:

root@kitploit:~
nuclei -validate -t CVE-2026-33017.yaml

示例输出

存在漏洞的目标:

root@kitploit:~
[CVE-2026-33017] [http] [critical] https://target.example.com [vulnerable-flow-not-found] ["1.8.2","base"]

已修补的目标——不产生任何发现(422 响应不匹配任何规则)。


发现候选目标

Langflow 主机的常见发现查询(仅可用于你有权测试的资产):

  • Shodan:http.title:"Langflow"
  • FOFA: app="Langflow"
  • Google: intitle:"Langflow" inurl:"/flows"

漏洞详情

  • CVE:CVE-2026-33017
  • CWE:CWE-94(对生成代码的控制不当,Improper Control of Generation of Code)
  • CVSS 3.1:9.3 — AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • 受影响版本:Langflow ≤ 1.8.2
  • 修复版本:Langflow ≥ 1.9.0
  • 攻击向量:网络、未认证、无需用户交互
  • 影响:以 Langflow 进程用户身份执行远程代码

根本原因(简述)

在存在漏洞的构建中,公共处理程序大致声明如下:

root@kitploit:~
@router.post("/build_public_tmp/{flow_id}/flow")
async def build_public_flow(flow_id: UUID, data: FlowDataRequest | None = None, ...):
    ...
    await verify_public_flow_and_get_user(flow_id, ...)
    ...
    # data.nodes[].data.node.template.code.value 在
    # Component 构建路径中传入 exec()

data 由攻击者控制。已修补的处理程序将该参数完全移除并强制 data=None,这就是为什么在已修补的构建中,包含 data 主体字段的请求会被以 422 拒绝。


修复建议

  1. 将 Langflow 升级到 ≥ 1.9.0。
  2. 如果无法立即升级,请在反向代理处阻止 /api/v1/build_public_tmp/。
  3. 设置 LANGFLOW_AUTO_LOGIN=False,配置超级用户凭据,并轮换 LANGFLOW_SECRET_KEY。
  4. 审计现有流程——access_type=PUBLIC 的流程正是攻击者在 URL 中会针对的目标。

参考

  • GitHub Advisory:https://github.com/advisories/GHSA-vwmf-pq79-vjvx
  • SonicWall 分析文章:https://www.sonicwall.com/pt-br/blog/langflow-ai-code-injection-to-rce-flaw
  • 已修补处理程序源码:https://github.com/langflow-ai/langflow/blob/main/src/backend/base/langflow/api/v1/chat.py

法律声明与披露

本模板发布仅用于防御性安全及授权测试。在大多数司法管辖区,针对你不拥有或没有明确书面许可的系统运行该模板属于违法行为,并且违反平台服务条款。

使用本模板即表示你同意:

  • 你只会扫描自己拥有或明确获授权测试的资产(漏洞赏金范围、已签署的渗透测试合同、内部资产清单)。
  • 作者不对滥用行为负责。
  • 本模板按原样提供,不附带任何担保。

作者

lopseg — https://github.com/lopseg

欢迎提交 Pull Request 和 issue。

License

MIT

下载工具
data
template.code.value
路由判定见下表。
状态响应体包含判定
404flow / public存在漏洞(VULNERABLE) —— 处理程序接受了 data,随后因 UUID 是伪造的而查找失败。
200job_id / build / task存在漏洞(VULNERABLE) —— 处理程序接受了 data 并进入构建路径。
5xxexec / Component / traceback存在漏洞(VULNERABLE) —— 处理程序在失败前已到达 exec 代码路径。
422Field required / extra / data已修补(PATCHED) —— 处理程序签名不再接受 data。