“lc“键漏洞:LangChain高危缺陷(CVE-2025-68664)使提示注入攻击可窃取机密

研究人员在流行的开源框架LangChain中发现一个关键漏洞,该框架广泛用于驱动大型语言模型(LLM)Agent。该漏洞编号为CVE-2025-68664,CVSS评分高达9.3分,攻击者可能利用该漏洞提取敏感环境变量或触发非预期的系统操作。

漏洞根源:数据序列化缺陷

该漏洞源于LangChain处理数据序列化的方式------即将复杂对象转换为可存储或传输格式的过程。由于未能正确转义特定字典键,恶意数据可伪装成合法的LangChain对象。

问题的核心在于LangChain的dumps()和dumpd()函数。这些工具本应安全地序列化数据,但研究人员发现它们未能转义包含特定键"lc"的字典。

安全公告指出:"'lc'键被LangChain内部用于标记序列化对象。当用户可控数据包含此键结构时,系统在反序列化过程中会将其视为合法的LangChain对象而非普通用户数据。"

攻击机制:提示注入向量

这个看似微小的疏忽打开了危险之门。如果攻击者能将带有该特定键的字典注入数据流(例如通过LLM的响应元数据),就能诱使系统在加载过程中执行内部逻辑。

该漏洞最令人担忧的是其潜在攻击向量:提示注入。报告称:"最常见的攻击向量是通过LLM响应字段(如additional_kwargs或response_metadata),这些字段可通过提示注入进行控制。"

在实际攻击场景中,攻击者可操纵LLM输出特定JSON结构。当应用程序处理此输出时,会在不知情的情况下反序列化恶意负载,后果可能非常严重。

危害影响:从数据泄露到任意代码执行

报告警告:"控制序列化数据的攻击者可提取环境变量中的机密信息。"通过注入类似{"lc": 1, "type": "secret", "id": ["ENV_VAR"]}的负载,攻击者可强制应用程序解析并泄露隐藏的API密钥或密码,特别是在应用程序使用旧版设置secrets_from_env=True运行时。

除数据窃取外,该漏洞还允许在受信任命名空间中实例化任意类,可能导致"网络调用或文件操作等副作用"。

受影响版本及修复方案

该漏洞影响LangChain生态系统的多个版本:

  • LangChain Core:低于0.3.81的版本
  • LangChain:1.0.0至1.2.5之前的版本

维护者已发布修复版本:

  • LangChain 1.2.5
  • LangChain Core 0.3.81

补丁修复了序列化函数中的转义逻辑,确保用户可控的"lc"键被视为无害数据而非可执行命令。

相关推荐
Kapibalapikapi19 小时前
Web笔记 | URL跳转漏洞(开放重定向)
安全·web安全
N120 小时前
拒绝被 “瘫痪”!DDoS 一体化防护攻略
安全
爱编程的小吴20 小时前
LangChain TextSplitter语义分块:告别固定切分,打造高质量RAG文本块
langchain
xixixi7777720 小时前
从SQL注入到XSS:实战Web安全渗透测试
人工智能·安全·web安全·网络安全·卫星通信
NaclarbCSDN20 小时前
How Web servers work
安全
未知鱼20 小时前
Python安全开发之简易whois查询
java·python·安全
十月南城20 小时前
安全与合规检查表——隐私、审计与日志合规的关键条款与落地建议
安全
爱编程的小吴21 小时前
LangChain基础入门:DocumentLoader加载PDF/Markdown文档实战
python·langchain·pdf
NaclarbCSDN21 小时前
How website works
安全
鹅天帝21 小时前
20230319网安学习日志——XSS漏洞
前端·学习·web安全·网络安全·xss