Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAttacker supplies CRLF-embedded string via application input
-
DeliveryApplication forwards untrusted value to Tesla.Multipart.add_content_type_param/2
-
ExploitParam stored without sanitization in content_type_params
-
ExecutionTesla.Multipart.headers/1 joins params verbatim into Content-Type header
-
PersistCRLF splits header line, injecting attacker-controlled header
-
ImpactDownstream HTTP server receives and processes injected header
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization HTTP response header sanitization
|
| Exploitation Conditions | Two specific conditions must both be met: (1) the application uses Tesla's multipart functionality (Tesla.Multipart) and calls add_content_type_param/2 with data derived from untrusted external input - such as a user-supplied charset, boundary, or other content-type parameter string - rather than hardcoded values; and (2) the attacker can control that input to include CR (\r) or LF (\n) characters. The CVSS AT:P (Attack Requirements: Present) formally encodes condition (1) as a prerequisite. What limits exploitation: the vulnerable code path is specific to multipart request construction and is not triggered by ordinary Tesla HTTP usage; applications passing only hardcoded or internally generated content-type params are unaffected. The AV:L (local) scoring suggests the scoring authority treated the attack vector as application-local rather than network-reachable - real-world risk depends on whether user-supplied web input reaches add_content_type_param/2, which in exposed applications would effectively be a network-vector attack. The integrity impact is confined to downstream HTTP services receiving the injected headers (SI:L), not the Elixir application itself. |
| Impact | The CVSS 4.0 base score of 2.1 (Very Low) reflects a tightly constrained attack surface. AV:L (local attack vector) indicates the attacker must have some form of local influence over data flowing into the vulnerable function, and AT:P (attack requirements present) confirms a prerequisite condition - specifically, the application must route untrusted external input to add_content_type_param/2. PR:N/UI:N means no authentication or user interaction is required beyond that precondition. The impact metrics show zero confidentiality, integrity, or availability impact on the vulnerable system itself (VC:N/VI:N/VA:N) and only low integrity impact on subsequent downstream systems (SI:L), consistent with header injection affecting the receiving HTTP server rather than the Elixir application. There is no CISA KEV listing and no publicly identified POC at time of analysis, placing exploitation probability in the low-to-negligible range. The practical risk is contingent entirely on application design: libraries that accept and forward user-controlled charset or boundary parameters into multipart requests are exposed; those that only pass hardcoded or internally generated values are not. The AV:L classification warrants vendor verification - the description implies attacker-controlled web input flows into the library, which in many deployments would constitute a network-reachable attack surface, potentially underscoring the CVSS score. |
| Exploit ScenarioDerived | An attacker submits an HTTP request to a web application containing a charset field set to a value like "utf-8\r\nX-Injected: pwned". The application reads this value from the request and passes it directly to Tesla.Multipart.add_content_type_param/2 when constructing an outbound multipart request to a backend API. Tesla.Multipart.headers/1 joins the params verbatim, producing a Content-Type header that splits at the CRLF, and the injected header "X-Injected: pwned" is transmitted to the downstream service - potentially bypassing security checks, poisoning caches, or manipulating backend logic that trusts specific custom headers. No public exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 02, 2026
HTTP header injection in the Tesla Elixir HTTP client library (versions 0.8.0 through before 1.18.3) allows untrusted input forwarded into Tesla.Multipart.add_content_type_param/2 to split outbound Content-Type headers by embedding CR (\r) or LF (\n) characters. When Tesla.Multipart.headers/1 joins content_type_params verbatim with "; ", a maliciously crafted param string terminates the current header line and inserts arbitrary headers into the outbound HTTP request sent by the Tesla client to downstream systems. No public exploit code has been identified at time of analysis, and no CISA KEV listing exists; however, a vendor-released patch is available in version 1.18.3.
RemediationAI
Vendor-released patch: tesla 1.18.3. Applications using the Tesla library should upgrade to version 1.18.3 or later, which introduces strict RFC 7230/7231 input validation in Tesla.Multipart - invalid characters in content-type params, header names, header values, and disposition values now raise ArgumentError at the point of insertion rather than being silently passed through. The upstream patch commit is available at https://github.com/elixir-tesla/tesla/commit/23601edac5d22ba9407b427967b5bdbda201aec2 and the vendor advisory at https://github.com/elixir-tesla/tesla/security/advisories/GHSA-q7jx-v53g-848w. If an immediate upgrade is not feasible, applications should sanitize any user-supplied strings by stripping or rejecting CR (\r), LF (\n), and semicolons before passing them to add_content_type_param/2; this should be done at the application boundary where untrusted input is first received. As a further defense, restrict which user-controlled fields are permitted to flow into multipart parameter construction, or replace dynamic charset/param selection with a server-side allowlist of known-safe values - this eliminates the attack surface entirely but may limit flexibility.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Tesla is a flexible, composable HTTP client library for Elixir (CPE: cpe:2.3:a:elixir-tesla:tesla:*:*:*:*:*:*:*:*). The affected component is the Tesla.Multipart module, which constructs multipart/form-data HTTP requests. Specifically, Tesla.Multipart.add_content_type_param/2 appends a caller-supplied string to an internal content_type_params list, and Tesla.Multipart.headers/1 later joins those params with "; " to form the Content-Type header value - neither function validated for CR (\r) or LF (\n) characters prior to the fix. CWE-113 (Improper Neutralization of CRLF Sequences in HTTP Headers) describes this root cause class precisely: when untrusted data containing CRLF is embedded in an HTTP header value, it terminates the current header line and begins a new, attacker-controlled one. The fix (commit 23601edac5d22ba9407b427967b5bdbda201aec2) introduced RFC 7230/7231-compliant character guards (is_tchar, is_field_vchar, is_qdtext) and dedicated assertion functions that raise ArgumentError when any invalid character - including CR, LF, semicolons, or ASCII control characters - appears in content-type params, header names/values, or multipart disposition values.
Know when Tesla gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:N/SI:L/SA:N
Primary rating from Vendor (EEF) · only source for this CVE.
CVSS VectorVendor: EEF
Lifecycle Timeline
1DescriptionCVE.org
Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Response Splitting') vulnerability in elixir-tesla tesla allows HTTP header injection via Tesla.Multipart.add_content_type_param/2.
Tesla.Multipart.add_content_type_param/2 appends caller-supplied strings to the multipart content_type_params list without validating for CR (\r) or LF (\n) characters. Tesla.Multipart.headers/1 then joins these params verbatim with "; " to construct the outgoing Content-Type header value. A param containing \r\n splits the header line, allowing arbitrary headers to be injected into the outbound HTTP request. Any application that forwards untrusted input (such as a user-supplied charset or parameter string) into add_content_type_param/2 is affected.
This issue affects tesla: from 0.8.0 before 1.18.3.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Denial-of-service in elixir-tesla Tesla versions 0.6.0 through 1.18.2 allows remote servers to crash or freeze calling E
Credential leakage in elixir-tesla (Tesla HTTP client for Elixir) versions 1.4.0 through 1.18.2 allows Authorization and
Denial of service in the Elixir Tesla HTTP client (versions 1.3.0 through 1.18.2) when using the Tesla.Adapter.Mint adap
Tesla Model X vehicles before 2020-11-23 have key fobs that accept firmware updates without signature verification. Rate
Tesla Model 3 vehicles allow attackers to open a door by leveraging access to a legitimate key card, and then using NFC
The driving interface of Tesla Model 3 vehicles in any release before 2020.4.10 allows Denial of Service to occur due to
Tesla Model 3 V11.0(2022.4.5.1 6b701552d7a6) Tesla mobile app v4.23 is vulnerable to Authentication Bypass by spoofing.
Local privilege escalation and code execution in the NVIDIA Display Driver for Linux (GeForce, RTX/Quadro/NVS, Tesla, an
The renderer process in the entertainment system on Tesla Model 3 vehicles mishandles JIT compilation, which allows atta
Tesla Model X vehicles before 2020-11-23 do not perform certificate validation during an attempt to pair a new key fob w
Tesla Model X vehicles before 2020-11-23 have key fobs that rely on five VIN digits for the authentication needed for a
Certain Tesla vehicles through 2022-03-26 allow attackers to open the charging port via a 315 MHz RF signal containing a
EUVD-2026-34016
GHSA-q7jx-v53g-848w
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB