Read the docs
TI-2026-36816 Aliases CVE-2026-49983GHSA-4c8g-jvcx-v4hv

Deno: process.loadEnvFile() bypasses env permission checks and mutates process.env with only read access

Priority LOW 23CWE-863Published · Updated

Key facts

Attack vector
Local
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
Security bypass
Confidentiality · integrity · availability
Low · Low · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-863.

Summary

Deno is a JavaScript, TypeScript, and WebAssembly runtime. Prior to 2.8.1, environment access is gated by the env permission. You can deny it with --deny-env, or restrict it to a specific allowlist with --allow-env=FOO,BAR. The expectation is that a program running without env permission cannot change process.env. process.loadEnvFile() (the Node-compatible API for loading variables from a .env file) does not honor this. It only checks that the program has read permission for the dotenv file, then writes every key in that file into the process environment — even when env access is denied. In effect, --allow-read plus a writable or attacker-controlled .env file is enough to defeat --deny-env. This vulnerability is fixed in 2.8.1.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.0014 3rd percentileScored 2026-11-07
Fix Fixed deno (denoland): 2.8.1deno (crates.io): 2.8.1

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
denolanddenobefore 2.8.12.8.1Patch availableCNA
—deno (crates.io)before 2.8.12.8.1Patch availableGHSA-4c8g-jvcx-v4hv
  • deno Vendordenoland Affected before 2.8.1 Fixed in 2.8.1 Patch available CNA
  • deno (crates.io) Vendor— Affected before 2.8.1 Fixed in 2.8.1 Patch available GHSA-4c8g-jvcx-v4hv

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:deno:deno:*:*:*:*:*:*:*:*2.3.0 to before 2.8.1Vulnerabledenoland
  • cpe:2.3:a:deno:deno:*:*:*:*:*:*:*:* Versions 2.3.0 to before 2.8.1 Vulnerable ·denoland

Remediation

  • Fix · CNA deno (denoland) Fixed in 2.8.1
  • Fix · GHSA-4c8g-jvcx-v4hv deno (crates.io) Fixed in 2.8.1 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-49983
  2. 2026-10-03 Alias added: GHSA-4c8g-jvcx-v4hv

References

  • TI-2026-21627 Deno has a Command Injection via Incomplete shell metacharacter blocklist in node:child_process CVSS 3.1CRITICAL 9.8
  • TI-2025-17782 Deno's AES GCM authentication tags are not verified CVSS 4.0HIGH 7.7
  • TI-2024-18537 *const c_void / ExternalPointer unsoundness leading to use-after-free CVSS 3.1HIGH 8.8
  • TI-2024-18536 Deno arbitrary file descriptor close via `op_node_ipc_pipe()` leading to permission prompt bypass CVSS 3.1HIGH 8.8
  • TI-2023-12990 Deno is vulnerable to interactive `run` permission prompt spoofing via improper ANSI neutralization CVSS 3.1HIGH 8.8
  • TI-2023-11328 Regular expression denial of service in deno CVSS 3.1HIGH 7.5
See all 37 →

Sources