Description
LangChain is a framework for building LLM-powered applications. Prior to @langchain/core versions 0.3.80 and 1.1.8, and prior to langchain versions 0.3.37 and 1.2.3, a serialization injection vulnerability exists in LangChain JS's toJSON() method (and subsequently when string-ifying objects using JSON.stringify(). The method did not escape objects with 'lc' keys when serializing free-form data in kwargs. The 'lc' key is used internally by LangChain to mark serialized objects. When user-controlled data contains this key structure, it is treated as a legitimate LangChain object during deserialization rather than plain user data. This issue has been patched in @langchain/core versions 0.3.80 and 1.1.8, and langchain versions 0.3.37 and 1.2.3
Problem types
CWE-502: Deserialization of Untrusted Data
Product status
@langchain/core < 0.3.80
langchain >= 1.0.0, < 1.2.3
langchain < 0.3.37
References
github.com/...hainjs/security/advisories/GHSA-r399-636x-v7f6
github.com/...hainjs/security/advisories/GHSA-r399-636x-v7f6
github.com/...ommit/e5063f9c6e9989ea067dfdff39262b9e7b6aba62
github.com/...langchainjs/releases/tag/@langchain/core@1.1.8
github.com/...in-ai/langchainjs/releases/tag/langchain@1.2.3
Data based on CVE®. Copyright © 1999-2025, The MITRE Corporation. All rights reserved.