大型語言模型框架的安全基石與挑戰
隨著生成式 AI 應用深入企業核心業務,LangChain 作為全球最受歡迎的 LLM 編排框架,其安全性已成為 AI 生態系統的關鍵。然而,開發便利性往往伴隨著潛在的攻擊面。近期揭露的嚴重安全漏洞,凸顯了在處理非結構化數據與模型輸出時,若缺乏嚴格的轉義機制,將為組織帶來毀滅性的資安風險。當開發者依賴自動化工具進行數據序列化時,底層邏輯的微小疏漏可能演變成遠端代碼執行的導火線。
LangGrinch 漏洞技術成因與威脅模型
LangChain Core中揭露了一個嚴重的安全漏洞,攻擊者可以利用該漏洞竊取敏感訊息,甚至透過提示注入影響大型語言模型 (LLM) 的回應。此漏洞編號為 CVE-2025-68664,CVSS 評分為 9.3 分(滿分為10分)。安全研究員Yarden Porat於2025年12月4日報告了該漏洞,此漏洞的代號為LangGrinch。
LangChain專案維護者在一份安全公告中指出:LangChain的dumps()和dumpd()函數存在序列化注入漏洞。這些函數在序列化自由格式字典時,不會對鍵為‘lc’的字典進行轉義。Porat說:一旦攻擊者能夠讓 LangChain 編排循環序列化並隨後反序列化包含‘lc’鍵的內容,他們就會實例化一個不安全的任意對象,從而可能觸發許多對攻擊者友好的路徑。此外,該漏洞還允許透過提示注入,利用使用者控制的欄位(如 metadata、additional_kwargs 或 response_metadata)注入LangChain物件結構。
跨語言平台的連鎖反應:從 Python 到 JavaScript
此安全性缺陷並非僅限於 Python 環境,其影響範圍橫跨了當前主流的開發語系。值得注意的是,LangChain.js 中也存在類似的序列化注入漏洞,該漏洞同樣源於未正確轉義帶有「lc」鍵的對象,從而導緻密鑰提取和提示符注入,此漏洞的CVE編號為 CVE-2025-68665(CVSS 評分:8.6)。
這種跨平台的脆弱性顯示出,當框架設計邏輯在不同語言間移植時,序列化安全模型若未被同步強化,將造成大規模的供應鏈安全隱患。攻擊者可以針對 JS 運作環境的特性,利用 npm 套件中的漏洞進行更精準的密鑰提取攻擊,這對於高度依賴 Web 端 AI 交互的應用程式而言,威脅程度不言而喻。
受影響範圍與版本追蹤清單
以下版本的langchain-core受CVE-2025-68664影響 -
它會影響以下 npm 套件 -
@langchain/core >= 1.0.0,< 1.1.8(已在 1.1.8 中修復)
@langchain/core < 0.3.80(已在 0.3.80 版本中修復)
langchain 版本 >= 1.0.0,< 1.2.3(已在 1.2.3 中修復)
langchain < 0.3.37(已在 0.3.37 版本中修正)
漏洞利用路徑:從提示注入到對象實例化
LangGrinch 漏洞最危險之處在於其與「提示注入」(Prompt Injection)的結合。在典型的 LLM 應用場景中,用戶輸入往往會直接或間接地被納入元數據(metadata)或回應數據中。若攻擊者巧妙地在輸入中夾帶具有特殊結構的數據,當 LangChain 執行序列化處理時,這些惡意負載會被錯誤地識別為有效的「lc」物件。一旦進入反序列化流程,系統會自動在內存中建立攻擊者預設的對象,這可能導致內存洩漏、環境變量遭非法讀取,甚至是後續的遠端指令注入攻擊。
AI 應用開發的安全緩解與加固建議
鑑於漏洞的嚴重性,建議用戶盡快更新到已修補的版本,以獲得最佳保護。除了直接更新套件版本外,企業開發團隊應採取深度防禦策略。首先,應對所有進入序列化函數(如 dumps/dumpd)的外部數據進行嚴格的鍵值檢查,禁止或轉義任何包含特殊保留字(如 'lc')的鍵。其次,應採用「最小權限原則」,將 AI 服務運行在受限制的容器環境中,以防止惡意對象實例化後的進一步滲透。最後,開發者應引入自動化的靜態與動態安全掃描工具(SAST/DAST),針對 AI 編排框架的特定漏洞進行常態化監測,確保在生產環境中不留安全死角。
註:
LangChain Core(即langchain-core)是 LangChain 生態系統的一部分,是一個核心 Python 包,它為構建由 LLM 驅動的應用程式提供核心介面和與模型無關的抽象。 資料來源:https://thehackernews.com/2025/12/critical-langchain-core-vulnerability.html
深入研究 LangChain Core 揭露的嚴重漏洞 CVE-2025-68664(LangGrinch)。本報告分析其序列化注入機制如何導致敏感訊息竊取與對象實例化風險,並提供針對 Python 與 JS 環境的修補建議與防禦策略。