← Scan another repo

github.com/d3/d3

@ ca958d45217b

Submitted 8/4/2026, 10:25:53 AM · Status: ok

Risk grade
F
100 / 100
Findings
57
0 critical0 high57 medium0 low0 info1 on CISA KEV0ATT&CK
Showing 57 of 57 findings

Findings

  • Vite has a `server.fs.deny` bypassed for `inline` and `raw` with `?import` queryKEV
    ### Summary The contents of arbitrary files can be returned to the browser. ### Impact Only apps explicitly exposing the Vite dev server to the network (using `--host` or [`server.host` config option](https://vitejs.dev/config/server-options.html#server-host)) are affected. ##…
    osv-scannerCVE-2025-31125
  • Ensure top-level permissions are not set to write-all
    Ensure top-level permissions are not set to write-all on on(Test)
    checkov.github/workflows/test.yml:0
  • Ensure top-level permissions are not set to write-all
    Ensure top-level permissions are not set to write-all on on(Deploy)
    checkov.github/workflows/deploy.yml:11
  • ajv has ReDoS when using `$data` option
    ajv (Another JSON Schema Validator) through version 8.17.1 is vulnerable to Regular Expression Denial of Service (ReDoS) when the `$data` option is enabled. The pattern keyword accepts runtime data via JSON Pointer syntax (`$data` reference), which is passed directly to the JavaS…
    osv-scannerCVE-2025-69873
  • brace-expansion Regular Expression Denial of Service vulnerability
    A vulnerability was found in juliangruber brace-expansion up to 1.1.11/2.0.1/3.0.0/4.0.0. It has been rated as problematic. Affected by this issue is the function expand of the file index.js. The manipulation leads to inefficient regular expression complexity. The attack may be l…
    osv-scannerCVE-2025-5889
  • brace-expansion Regular Expression Denial of Service vulnerability
    A vulnerability was found in juliangruber brace-expansion up to 1.1.11/2.0.1/3.0.0/4.0.0. It has been rated as problematic. Affected by this issue is the function expand of the file index.js. The manipulation leads to inefficient regular expression complexity. The attack may be l…
    osv-scannerCVE-2025-5889
  • brace-expansion: DoS via exponential-time expansion of consecutive non-expanding {} groups
    ### Summary brace-expansion's expand() exhibits exponential-time - O(2ⁿ) - behavior in the number of consecutive non-expanding {} groups. A short, all-ASCII input (~90 bytes/30 groups) blocks the calling thread for minutes; a slightly longer input hangs it effectively indefinitel…
    osv-scannerCVE-2026-13149
  • brace-expansion: DoS via exponential-time expansion of consecutive non-expanding {} groups
    ### Summary brace-expansion's expand() exhibits exponential-time - O(2ⁿ) - behavior in the number of consecutive non-expanding {} groups. A short, all-ASCII input (~90 bytes/30 groups) blocks the calling thread for minutes; a slightly longer input hangs it effectively indefinitel…
    osv-scannerCVE-2026-13149
  • brace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash
    ### Summary `expand()` bounds the *number* of results it produces (the `max` option, `100_000` by default) but not their *length*. By chaining many brace groups, an attacker keeps the result count under `max` while making every result grow with the number of groups. Building `ma…
    osv-scannerCVE-2026-14257
  • brace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash
    ### Summary `expand()` bounds the *number* of results it produces (the `max` option, `100_000` by default) but not their *length*. By chaining many brace groups, an attacker keeps the result count under `max` while making every result grow with the number of groups. Building `ma…
    osv-scannerCVE-2026-14257
  • brace-expansion: Zero-step sequence causes process hang and memory exhaustion
    ### Impact A brace pattern with a zero step value (e.g., `{1..2..0}`) causes the sequence generation loop to run indefinitely, making the process hang for seconds and allocate heaps of memory. The loop in question: https://github.com/juliangruber/brace-expansion/blob/daa71bcb4…
    osv-scannerCVE-2026-33750
  • brace-expansion: Zero-step sequence causes process hang and memory exhaustion
    ### Impact A brace pattern with a zero step value (e.g., `{1..2..0}`) causes the sequence generation loop to run indefinitely, making the process hang for seconds and allocate heaps of memory. The loop in question: https://github.com/juliangruber/brace-expansion/blob/daa71bcb4…
    osv-scannerCVE-2026-33750
  • Cross-site Scripting (XSS) in serialize-javascript
    A flaw was found in npm-serialize-javascript. The vulnerability occurs because the serialize-javascript module does not properly sanitize certain inputs, such as regex or other JavaScript object types, allowing an attacker to inject malicious code. This code could be executed whe…
    osv-scannerCVE-2024-11831
  • DOM Clobbering Gadget found in rollup bundled scripts that leads to XSS
    ### Summary We discovered a DOM Clobbering vulnerability in rollup when bundling scripts that use `import.meta.url` or with plugins that emit and reference asset files from code in `cjs`/`umd`/`iife` format. The DOM Clobbering gadget can lead to cross-site scripting (XSS) in we…
    osv-scannerCVE-2024-47068
  • esbuild enables any website to send any requests to the development server and read the response
    ### Summary esbuild allows any websites to send any request to the development server and read the response due to default CORS settings. ### Details esbuild sets `Access-Control-Allow-Origin: *` header to all requests, including the SSE connection, which allows any websites t…
    osv-scanner
  • flatted vulnerable to unbounded recursion DoS in parse() revive phase
    ## Summary flatted's `parse()` function uses a recursive `revive()` phase to resolve circular references in deserialized JSON. When given a crafted payload with deeply nested or self-referential `$` indices, the recursion depth is unbounded, causing a stack overflow that crashes…
    osv-scannerCVE-2026-32141
  • js-yaml has prototype pollution in merge (<<)
    ### Impact In js-yaml 4.1.0, 4.0.0, and 3.14.1 and below, it's possible for an attacker to modify the prototype of the result of a parsed yaml document via prototype pollution (`__proto__`). All users who parse untrusted yaml documents may be impacted. ### Patches Problem is p…
    osv-scannerCVE-2025-64718
  • JS-YAML: Quadratic-complexity DoS in merge key handling via repeated aliases
    ### Summary A crafted YAML document can trigger algorithmic CPU exhaustion in `js-yaml` merge-key processing (`<<`) by repeating the same alias many times in a merge sequence. This causes quadratic parse-time behavior relative to input size and can block a Node.js worker/event …
    osv-scannerCVE-2026-53550
  • js-yaml: YAML merge-key chains can force quadratic CPU consumption
    ### Impact js-yaml can spend quadratic CPU time parsing a document whose size grows only linearly. The issue is triggered by a chain of mappings where each mapping merges the previous one: ```yaml a0: &a0 { k0: 0 } a1: &a1 { <<: *a0, k1: 1 } a2: &a2 { <<: *a1, k2: 2 } a3: &a3 {…
    osv-scannerCVE-2026-59869
  • jsdiff has a Denial of Service vulnerability in parsePatch and applyPatch
    ### Impact Attempting to parse a patch whose filename headers contain the line break characters `\r`, `\u2028`, or `\u2029` can cause the `parsePatch` method to enter an infinite loop. It then consumes memory without limit until the process crashes due to running out of memory. …
    osv-scannerCVE-2026-24001
  • launch-editor vulnerable to command injection via the crafted request on Windows
    ### Summary Due to the insufficient sanitization of the `file` argument in the `launchEditor`, an attacker can execute arbitrary commands on Windows by supplying a filename that contains special characters. ### Impact If the following conditions are met, an attacker can execute …
    osv-scannerCVE-2024-52011
  • launch-editor: NTLMv2 hash disclosure via UNC path handling on Windows
    ### Summary The `launch-editor` NPM package accesses arbitrary paths including Windows UNC paths. When a UNC path is opened, Windows automatically attempts NTLM authentication to the remote host, causing the user’s NTLMv2 password hash to be leaked to an attacker-controlled SMB s…
    osv-scannerCVE-2026-53632
  • mdast-util-to-hast has unsanitized class attribute
    ### Impact Multiple (unprefixed) classnames could be added in markdown source by using character references. This could make rendered user supplied markdown `code` elements appear like the rest of the page. The following markdown: ````markdown ```js&#x20;xss ``` ```` Would cre…
    osv-scannerCVE-2025-66400
  • minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern
    ### Summary `minimatch` is vulnerable to Regular Expression Denial of Service (ReDoS) when a glob pattern contains many consecutive `*` wildcards followed by a literal character that doesn't appear in the test string. Each `*` compiles to a separate `[^/]*?` regex group, and when…
    osv-scannerCVE-2026-26996
  • minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern
    ### Summary `minimatch` is vulnerable to Regular Expression Denial of Service (ReDoS) when a glob pattern contains many consecutive `*` wildcards followed by a literal character that doesn't appear in the test string. Each `*` compiles to a separate `[^/]*?` regex group, and when…
    osv-scannerCVE-2026-26996
  • minimatch has a ReDoS via repeated wildcards with non-matching literal in pattern
    ### Summary `minimatch` is vulnerable to Regular Expression Denial of Service (ReDoS) when a glob pattern contains many consecutive `*` wildcards followed by a literal character that doesn't appear in the test string. Each `*` compiles to a separate `[^/]*?` regex group, and when…
    osv-scannerCVE-2026-26996
  • minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments
    ### Summary `matchOne()` performs unbounded recursive backtracking when a glob pattern contains multiple non-adjacent `**` (GLOBSTAR) segments and the input path does not match. The time complexity is O(C(n, k)) -- binomial -- where `n` is the number of path segments and `k` is …
    osv-scannerCVE-2026-27903
  • minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments
    ### Summary `matchOne()` performs unbounded recursive backtracking when a glob pattern contains multiple non-adjacent `**` (GLOBSTAR) segments and the input path does not match. The time complexity is O(C(n, k)) -- binomial -- where `n` is the number of path segments and `k` is …
    osv-scannerCVE-2026-27903
  • minimatch has ReDoS: matchOne() combinatorial backtracking via multiple non-adjacent GLOBSTAR segments
    ### Summary `matchOne()` performs unbounded recursive backtracking when a glob pattern contains multiple non-adjacent `**` (GLOBSTAR) segments and the input path does not match. The time complexity is O(C(n, k)) -- binomial -- where `n` is the number of path segments and `k` is …
    osv-scannerCVE-2026-27903
  • minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions
    ### Summary Nested `*()` extglobs produce regexps with nested unbounded quantifiers (e.g. `(?:(?:a|b)*)*`), which exhibit catastrophic backtracking in V8. With a 12-byte pattern `*(*(*(a|b)))` and an 18-byte non-matching input, `minimatch()` stalls for over 7 seconds. Adding a s…
    osv-scannerCVE-2026-27904
  • minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions
    ### Summary Nested `*()` extglobs produce regexps with nested unbounded quantifiers (e.g. `(?:(?:a|b)*)*`), which exhibit catastrophic backtracking in V8. With a 12-byte pattern `*(*(*(a|b)))` and an 18-byte non-matching input, `minimatch()` stalls for over 7 seconds. Adding a s…
    osv-scannerCVE-2026-27904
  • minimatch ReDoS: nested *() extglobs generate catastrophically backtracking regular expressions
    ### Summary Nested `*()` extglobs produce regexps with nested unbounded quantifiers (e.g. `(?:(?:a|b)*)*`), which exhibit catastrophic backtracking in V8. With a 12-byte pattern `*(*(*(a|b)))` and an 18-byte non-matching input, `minimatch()` stalls for over 7 seconds. Adding a s…
    osv-scannerCVE-2026-27904
  • Picomatch has a ReDoS vulnerability via extglob quantifiers
    ### Impact `picomatch` is vulnerable to Regular Expression Denial of Service (ReDoS) when processing crafted extglob patterns. Certain patterns using extglob quantifiers such as `+()` and `*()`, especially when combined with overlapping alternatives or nested extglobs, are compil…
    osv-scannerCVE-2026-33671
  • Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching
    ### Impact picomatch is vulnerable to a **method injection vulnerability (CWE-1321)** affecting the `POSIX_REGEX_SOURCE` object. Because the object inherits from `Object.prototype`, specially crafted POSIX bracket expressions (e.g., `[[:constructor:]]`) can reference inherited me…
    osv-scannerCVE-2026-33672
  • PostCSS has XSS via Unescaped </style> in its CSS Stringify Output
    # PostCSS: XSS via Unescaped `</style>` in CSS Stringify Output ## Summary PostCSS v8.5.5 (latest) does not escape `</style>` sequences when stringifying CSS ASTs. When user-submitted CSS is parsed and re-stringified for embedding in HTML `<style>` tags, `</style>` in CSS value…
    osv-scannerCVE-2026-41305
  • PostCSS: Arbitrary file read and information disclosure via attacker-controlled sourceMappingURL in CSS comments
    ## Summary PostCSS's `PreviousMap` parses the `/*# sourceMappingURL=PATH */` comment from any CSS string passed to `process()` and dereferences `PATH` against the local filesystem with no scheme, allowlist, or traversal check. An attacker who controls the CSS input can cause the…
    osv-scannerCVE-2026-45623
  • PostCSS: Path Traversal in Previous Source Map Auto-Loading (sourceMappingURL) leads to Arbitrary .map File Disclosure
    ## Vulnerability Details **File**: `lib/previous-map.js` **Line**: 87-98 (`loadFile`), 129-144 (`loadMap`) ### Root Cause PostCSS auto-detects a `/*# sourceMappingURL=... */` comment inside the CSS text it is asked to parse and, unless the caller explicitly passes `map: false`…
    osv-scanner
  • Predictable results in nanoid generation when given non-integer values
    When nanoid is called with a fractional value, there were a number of undesirable effects: 1. in browser and non-secure, the code infinite loops on while (size--) 2. in node, the value of poolOffset becomes fractional, causing calls to nanoid to return zeroes until the pool is n…
    osv-scannerCVE-2024-55565
  • Prototype Pollution via parse() in NodeJS flatted
    --- **Summary** The parse() function in flatted can use attacker-controlled string values from the parsed JSON as direct array index keys, without validating that they are numeric. Since the internal input buffer is a JavaScript Array, accessing it with the key "\_\_prot…
    osv-scannerCVE-2026-33228
  • Regular Expression Denial of Service (ReDoS) in cross-spawn
    Versions of the package cross-spawn before 7.0.5 are vulnerable to Regular Expression Denial of Service (ReDoS) due to improper input sanitization. An attacker can increase the CPU usage and crash the program by crafting a very large and well crafted string.
    osv-scannerCVE-2024-21538
  • Rollup 4 has Arbitrary File Write via Path Traversal
    ### Summary The Rollup module bundler (specifically v4.x and present in current source) is vulnerable to an Arbitrary File Write via Path Traversal. Insecure file name sanitization in the core engine allows an attacker to control output filenames (e.g., via CLI named inputs, manu…
    osv-scannerCVE-2026-27606
  • Rollup 4 has Arbitrary File Write via Path Traversal
    ### Summary The Rollup module bundler (specifically v4.x and present in current source) is vulnerable to an Arbitrary File Write via Path Traversal. Insecure file name sanitization in the core engine allows an attacker to control output filenames (e.g., via CLI named inputs, manu…
    osv-scannerCVE-2026-27606
  • Serialize JavaScript has CPU Exhaustion Denial of Service via crafted array-like objects
    ### Impact **What kind of vulnerability is it?** It is a **Denial of Service (DoS)** vulnerability caused by CPU exhaustion. When serializing a specially crafted "array-like" object (an object that inherits from `Array.prototype` but has a very large `length` property), the pro…
    osv-scannerCVE-2026-34043
  • Serialize JavaScript has CPU Exhaustion Denial of Service via crafted array-like objects
    ### Impact **What kind of vulnerability is it?** It is a **Denial of Service (DoS)** vulnerability caused by CPU exhaustion. When serializing a specially crafted "array-like" object (an object that inherits from `Array.prototype` but has a very large `length` property), the pro…
    osv-scannerCVE-2026-34043
  • Serialize JavaScript is Vulnerable to RCE via RegExp.flags and Date.prototype.toISOString()
    ### Impact The serialize-javascript npm package (versions <= 7.0.2) contains a code injection vulnerability. It is an incomplete fix for CVE-2020-7660. While `RegExp.source` is sanitized, `RegExp.flags` is interpolated directly into the generated output without escaping. A simi…
    osv-scanner
  • Serialize JavaScript is Vulnerable to RCE via RegExp.flags and Date.prototype.toISOString()
    ### Impact The serialize-javascript npm package (versions <= 7.0.2) contains a code injection vulnerability. It is an incomplete fix for CVE-2020-7660. While `RegExp.source` is sanitized, `RegExp.flags` is interpolated directly into the generated output without escaping. A simi…
    osv-scanner
  • Uncontrolled resource consumption in braces
    The NPM package `braces` fails to limit the number of characters it can handle, which could lead to Memory Exhaustion. In `lib/parse.js,` if a malicious user sends "imbalanced braces" as input, the parsing will enter a loop, which will cause the program to start allocating heap m…
    osv-scannerCVE-2024-4068
  • vite allows server.fs.deny bypass via backslash on Windows
    ### Summary Files denied by [`server.fs.deny`](https://vitejs.dev/config/server-options.html#server-fs-deny) were sent if the URL ended with `\` when the dev server is running on Windows. ### Impact Only apps that match the following conditions are affected: - explicitly expose…
    osv-scannerCVE-2025-62522
  • Vite allows server.fs.deny to be bypassed with .svg or relative paths
    ### Summary The contents of arbitrary files can be returned to the browser. ### Impact Only apps explicitly exposing the Vite dev server to the network (using --host or [server.host config option](https://vitejs.dev/config/server-options.html#server-host)) are affected. ### D…
    osv-scannerCVE-2025-31486
  • Vite bypasses server.fs.deny when using ?raw??
    ### Summary The contents of arbitrary files can be returned to the browser. ### Impact Only apps explicitly exposing the Vite dev server to the network (using `--host` or [`server.host` config option](https://vitejs.dev/config/server-options.html#server-host)) are affected. ###…
    osv-scannerCVE-2025-30208
  • Vite has an `server.fs.deny` bypass with an invalid `request-target`
    ### Summary The contents of arbitrary files can be returned to the browser if the dev server is running on Node or Bun. ### Impact Only apps with the following conditions are affected. - explicitly exposing the Vite dev server to the network (using --host or [server.host config…
    osv-scannerCVE-2025-32395
  • Vite middleware may serve files starting with the same name with the public directory
    ### Summary Files starting with the same name with the public directory were served bypassing the `server.fs` settings. ### Impact Only apps that match the following conditions are affected: - explicitly exposes the Vite dev server to the network (using --host or [`server.host`…
    osv-scannerCVE-2025-58751
  • Vite Vulnerable to Path Traversal in Optimized Deps `.map` Handling
    ### Summary Any files ending with `.map` even out side the project can be returned to the browser. ### Impact Only apps that match the following conditions are affected: - explicitly exposes the Vite dev server to the network (using `--host` or [`server.host` config option](h…
    osv-scannerCVE-2026-39365
  • vite: `server.fs.deny` bypass on Windows alternate paths
    ### Summary The contents of files that are specified by [`server.fs.deny`](https://vite.dev/config/server-options#server-fs-deny) can be returned to the browser on Windows. ### Impact Only apps that match the following conditions are affected: - explicitly exposes the Vite de…
    osv-scannerCVE-2026-53571
  • Vite's `server.fs` settings were not applied to HTML files
    ### Summary Any HTML files on the machine were served regardless of the `server.fs` settings. ### Impact Only apps that match the following conditions are affected: - explicitly exposes the Vite dev server to the network (using --host or [server.host config option](https://vit…
    osv-scannerCVE-2025-58752
  • Vite's server.fs.deny bypassed with /. for files under project root
    ### Summary The contents of files in [the project `root`](https://vite.dev/config/shared-options.html#root) that are denied by a file matching pattern can be returned to the browser. ### Impact Only apps explicitly exposing the Vite dev server to the network (using --host or [s…
    osv-scannerCVE-2025-46565
  • Websites were able to send any requests to the development server and read the response in vite
    ### Summary Vite allowed any websites to send any requests to the development server and read the response due to default CORS settings and lack of validation on the Origin header for WebSocket connections. > [!WARNING] > This vulnerability even applies to users that only run th…
    osv-scannerCVE-2025-24010

This report is public.