Skip to content
HighVulnerabilityLLM-specific

GHSA-3644-q5cj-c5c7: LangSmith SDK: Public prompt pull deserializes untrusted manifests without trust boundary warning

Published
Record updated
View JSON
Affected
  • langchain < 0.3.30, fixed in 0.3.30, released May 7, 2026, 6 days before disclosure
  • langchain-classic < 1.0.7, fixed in 1.0.7, released May 7, 2026, 6 days before disclosure
  • langsmith < 0.6.0, fixed in 0.6.0, released April 30, 2026, 13 days before disclosure
  • and 1 more
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.2%

Summary

The LangSmith SDK's prompt pull methods (`pull_prompt` / `pull_prompt_commit` in Python, `pullPrompt` / `pullPromptCommit` in JS/TS) deserialize prompt manifests from the LangSmith Hub without distinguishing public prompts pulled by `owner/name` from prompts within the caller's own organization. A malicious or compromised publisher can supply manifests that instantiate LangChain objects with attacker-chosen constructor arguments, such as an LLM `base_url`, which can redirect traffic and expose prompts, credentials and other secrets, or alter model behavior.

Mitigation

The LangSmith SDK now blocks pulling public prompts by `owner/name` by default; callers must pass `dangerously_pull_public_prompt=True` (Python) or `dangerouslyPullPublicPrompt: true` (JS/TS) after reviewing the prompt contents. Upgrade to LangSmith SDK Python >= 0.8.0 or JS/TS >= 0.6.0.