{"id":"GHSA-m2gf-x3f6-8hq3","revision":"3e57dbe78a3442588f44f47dfe61a623","records":[{"revision":"3e57dbe78a3442588f44f47dfe61a623","observedAt":"2026-10-24T13:19:54.901+00:00","statement":{"source":"osv","id":"GHSA-m2gf-x3f6-8hq3","aliases":["CVE-2025-61787"],"title":"Deno is Vulnerable to Command Injection on Windows During Batch File Execution","description":"### Summary\nDeno versions up to 2.5.1 are vulnerable to Command Line Injection attacks on Windows when batch files are executed.\n\n### Details\nIn Windows, ``CreateProcess()`` always implicitly spawns ``cmd.exe`` if a batch file (.bat, .cmd, etc.) is being executed even if the application does not specify it via the command line. This makes Deno vulnerable to a command injection attack on Windows as demonstrated by the two proves-of-concept below.\n\n### PoC\nUsing `node:child_process` (with the `env` and `run` permissions):\n```JS\nconst { spawn } = require('node:child_process');\nconst child = spawn('./test.bat', ['&calc.exe']);\n```\nUsing `Deno.Command.spawn()` (with the `run` permission):\n```JS\nconst command = new Deno.Command('./test.bat', {\n  args: ['&calc.exe'],\n});\nconst child = command.spawn();\n```\n\n### Impact\nBoth of these scripts result in opening calc.exe on Windows, thus allowing a Command Line Injection attack when user-provided arguments are passed if the script being executed by the child process is a batch script.","state":0,"publishedAt":"2025-10-08T18:16:24+00:00","modifiedAt":"2025-10-08T18:42:29.570571+00:00","affected":[{"ecosystem":"crates.io","name":"deno","ranges":[{"type":"SEMVER","events":[{"kind":"introduced","version":"0"},{"kind":"fixed","version":"2.5.2"}]}],"versions":[],"rawVersionEvidence":null}],"metrics":[{"system":"CVSS_V3","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","score":null,"severity":null},{"system":"Publisher rating","vector":null,"score":null,"severity":"HIGH"}],"references":["https://github.com/denoland/deno/security/advisories/GHSA-m2gf-x3f6-8hq3","https://nvd.nist.gov/vuln/detail/CVE-2025-61787","https://github.com/denoland/deno/pull/30818","https://github.com/denoland/deno/commit/8a0990ccd37bafd8768176ca64b906ba2da2d822","https://github.com/denoland/deno","https://github.com/denoland/deno/releases/tag/v2.2.15","https://github.com/denoland/deno/releases/tag/v2.5.2"],"sourceUrl":"https://github.com/advisories/GHSA-m2gf-x3f6-8hq3","license":"GitHub Advisory Database · CC-BY-4.0","key":"osv:GHSA-m2gf-x3f6-8hq3","identifiers":["GHSA-m2gf-x3f6-8hq3","CVE-2025-61787"]},"retained":false,"historicalAffected":[]}],"coverage":[]}