{"answers":{"affected":"11 open source packages ship an affected version, including langsmith, langchain and langchain-classic.","exploited":"There is no known exploitation of CVE-2026-45134 in the wild and no public exploit code.","fix":"Upgrade langsmith to a fixed version for your release line: 0.8.0 or 0.6.0.","what":"CVE-2026-45134 is a high-severity unsafe deserialization vulnerability in langchain-ai langsmith-sdk, published on 27 May 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2026-45134 and fix it if it is affected.\n\nWhat it is: CVE-2026-45134 is a high-severity unsafe deserialization vulnerability in langchain-ai langsmith-sdk, published on 27 May 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.\nExploitation: There is no known exploitation of CVE-2026-45134 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- langsmith (PyPI): affected all versions; fixed in 0.8.0\n- langsmith (PyPI): affected all versions; fixed in 0.8.0\n- langsmith (PyPI): affected all versions; fixed in 0.8.0\n- langsmith (npm): affected all versions; fixed in 0.6.0\n- langsmith (npm): affected all versions; fixed in 0.6.0\n- langchain (PyPI): affected all versions; fixed in 0.3.30\n- langchain (PyPI): affected all versions; fixed in 0.3.30\n- langchain (PyPI): affected all versions; fixed in 0.3.30\n- langchain-classic (PyPI): affected all versions; fixed in 1.0.7\n- langchain-classic (PyPI): affected all versions; fixed in 1.0.7\n- langchain-classic (PyPI): affected all versions; fixed in 1.0.7\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-45134/ (Markdown: https://insights.sbomify.com/CVE-2026-45134/index.md)","id":"CVE-2026-45134","markdown":"https://insights.sbomify.com/CVE-2026-45134/index.md","name":"CVE-2026-45134","record":{"aliases":["CLEANSTART-2026-DX34363","ECHO-442c-bb23-6599","GHSA-3644-q5cj-c5c7","MINI-2xp4-cr7x-rvv9","MINI-5rp5-8rvg-882p","MINI-65m3-p8fc-33r4","MINI-7fgh-72v3-qh7h","MINI-98hf-4j3x-qxch","MINI-9cj2-vc36-8479","MINI-9r9p-2hf6-r6qv","MINI-c7h8-799c-8vp6","MINI-gr9m-vjgr-874x","MINI-mg9r-74g7-m7jg","MINI-pc4j-mcgp-g4w6","MINI-r97w-pq8m-x2xg","MINI-xm3g-cvwv-7rj7","PYSEC-2026-2555","PYSEC-2026-2560","PYSEC-2026-2582","ROOT-APP-NPM-CVE-2026-45134","ROOT-APP-PYPI-CVE-2026-45134"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["code_execution"],"network_reachable":"yes","non_default_config":false,"product_category":"LangSmith Client SDK","requires_auth":"none","summary":"Attackers can execute arbitrary code by providing malicious serialized manifests in public LangSmith prompts, affecting SDK users pulling external content.","user_interaction":"required","vuln_class":"deserialization"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":7.1,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:L/A:N","version":"3.1"},"cwes":[{"id":"CWE-502","name":"Deserialization of Untrusted Data"}],"description":"LangSmith Client SDKs provide SDK's for interacting with the LangSmith platform. Prior to LangSmith SDK Python 0.8.0 and JS/TS 0.6.0, the LangSmith SDK's prompt pull methods (pull_prompt / pull_prompt_commit in Python, pullPrompt / pullPromptCommit in JS/TS) fetch and deserialize prompt manifests from the LangSmith Hub. These manifests may contain serialized LangChain objects and model configuration that affect runtime behavior. When pulling a public prompt by owner/name identifier, the manifest content is controlled by an external party, but prior versions of the SDK did not distinguish this from pulling a prompt within the caller's own organization. This vulnerability is fixed in LangSmith SDK Python 0.8.0 and JS/TS 0.6.0.","ecosystems":["PyPI","npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"LangSmith Client SDK: Public prompt pull deserializes untrusted manifests without trust boundary warning","id":"CVE-2026-45134","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"PyPI","product":null,"products":[],"type":"deserialization","year":"2026"},"n_packages":11,"n_references":1,"next":{"headline":"Caddy: Unsafe Unicode Handling in FastCGI splitPos Allows Execution of Non-PHP Files","id":"CVE-2026-45135"},"packages":[{"ecosystem":"PyPI","fixed":["0.3.30"],"introduced":["0"],"last_affected":[],"package":"langchain","purl":null,"source":"GHSA-3644-q5cj-c5c7"},{"ecosystem":"PyPI","fixed":["0.3.30"],"introduced":["0"],"last_affected":[],"package":"langchain","purl":"pkg:pypi/langchain","source":"GHSA-3644-q5cj-c5c7"},{"ecosystem":"PyPI","fixed":["0.3.30"],"introduced":["0"],"last_affected":[],"package":"langchain","purl":"pkg:pypi/langchain","source":"PYSEC-2026-2555"},{"ecosystem":"PyPI","fixed":["1.0.7"],"introduced":["0"],"last_affected":[],"package":"langchain-classic","purl":null,"source":"GHSA-3644-q5cj-c5c7"},{"ecosystem":"PyPI","fixed":["1.0.7"],"introduced":["0"],"last_affected":[],"package":"langchain-classic","purl":"pkg:pypi/langchain-classic","source":"GHSA-3644-q5cj-c5c7"},{"ecosystem":"PyPI","fixed":["1.0.7"],"introduced":["0"],"last_affected":[],"package":"langchain-classic","purl":"pkg:pypi/langchain-classic","source":"PYSEC-2026-2560"},{"ecosystem":"PyPI","fixed":["0.8.0"],"introduced":["0"],"last_affected":[],"package":"langsmith","purl":null,"source":"GHSA-3644-q5cj-c5c7"},{"ecosystem":"PyPI","fixed":["0.8.0"],"introduced":["0"],"last_affected":[],"package":"langsmith","purl":"pkg:pypi/langsmith","source":"GHSA-3644-q5cj-c5c7"},{"ecosystem":"PyPI","fixed":["0.8.0"],"introduced":["0"],"last_affected":[],"package":"langsmith","purl":"pkg:pypi/langsmith","source":"PYSEC-2026-2582"},{"ecosystem":"npm","fixed":["0.6.0"],"introduced":["0"],"last_affected":[],"package":"langsmith","purl":null,"source":"GHSA-3644-q5cj-c5c7"},{"ecosystem":"npm","fixed":["0.6.0"],"introduced":["0"],"last_affected":[],"package":"langsmith","purl":"pkg:npm/langsmith","source":"GHSA-3644-q5cj-c5c7"}],"prev":{"headline":"Symfony: [Yaml] Harden the parser when handling untrusted input","id":"CVE-2026-45133"},"products":["langsmith-sdk"],"published":"2026-05-27","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CC BY 4.0","name":"PyPA Advisory Database","prefix":"PYSEC"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-06-02","vendors":["langchain-ai"]},"summary":"Attackers can execute arbitrary code by providing malicious serialized manifests in public LangSmith prompts, affecting SDK users pulling external content.","url":"https://insights.sbomify.com/CVE-2026-45134/"}