Track vulnerabilities like this one. Sign up free to get alerted when software you use is affected.
7.8

CVE-2025-48888: Deno lets scripts read files even when denied

CVE-2025-48888 · published 1 year ago
Summary

Versions of Deno before 2.1.13 (and earlier 1.41.3) may ignore a command that tries to block file access, allowing scripts to read files anyway. This only happens when contradictory permission flags are used, so the risk to most users is low. Updating Deno to version 2.1.13 or later removes the issue.

What to do
  • Update bartlomieju deno to version 2.1.13.
  • Update bartlomieju deno to version 2.2.13.
  • Update bartlomieju deno to version 2.3.2.
  • Update bartlomieju deno_runtime to version 0.212.0.
Affected software
Ecosystem VendorProductAffected versions
rust bartlomieju deno >= 1.41.3, < 2.1.13
>= 2.2.0, < 2.2.13
>= 2.3.0, < 2.3.2
Fix: upgrade to 2.1.13
rust bartlomieju deno_runtime >= 0.150.0, < 0.212.0
Fix: upgrade to 0.212.0
– deno deno >= 1.41.3, < 2.1.13
>= 2.2.0, < 2.2.13
>= 2.3.0, < 2.3.2
cpe:2.3:a:deno:deno:*:*:*:*:*:*:*:*
Original advisory text
Deno run with --allow-read and --deny-read flags results in allowed
Deno is a JavaScript, TypeScript, and WebAssembly runtime. Starting in version 1.41.3 and prior to versions 2.1.13, 2.2.13, and 2.3.2, `deno run --allow-read --deny-read main.ts` results in allowed, even though 'deny' should be stronger. The result is the same with all global unary permissions given as `--allow-* --deny-*`. This only affects a nonsensical combination of flags, so there shouldn't be a real impact on the userbase. Users may upgrade to version 2.1.13, 2.2.13, or 2.3.2 to receive a patch.
Fix within
Internet-facing 14 days
Internal 60 days
  • Not known to be exploited
  • Can be exploited automatically
  • Gives an attacker partial control
Severity
7.8 High
Exploitation
<1% chance of attack within 30 days
Type
CWE-863Incorrect Authorization
Timeline
Published4 Jun 2025
Updated4 Nov 2026
First seen6 Mar 2026
Sources
Track software like this
Free during beta