{"items":[{"id":"NVI-00009021","kind":"vulnerability","title":"LangChain serialization injection vulnerability enables secret extraction in dumps/loads APIs","revision":2,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected.","NVD lastModified does not establish freshness of every associated CPE record."],"lifecycle":"active","identifiers":["GHSA-c67j-w6g6-q2cm","CVE-2025-68664"],"plain_summary":"GitHub lists this reviewed advisory for langchain-core, langchain-core. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-3ab28e9504de4a43177eb3c129a7da91"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-10-27T16:50:49.000Z","value":"9.3 critical","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-7ae12ed9ea1f209a35202c5bd5dee339"},{"kind":"CVSS","as_of":"2026-10-19T22:10:00.130Z","value":"9.3 CRITICAL (3.1)","meaning":"security-advisories@github.com severity; no combined Null risk score.","source_id":"sr-3ab28e9504de4a43177eb3c129a7da91"},{"kind":"CVSS","as_of":"2026-10-19T22:10:00.130Z","value":"8.2 HIGH (3.1)","meaning":"nvd@nist.gov severity; no combined Null risk score.","source_id":"sr-3ab28e9504de4a43177eb3c129a7da91"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-7ae12ed9ea1f209a35202c5bd5dee339","url":"https://github.com/advisories/GHSA-c67j-w6g6-q2cm","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-c67j-w6g6-q2cm","publisher":"GitHub Advisory Database","observed_at":"2026-10-31T21:56:36.327Z"},{"id":"sr-3ab28e9504de4a43177eb3c129a7da91","url":"https://nvd.nist.gov/vuln/detail/CVE-2025-68664","basis":"official_catalog","notes":"This product uses data from the NVD API but is not endorsed or certified by the NVD.","title":"CVE-2025-68664","publisher":"NIST National Vulnerability Database","observed_at":"2026-11-03T02:29:19.461Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-7ae12ed9ea1f209a35202c5bd5dee339"],"technology":"langchain-core","known_exclusions":[],"conditions_summary":"## Summary\n\nA serialization injection vulnerability exists in LangChain's `dumps()` and `dumpd()` functions. The functions do not escape dictionaries with `'lc'` keys when serializing free-form dictionaries. 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.\n\n### Attack surface\n\nThe core vulnerability was in `dumps()` and `dumpd()`: these functions failed to escape user-controlled dictionaries containing `'lc'` keys. When this unescaped data was later deserialized via `load()` or `loads()`, the injected structures were treated as legitimate LangChain objects rather than plain user data.\n\nThis escaping bug enabled several attack vectors:\n\n1. **Injection via user data**: Malicious LangChain object structures could be injected through user-controlled fields like `metadata`, `additional_kwargs`, or `response_metadata`\n2. **Class instantiation within trusted namespaces**: Injected manifests could instantiate any `Serializable` subclass, but only within the pre-approved trusted namespaces (`langchain_core`, `lang","public_affected_ranges":[">= 1.0.0, < 1.2.5"]},{"certainty":"source_listed","source_ids":["sr-7ae12ed9ea1f209a35202c5bd5dee339"],"technology":"langchain-core","known_exclusions":[],"conditions_summary":"## Summary\n\nA serialization injection vulnerability exists in LangChain's `dumps()` and `dumpd()` functions. The functions do not escape dictionaries with `'lc'` keys when serializing free-form dictionaries. 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.\n\n### Attack surface\n\nThe core vulnerability was in `dumps()` and `dumpd()`: these functions failed to escape user-controlled dictionaries containing `'lc'` keys. When this unescaped data was later deserialized via `load()` or `loads()`, the injected structures were treated as legitimate LangChain objects rather than plain user data.\n\nThis escaping bug enabled several attack vectors:\n\n1. **Injection via user data**: Malicious LangChain object structures could be injected through user-controlled fields like `metadata`, `additional_kwargs`, or `response_metadata`\n2. **Class instantiation within trusted namespaces**: Injected manifests could instantiate any `Serializable` subclass, but only within the pre-approved trusted namespaces (`langchain_core`, `lang","public_affected_ranges":["< 0.3.81"]}],"null_published_at":"2026-11-04T10:04:35.933Z","source_updated_at":"2026-10-27T16:50:49.000Z","source_disclosed_at":"2025-12-23T18:46:13.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Source facts changed; compare the preserved prior revision.","null_first_observed_at":"2026-10-31T21:56:36.327Z"},{"id":"NVI-00009021","kind":"vulnerability","title":"LangChain serialization injection vulnerability enables secret extraction in dumps/loads APIs","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-c67j-w6g6-q2cm","CVE-2025-68664"],"plain_summary":"GitHub lists this reviewed advisory for langchain-core, langchain-core. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-7ae12ed9ea1f209a35202c5bd5dee339"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-10-27T16:50:49.000Z","value":"9.3 critical","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-7ae12ed9ea1f209a35202c5bd5dee339"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-7ae12ed9ea1f209a35202c5bd5dee339","url":"https://github.com/advisories/GHSA-c67j-w6g6-q2cm","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-c67j-w6g6-q2cm","publisher":"GitHub Advisory Database","observed_at":"2026-10-31T21:56:36.327Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-7ae12ed9ea1f209a35202c5bd5dee339"],"technology":"langchain-core","known_exclusions":[],"conditions_summary":"## Summary\n\nA serialization injection vulnerability exists in LangChain's `dumps()` and `dumpd()` functions. The functions do not escape dictionaries with `'lc'` keys when serializing free-form dictionaries. 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.\n\n### Attack surface\n\nThe core vulnerability was in `dumps()` and `dumpd()`: these functions failed to escape user-controlled dictionaries containing `'lc'` keys. When this unescaped data was later deserialized via `load()` or `loads()`, the injected structures were treated as legitimate LangChain objects rather than plain user data.\n\nThis escaping bug enabled several attack vectors:\n\n1. **Injection via user data**: Malicious LangChain object structures could be injected through user-controlled fields like `metadata`, `additional_kwargs`, or `response_metadata`\n2. **Class instantiation within trusted namespaces**: Injected manifests could instantiate any `Serializable` subclass, but only within the pre-approved trusted namespaces (`langchain_core`, `lang","public_affected_ranges":[">= 1.0.0, < 1.2.5"]},{"certainty":"source_listed","source_ids":["sr-7ae12ed9ea1f209a35202c5bd5dee339"],"technology":"langchain-core","known_exclusions":[],"conditions_summary":"## Summary\n\nA serialization injection vulnerability exists in LangChain's `dumps()` and `dumpd()` functions. The functions do not escape dictionaries with `'lc'` keys when serializing free-form dictionaries. 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.\n\n### Attack surface\n\nThe core vulnerability was in `dumps()` and `dumpd()`: these functions failed to escape user-controlled dictionaries containing `'lc'` keys. When this unescaped data was later deserialized via `load()` or `loads()`, the injected structures were treated as legitimate LangChain objects rather than plain user data.\n\nThis escaping bug enabled several attack vectors:\n\n1. **Injection via user data**: Malicious LangChain object structures could be injected through user-controlled fields like `metadata`, `additional_kwargs`, or `response_metadata`\n2. **Class instantiation within trusted namespaces**: Injected manifests could instantiate any `Serializable` subclass, but only within the pre-approved trusted namespaces (`langchain_core`, `lang","public_affected_ranges":["< 0.3.81"]}],"null_published_at":"2026-10-31T22:13:31.264Z","source_updated_at":"2026-10-27T16:50:49.000Z","source_disclosed_at":"2025-12-23T18:46:13.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-10-31T21:56:36.327Z"}],"next_cursor":null,"snapshot_revision":"39771"}