Skip to main content
← All vulnerabilities
CVE-2026-48598EEF-CVE-2026-48598GHSA-28JH-G32X-V9V4

CRLF injection in Tesla.Multipart disposition parameters allows multipart part header injection

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 1.18.3
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: partial

Summary

Improper Encoding or Escaping of Output vulnerability in elixir-tesla tesla allows multipart part header injection via unescaped Content-Disposition parameter values. Tesla.Multipart.part_headers_for_disposition/1 interpolates each disposition parameter as #{k}="#{v}" with no validation of CR (\r), LF (\n), or double-quote characters. The values come verbatim from the caller via Tesla.Multipart.add_field/4 (the name parameter), Tesla.Multipart.add_file/3, and Tesla.Multipart.add_file_content/4 (both the filename parameter and other disposition opts). A " in the value closes the quoted parameter early; a \r\n ends the Content-Disposition header line and starts a new part header (such as a forged Content-Type), or, after a second \r\n, ends the entire part header block and prepends bytes to the part body. The default-filename path in add_file/3 derives the filename via Path.basename/1, which does not strip CR or LF, so any application forwarding a partially-attacker-controlled file path inherits the same issue. This issue affects tesla: from 0.8.0 before 1.18.3.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • tesla

    From 0.8.0 · fixed in 1.18.3

  • elixir-tesla/tesla

    From 6ebfdb9abe9c6f119408045b933d82462decd351 · fixed in bb1a2c3da2775924d96e3db8e315dcc4d5d2246e

  • teslaHex

    From 0.8.0 · fixed in 1.18.3

References 5

GitHub · elixir-tesla/tesla

cna.erlef.org

osv.dev