Vulnerability advisory

EEF-CVE-2026-48597

Atom table exhaustion via untrusted URL scheme in Tesla.Adapter.Mint

Published Updated OSV record ↗

Also known as CVE-2026-48597GHSA-h74c-q9j7-mpcm

Severity
  • CVSS 4.0CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Affected versions

Repository

Affected commitsFixed by commit
GIT github.com/elixir-tesla/tesla ↗
ccd0823d4ba37581a37d8f6108f9a81b263237ef to before 4699c3cb3e2fd6078f99f45f11cf7466aeedbf0e4699c3cb3e2fd6078f99f45f11cf7466aeedbf0e
Also listed as affected (44)
  • v1.18.2
  • v1.18.1
  • v1.18.0
  • v1.17.0
  • v1.16.0
  • v1.15.3
  • v1.15.2
  • v1.15.1
  • v1.15.0
  • v1.14.3
  • v1.14.2
  • v1.14.1
  • v1.14.0
  • v1.13.2
  • v1.13.1
  • v1.13.0
  • v1.12.3
  • v1.12.2
  • v1.12.1
  • v1.12.0
  • v1.11.2
  • v1.11.1
  • v1.11.0
  • v1.10.3
  • v1.10.2
  • v1.10.1
  • v1.10.0
  • v1.9.0
  • v1.8.0
  • v1.7.0
  • v1.6.1
  • v1.6.0
  • v1.5.1
  • v1.5.0
  • v1.4.4
  • v1.4.3
  • v1.4.2
  • v1.4.1
  • v1.4.0
  • v1.3.3
  • v1.3.2
  • v.1.3.2
  • v1.3.1
  • v1.3.0

Description

Summary

Allocation of Resources Without Limits or Throttling vulnerability in elixir-tesla tesla allows denial of service via atom table exhaustion in Tesla.Adapter.Mint.

Tesla.Adapter.Mint.open_conn/2 converts the URL scheme of every outgoing request to a BEAM atom via String.to_atom(uri.scheme) with no allow-list validation. BEAM atoms are never garbage-collected and the atom table is bounded (approximately 1,048,576 entries by default). An attacker who can influence the URL of a Tesla request — either via an application-level URL-forwarding feature (webhook, proxy, importer) or via a Location header returned by a server when Tesla.Middleware.FollowRedirects is in the pipeline — can mint one fresh permanent atom per request by varying the scheme string. After enough requests the atom table fills and the VM crashes, taking down the entire application.

This issue affects tesla: from 1.3.0 before 1.18.3.

Configurations

The application must use Tesla.Adapter.Mint and either expose a feature that forwards attacker-controlled URLs to Tesla, or include Tesla.Middleware.FollowRedirects in the middleware pipeline.

References

  • Codex
  • Claude Code
  • VS Code
  • GitHub Copilot
  • Cursor
  • Cline
  • Windsurf
  • Google Anti-gravity
  • OpenCode
  • Pi
  • Gemini CLI
  • Hermes Agent
  • Zed
  • Junie
  • Qwen Code
  • Kiro
  • Kilo Code
  • Factory Droid

Set up GitHits for your agents

Run this command:

<> bash
npx githits@latest init

What happens next:

  1. Opens your browser to authorize GitHits
  2. Asks whether to set up GitHits at the user or project level
  3. Detects your supported AI coding tools
  4. Lets you choose which tools to configure
  5. Configures the selected tools