On this page
CVE Details
- Protection status: Protected by Atomicorp rules · About protection statuses
- CVE: CVE-2026-103061
- Name: Path traversal in Gleam via unvalidated package application names
- Severity: Medium
- CVSS: 5.9 (v4.0) (Medium)
- CVSS version: 4.0
- CVSS source: EEF CNA
- CVSS vector:
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X- Attack vector: Network
- Attack complexity: Low
- Attack requirements: Present
- Privileges required: None
- User interaction: Active
- Vulnerable-system confidentiality: None
- Vulnerable-system integrity: None
- Vulnerable-system availability: High
- Subsequent-system confidentiality: Negligible
- Subsequent-system integrity: None
- Subsequent-system availability: None
- Safety: Not defined
- CWE: CWE-22 — Improper Limitation of a Pathname to a Restricted Directory (‘Path Traversal’)
- Related CAPEC attack patterns (via MITRE CWE relationships): CAPEC-126 (opens in a new tab) , CAPEC-64 (opens in a new tab) , CAPEC-76 (opens in a new tab) , CAPEC-78 (opens in a new tab) , CAPEC-79 (opens in a new tab)
- Vendor: Gleam
- Vulnerable product: Gleam
- CVE published: 2026-10-12
- CVE last modified: 2026-10-16
- EPSS: 0.0040; 33.5th percentile as of 2026-10-21 (FIRST (opens in a new tab) )
- Latest Update: 2026-10-13
- Selected Rule IDs observed: 340007 , 344360 , 347009 , 390709
- Matching rules: 4; rules with blocking actions: 4
- Would-block Rule IDs: 340007 , 344360 , 347009 , 390709
- Request surfaces inspected: JSON request data, Request URI, Request argument names, Request arguments, Request cookies, Request filename, SOAP request data, XML request data
Technical vulnerability details · CVSS assessments, exploit evidence & CPE data
CVSS assessments
CVSS v4.0 · EEF
- Base score: 5.9
- Base severity: MEDIUM
- Assessment type: Secondary
- Source identifier: 6b3ad84c-e1a6-4bf7-a703-f496b71e49db
- Full vector:
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X- Attack vector: Network
- Attack complexity: Low
- Attack requirements: Present
- Privileges required: None
- User interaction: Active
- Vulnerable-system confidentiality: None
- Vulnerable-system integrity: None
- Vulnerable-system availability: High
- Subsequent-system confidentiality: Negligible
- Subsequent-system integrity: None
- Subsequent-system availability: None
- Safety: Not defined
- Exploit maturity: Not scored
Exploitability and impact subscores describe the vulnerability’s technical characteristics. Exploit maturity describes the reported state of exploitation; these are separate measures.
Assessment source: NVD record (opens in a new tab) · CVE record (opens in a new tab)
CISA SSVC assessments
These are CISA’s published decision points at the assessment time. They are not a complete organization-specific prioritization decision.
- Provider: CISA ADP
- Provider identifier: 134c704f-9b21-4f2e-91b3-4a467353bcc0
- SSVC version: 2.0.3
- Role: CISA Coordinator
- Assessment timestamp: 2026-10-16T17:49:26.374732Z
- Exploitation: none
- Automatable: no
- Technical Impact: partial
- Source: CISA ADP in the CVE record (opens in a new tab)
Vulnerable CPE configurations
No vulnerable CPE configurations are supplied in the current NVD record. See the affected-product information and vendor guidance on this page.
Vulnerability Description
Improper Limitation of a Pathname to a Restricted Directory (‘Path Traversal’) vulnerability in gleam-lang gleam allows a malicious package publisher to delete a directory outside the project’s build directory when a developer builds a project.
A Hex package release’s metadata carries an app field with the release’s OTP application name. Gleam reads this field from the hex.pm release API when it downloads dependencies and uses it as the package’s build directory name without validating it (hex_manifest_package in compiler-cli/src/dependencies.rs, ProjectPaths::build_directory_for_package). When a dependency fails to compile, Gleam deletes that directory with remove_dir_all. hex.pm didn’t restrict the field to a directory name before 2026-10-12, so a publisher could set it to a value such as ../../../../target or an absolute path. When a project depends on such a release directly or transitively and the release fails to compile, gleam build, gleam check, gleam run, gleam test or gleam export deletes the directory the name resolves to. For a pure Gleam package no publisher code runs.
This issue affects gleam: from 0.32.4 before 1.19.2.
Recommended Actions
Maintain the observed Atomicorp protections. Keep your Atomicorp commercial rules current and confirm that the selected observed rules (340007 , 344360 , 347009 , 390709 ) have not been locally disabled. Atomicorp commercial rules are enabled by default. If you use Atomic WAF, review the applicable policy and rule settings.
Apply the vendor’s remediation. WAF protection is defense in depth and does not replace upgrading or following the affected vendor’s guidance.
- Affected versions: Gleam versions earlier than 1.19.2.
- Affected versions: Gleam versions earlier than v1.19.2-elixir.
- Affected versions: Gleam versions earlier than v1.19.2-erlang.
- Affected versions: Gleam versions earlier than v1.19.2-node.
- Affected versions: Gleam versions earlier than v1.19.2-node-slim.
- Affected versions: Gleam versions earlier than v1.19.2-elixir-slim.
- Affected versions: Gleam versions earlier than v1.19.2-erlang-slim.
- Affected versions: Gleam versions earlier than v1.19.2-erlang-alpine.
- Affected versions: Gleam versions earlier than v1.19.2-elixir-alpine.
- Affected versions: Gleam versions earlier than v1.19.2-node-alpine.
- Affected versions: Gleam versions earlier than v1.19.2-scratch.
- Affected versions: Gleam version d13f27ee80aae7a521d2e9433c4deaf53f892574.
- Recommended upgrade: Upgrade Gleam to 1.19.2 or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-elixir or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-erlang or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-node or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-node-slim or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-elixir-slim or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-erlang-slim or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-erlang-alpine or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-elixir-alpine or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-node-alpine or later.
- Recommended upgrade: Upgrade Gleam to v1.19.2-scratch or later.
- CNA guidance source: EEF (opens in a new tab)
- Vendor recommendation: Upgrade Gleam to 1.19.2 or later. Gleam then rejects a hex.pm release whose OTP application name, or the application name it gives a dependency, isn’t a lowercase letter followed by lowercase letters, digits and _.
Validate after changes. Confirm rule updates are current, review WAF events for the affected application, and test application behavior after vendor upgrades, mitigations, or local policy changes.
Research Notes
Atomicorp WAF protections are designed around attack techniques and exploit behaviors, allowing existing protections to apply across multiple vulnerabilities without requiring a unique rule for every CVE.
Public Vulnerability References
- NVD (opens in a new tab)
- CVE Record (opens in a new tab)
- CVE authority reference: https://cna.erlef.org/cves/CVE-2026-103061.html (opens in a new tab)
- CVE authority reference: https://github.com/gleam-lang/gleam/commit/54bbb2b98af1505b6eed93c45b1936fc76412e5c (opens in a new tab)
- CVE authority reference: https://github.com/gleam-lang/gleam/commit/d13f27ee80aae7a521d2e9433c4deaf53f892574 (opens in a new tab)
- CVE authority reference: https://github.com/gleam-lang/gleam/commit/d15c981fac6e533d70ac8ee89a6ef4dbf139adc3 (opens in a new tab)
- CVE authority reference: https://github.com/gleam-lang/gleam/security/advisories/GHSA-jhcr-c7qm-8589 (opens in a new tab)
- CVE authority reference: https://osv.dev/vulnerability/EEF-CVE-2026-103061 (opens in a new tab)
Test or Research Source
- Source: Atomicorp AI Research Framework
- Tags: cve, derived, traversal, waf-probe
Research Note Context
This research note documents exploit-technique analysis associated with this vulnerability and references Atomicorp WAF protections observed during engineering review, testing, or validation activities.
Atomicorp security controls are generally designed to identify and mitigate attack techniques and exploit behaviors rather than individual CVE identifiers. As a result, protections developed for one vulnerability may also apply to related attack variants and future vulnerabilities using similar techniques.
Learn More
Atomicorp develops commercially supported security technologies for web applications, servers, endpoints, workloads, and legacy enterprise platforms.
Organizations interested in protecting systems against exploit techniques associated with vulnerabilities such as this one can learn more about:
- Atomic ModSecurity Rules: commercially maintained WAF rules for ModSecurity deployments, including protections for web attacks, bots, scanners, malware, exploitation attempts, and emerging vulnerability classes.
- Atomic WAF: an enterprise web application firewall with Atomicorp rules, centralized management, reporting, authentication controls, and operational tooling.
- Atomic ModSecurity Integrator: a special licensing option for MSPs, MSSPs, OEMs, VARs, reverse proxy providers, and other integrators who want to incorporate Atomicorp ModSecurity rule technology into their own products or services.
- Atomic OSSEC: an enterprise OSSEC-based intrusion detection, compliance, and security monitoring platform.
- Atomic Protector: workload protection for Linux, web, cloud, data center, and hybrid environments.
For additional information, product evaluations, or technical discussions, visit https://www.atomicorp.com/ or https://modsecurity.io/ (opens in a new tab) .