CVE-2026-43965
Published: Jun 2, 2026
Modified: Jun 2, 2026
Description
Path traversal vulnerability in Gleam's dependency management allows arbitrary directory deletion via malicious build/packages/packages.toml content. Package keys read from build/packages/packages.toml by LocalPackages::read_from_disc are passed without validation to paths.build_packages_package(), which constructs a filesystem path by joining the project build directory with the attacker-controlled key. The resulting path is then passed to fs::delete_directory (which calls remove_dir_all). No check is performed to ensure the path remains within the intended build/packages/ directory. Both absolute paths and relative traversal sequences (e.g. ../) are accepted as package keys, allowing deletion of arbitrary directories. An attacker who can cause a victim to run gleam deps download on a project containing a malicious build/packages/packages.toml (e.g. by committing the normally-gitignored file to a repository) can cause arbitrary directories on the victim's system to be recursively deleted. This issue affects Gleam from 0.18.0-rc1 until 1.17.0.
| Vendor | Product | Versions |
|---|---|---|
Gleam | Gleam | affected 0.18.0-rc1 - < 1.17.0 |
Gleam | Gleam | affected 0.18.0-rc1 - < 1.17.0affected ed7aec0484f10d60978b63788c8a6497590855ab - < 690ca069817bee5f77a28fc3e360627c1da19291 |
Gleam | Gleam | affected v0.18.0-rc1-elixir - < v1.17.0-elixiraffected v0.18.0-rc1-erlang - < v1.17.0-erlangaffected v0.18.0-rc1-node - < v1.17.0-nodeaffected v0.18.0-rc1-node-slim - < v1.17.0-node-slimaffected v0.18.0-rc1-elixir-slim - < v1.17.0-elixir-slim+5 more versions |
Weaknesses (CWE)
References
Security Training
Train your team to recognize and prevent security threats with our comprehensive security awareness program.
Start TrainingVulnerability Scanning
Discover vulnerabilities in your applications and infrastructure before attackers do.
Scan Now