Hacker News 中文摘要

RSS订阅

LangChain严重漏洞——CVE-2025-68664 -- Critical vulnerability in LangChain – CVE-2025-68664

文章摘要

文章披露了LangChain Core框架存在一个严重漏洞CVE-2025-68664(代号LangGrinch),该漏洞可能导致敏感信息泄露。作者Yarden Porat在圣诞节当天发布这一安全警告,提醒用户注意该高危漏洞带来的数据安全风险。

文章总结

圣诞惊魂:LangGrinch漏洞袭击LangChain核心框架(CVE-2025-68664)

关键发现
网络安全公司Cyata研究员Yarden Porat在LangChain核心库(langchain-core)中发现了一个高危反序列化漏洞(CVE-2025-68664)。该漏洞允许攻击者通过精心构造的提示词注入,窃取环境变量中的敏感信息甚至执行任意代码。目前官方已在1.2.5和0.3.81版本中发布补丁。

漏洞核心机制
1. 标记混淆攻击:LangChain使用含"lc"键的字典作为内部序列化标记,但未对用户输入的同类字典进行转义处理
2. 触发场景:当LLM输出的additional_kwargsresponse_metadata等字段被序列化后重新加载时,攻击者可伪造LangChain对象
3. 默认配置风险:漏洞利用关键参数secrets_from_env在补丁前默认开启,允许从环境变量读取凭证

影响范围
- 全球约8.47亿次下载量(截至2025年12月)
- 涉及12个核心功能流,包括:
- 事件流处理(astreamevents v1)
- 运行日志(Runnable.astream
log)
- 内存向量数据库等缓存系统

潜在危害
- 通过AWS聊天组件间接外泄环境变量
- 利用Jinja2模板实现代码执行
- 任意类实例化引发副作用(网络调用/文件操作等)

修复建议
1. 立即升级至安全版本
2. 将LLM输出字段视为不可信数据
3. 禁用非必要的环境变量凭证解析功能

行业启示
该漏洞暴露了AI代理框架在信任边界设计上的系统性风险:
- 结构化数据流可能成为新型攻击面
- 序列化管道中的标记混淆问题具有跨生态共性(同期LangChainJS也发现同类漏洞)
- 企业普遍缺乏对AI组件的资产可视化能力

时间线
- 12月4日:通过Huntr平台提交报告
- 12月5日:获LangChain团队确认
- 12月24日:正式发布安全公告

(注:原文中的社交媒体分享按钮、公司介绍等非技术内容已精简,保留核心漏洞分析及缓解措施)

评论总结

总结评论内容:

  1. 漏洞严重性讨论
  • 认为漏洞可能导致敏感信息泄露甚至权限提升(评论1:"can leak secrets (and in some cases escalate further)")
  • 预测使用langchain的用户可能不会及时修复(评论3:"not going to patch this in a timely manner")
  1. 对漏洞描述文风的批评
  • 多人批评使用了LLM生成的冗长文风(评论2:"WHY on earth...feed the description text through an LLm")
  • 指出描述中存在事实错误(评论8:"it was definitely not the night before Christmas")
  1. 对开发者的调侃
  • 调侃创始人可能因此获利(评论5:"Harrison Chase is laughing his way to the bank")
  • 戏称漏洞为"LangGrinch"(评论4,评论7提到Grinch形象使用问题)
  1. 技术细节讨论
  • 指出具体漏洞原因是字典转义问题(评论9:"did not properly escape user-controlled dictionaries")
  • 对技术表述提出修改建议(评论6:"'Large blast radius' would be a good substitute")
  1. 其他观点
  • 对安全团队节假日工作的同情(评论4:"Cheers to all the teams on sev1 calls on their holidays")
  • 部分用户表示不受影响(评论6:"this whole issue doesn't affect me")