CVE-2026-44843CWE-502

LangChain: Unsafe deserialization of attacker-controlled LangChain objects through overly broad `load()` allowlists

High · published May 26, 2026

CVSS v3.1
8.2
EPSS
0%
Percentile
31.0
In the wild
Unconfirmed
What it is

LangChain is a framework for building agents and LLM-powered applications. Prior to 0.3.85 and 1.3.3, LangChain contains older runtime code paths that deserialize run inputs, run outputs, or other application-controlled payloads using overly broad object allowlists. These paths may call load() with allowed_objects="all". This does not enable arbitrary Python object deserialization, but it does allow any trusted LangChain-serializable object to be revived, which is broader than these runtime paths require. As a result, attacker-supplied LangChain serialized constructor dictionaries may cause trusted runtime paths to instantiate classes with untrusted constructor arguments. This vulnerability is fixed in 0.3.85 and 1.3.3.

The record
Technical detail
CVSS v3.1
8.2 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
CVSS v4.0
Not supplied
EPSS
0.00382 · 31.0th percentile
Weakness
CWE-502 · Deserialization of Untrusted Data
Published
2026-05-26T19:47Z
EPSS history
Timeline
  • 26 MAY 19:47Z
    LangChain: Unsafe deserialization of attacker-controlled LangChain objects through overly broad `load()` allowlists
    cvelistv5