← Scan another repo

github.com/puppeteer/puppeteer

@ f8d63c73c3d7

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

Risk grade
F
100 / 100
Findings
72
0 critical17 high52 medium3 low0 info0 on CISA KEV0ATT&CK
Showing 72 of 72 findings

Findings

  • Detected generic-api-key: Detected a Generic API Key, potentially exposing access to various services and sensitive operations
    Detected a Generic API Key, potentially exposing access to various services and sensitive operations.
    gitleaks
  • Detected private-key: Identified a Private Key, which may compromise cryptographic security and sensitive data encryption
    Identified a Private Key, which may compromise cryptographic security and sensitive data encryption.
    gitleaks
  • brace-expansion: DoS via exponential-time expansion of consecutive non-expanding {} groups
    grypeCVE-2026-13149EPSS 0.3%
  • brace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash
    grypeCVE-2026-14257EPSS 0.3%
  • fast-uri vulnerable to host confusion via literal backslash authority delimiter
    grypeCVE-2026-16221EPSS 0.2%
  • js-yaml: YAML merge-key chains can force quadratic CPU consumption
    grypeCVE-2026-59869EPSS 0.4%
  • Picomatch has a ReDoS vulnerability via extglob quantifiers
    grypeCVE-2026-33671EPSS 0.4%
  • Serialize JavaScript is Vulnerable to RCE via RegExp.flags and Date.prototype.toISOString()
    grype
  • Committed PEM private-key material (a "-----BEGIN ... PRIVATE KEY-----" block). Anyone with repo read access holds the key: rotate it, remove it from history, and load keys at runtime from a secret st
    Committed PEM private-key material (a "-----BEGIN ... PRIVATE KEY-----" block). Anyone with repo read access holds the key: rotate it, remove it from history, and load keys at runtime from a secret store / mounted volume instead. (First-party socbox rule; Apache-2.0.)
    semgreppackages/testserver/key.pem:1
  • Dynamic code execution via eval()/new Function() — arbitrary-code-execution risk if any operand is attacker-influenced. Avoid; parse explicitly. (Apache-2.0.)
    Dynamic code execution via eval()/new Function() — arbitrary-code-execution risk if any operand is attacker-influenced. Avoid; parse explicitly. (Apache-2.0.)
    semgreppackages/puppeteer-core/src/util/Function.test.ts:44
  • Dynamic code execution via eval()/new Function() — arbitrary-code-execution risk if any operand is attacker-influenced. Avoid; parse explicitly. (Apache-2.0.)
    Dynamic code execution via eval()/new Function() — arbitrary-code-execution risk if any operand is attacker-influenced. Avoid; parse explicitly. (Apache-2.0.)
    semgreppackages/puppeteer-core/src/util/Function.ts:20
  • brace-expansion through 5.0.7 is vulnerable to denial of service via m ...
    brace-expansion through 5.0.7 is vulnerable to denial of service via memory exhaustion. The expand() function limits the number of results with a max option (default 100,000) but does not bound the length of each result string. By chaining multiple brace groups, an attacker keeps…
    trivyCVE-2026-14257
  • brace-expansion: Brace-expansion: Denial of Service due to exponential-time complexity
    brace-expansion through 5.0.6 is vulnerable to denial of service. The expand() function exhibits exponential-time complexity in the number of consecutive non-expanding '{}' brace groups. An attacker who passes a crafted string to expand(), directly or transitively, can cause sign…
    trivyCVE-2026-13149
  • Impact: fast-uri versions from 2.3.1 through 4.1.0 (including the 3.x ...
    Impact: fast-uri versions from 2.3.1 through 4.1.0 (including the 3.x line up to 3.1.3 and the 2.x line up to 2.4.2) do not treat a literal backslash character (U+005C) as an authority delimiter. Node's native WHATWG URL parser, used by fetch, undici, and Node's http and https cl…
    trivyCVE-2026-16221
  • js-yaml: js-yaml: Denial of Service via crafted YAML documents
    js-yaml is a JavaScript YAML parser and dumper. From 3.0.0 before 3.15.0 and from 4.0.0 before 4.3.0, js-yaml can spend quadratic CPU time parsing a document whose size grows only linearly when a chain of mappings uses merge keys where each mapping merges the previous one. This i…
    trivyCVE-2026-59869
  • picomatch: Picomatch: Regular Expression Denial of Service via crafted extglob patterns
    Picomatch is a glob matcher written JavaScript. Versions prior to 4.0.4, 3.0.2, and 2.3.2 are vulnerable to Regular Expression Denial of Service (ReDoS) when processing crafted extglob patterns. Certain patterns using extglob quantifiers such as `+()` and `*()`, especially when c…
    trivyCVE-2026-33671
  • 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…
    trivy
  • Ensure that HEALTHCHECK instructions have been added to container images
    Ensure that HEALTHCHECK instructions have been added to container images on /docker/Dockerfile.
    checkovdocker/Dockerfile:1
  • The build output cannot be affected by user parameters other than the build entry point and the top-level source location. GitHub Actions workflow_dispatch inputs MUST be empty.
    The build output cannot be affected by user parameters other than the build entry point and the top-level source location. GitHub Actions workflow_dispatch inputs MUST be empty. on on(Bisect Chrome for Testing)
    checkov.github/workflows/bisect.yml:12
  • ajv has ReDoS when using `$data` option
    grypeCVE-2025-69873EPSS 0.5%
  • http-proxy-middleware `router` host+path substring matching allows Host-header-driven backend routing bypass
    grypeCVE-2026-55602EPSS 0.4%
  • joi has an uncaught RangeError on deeply nested input through recursive `link()` schemas
    grypeCVE-2026-48038EPSS 0.3%
  • JS-YAML: Quadratic-complexity DoS in merge key handling via repeated aliases
    grypeCVE-2026-53550EPSS 0.4%
  • Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching
    grypeCVE-2026-33672EPSS 0.4%
  • Serialize JavaScript has CPU Exhaustion Denial of Service via crafted array-like objects
    grypeCVE-2026-34043EPSS 0.5%
  • uuid: Missing buffer bounds check in v3/v5/v6 when buf is provided
    grypeCVE-2026-41907EPSS 0.3%
  • @babel/core: Arbitrary File Read via sourceMappingURL Comment
    ## Impact Using `@babel/core` to compile maliciously crafted code can allow ab attacker to read any source map from the system that is running Babel, if these conditions are _all_ true: - the attacker controls the input source code - the attacker can read the output source code …
    osv-scannerCVE-2026-49356
  • 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
  • body-parser vulnerable to denial of service when invalid limit value silently disables size enforcement
    ### Impact When body-parser is configured with an invalid `limit` option value, such as an unparseable string or `NaN`, `bytes.parse()` returns `null` and the request body size check is silently skipped. Applications that rely on `limit` as their primary safeguard against oversi…
    osv-scannerCVE-2026-12590
  • 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 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: 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: 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
  • fast-uri vulnerable to host confusion via failed IDN canonicalization
    ### Impact `fast-uri` versions `>= 2.3.1, <= 4.0.0` fail to canonicalize Unicode/IDN hostnames for HTTP-family URLs. The IDN conversion path calls `URL.domainToASCII(...)` on the global WHATWG `URL` constructor, where that helper does not exist. The resulting `TypeError` is sile…
    osv-scannerCVE-2026-13676
  • fast-uri vulnerable to host confusion via literal backslash authority delimiter
    ### Impact `fast-uri` v4.1.0 and earlier do not treat a literal backslash (U+005C) as an authority delimiter. Node's native WHATWG `URL` (used by `fetch()`, `undici`, and Node's `http`/`https` clients) normalizes `\` to `/` for special schemes (`http`, `https`, `ws`, `wss`, `ftp…
    osv-scannerCVE-2026-16221
  • fast-uri vulnerable to host confusion via literal backslash authority delimiter
    ### Impact `fast-uri` v4.1.0 and earlier do not treat a literal backslash (U+005C) as an authority delimiter. Node's native WHATWG `URL` (used by `fetch()`, `undici`, and Node's `http`/`https` clients) normalizes `\` to `/` for special schemes (`http`, `https`, `ws`, `wss`, `ftp…
    osv-scannerCVE-2026-16221
  • Hono: API Gateway v1 adapter can drop a distinct repeated request header value during de-duplication
    ### Summary The AWS API Gateway v1 adapter can drop a distinct repeated request header value. When a header appears multiple times, the adapter de-duplicates values using a substring comparison instead of an exact match, so a value that is a substring of another value of the sam…
    osv-scannerCVE-2026-59897
  • Hono: Server-Side XSS via JSX Escaping Bypass in cx() Utility
    ### Summary `cx()` in `hono/css` composes class names from plain strings but marks the result as already-escaped without HTML-escaping the input. When the result is used as a JSX `class` attribute during server-side rendering, the value is written into the attribute unescaped, s…
    osv-scannerCVE-2026-59895
  • hono/jsx does not isolate context per request, leading to cross-request data disclosure
    ### Summary `hono/jsx` did not isolate context values per request during server-side rendering. While an async component was suspended on `await`, its provided context value stayed observable to other requests rendering concurrently, so `useContext()` could return a value from a…
    osv-scannerCVE-2026-59896
  • http-proxy-middleware `router` host+path substring matching allows Host-header-driven backend routing bypass
    # Summary `http-proxy-middleware` documents `router` proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted `Host` header that is only a supers…
    osv-scannerCVE-2026-55602
  • joi has an uncaught RangeError on deeply nested input through recursive `link()` schemas
    ### Impact Denial of service via untrapped exception in services validating user-supplied JSON / object input with recursive link schemas. The blast radius depends on how the application invokes joi: - Highest impact: `validate()` called without `try/catch` in a request handler…
    osv-scannerCVE-2026-48038
  • 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: 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
  • 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
  • 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
  • node-tar: Uncontrolled recursion in mapHas/filesFilter allows uncatchable stack-overflow DoS via crafted long-path tar with member selection
    ## Summary `node-tar` (npm `tar`) contains an uncontrolled-recursion stack-exhaustion DoS in the internal `mapHas` helper used by `filesFilter`. When a consumer calls `tar.t(...)` or `tar.x(...)` with a non-empty member-selection list, node-tar installs a filter that closes over …
    osv-scanner
  • Node.js Adapter for Hono: Path traversal in `serve-static` on Windows via encoded backslash (`%5C`)
    The same as the `hono` core [Path traversal in `serve-static` on Windows via encoded backslash (`%5C`)](https://github.com/honojs/hono/security/advisories/GHSA-wwfh-h76j-fc44). ### Summary On Windows hosts, an encoded backslash (`%5C`) in the request path decodes to `\`, which …
    osv-scanner
  • 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
  • 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
  • uuid: Missing buffer bounds check in v3/v5/v6 when buf is provided
    ### Summary The `v3()`, `v5()`, and `v6()` [API methods](https://github.com/uuidjs/uuid#api-summary) (not `uuid` release versions) accept external output buffers but do not reject out-of-range writes (small `buf` or large `offset`). By contrast, `v4()`, `v1()`, and `v7()` API …
    osv-scannerCVE-2026-41907
  • Possible hardcoded secret assigned to a credential-like variable. Move it to a secret store / env var. (First-party socbox rule; Apache-2.0.)
    Possible hardcoded secret assigned to a credential-like variable. Move it to a secret store / env var. (First-party socbox rule; Apache-2.0.)
    semgrepwebsite/docusaurus.config.js:294
  • ajv: ReDoS via $data reference
    ajv (Another JSON Schema Validator) before 8.18.0 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 JavaScript RegExp(…
    trivyCVE-2025-69873
  • http-proxy-middleware: http-proxy-middleware: Unintended backend routing due to crafted Host header
    http-proxy-middleware is node.js http-proxy middleware. From 0.16.0 until 2.0.10, 3.0.6, and 4.1.0, http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-co…
    trivyCVE-2026-55602
  • joi: joi: Denial of Service via uncaught RangeError on deeply nested input through recursive link() schemas
    joi is a schema description language and data validator for JavaScript. Prior to 17.13.4 and 18.2.1, denial of service is possible via an untrapped exception in services validating user-supplied JSON or object input with recursive link() schemas. When validate() is called without…
    trivyCVE-2026-48038
  • js-yaml: js-yaml: Denial of Service via crafted YAML merge keys
    js-yaml is a JavaScript YAML parser and dumper. Prior to 4.2.0 and 3.15.0, 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 rel…
    trivyCVE-2026-53550
  • picomatch: Picomatch: Data integrity compromised via method injection with crafted POSIX bracket expressions
    Picomatch is a glob matcher written JavaScript. Versions prior to 4.0.4, 3.0.2, and 2.3.2 are vulnerable to a method injection vulnerability affecting the `POSIX_REGEX_SOURCE` object. Because the object inherits from `Object.prototype`, specially crafted POSIX bracket expressions…
    trivyCVE-2026-33672
  • serialize-javascript: serialize-javascript: Denial of Service via specially crafted array-like object serialization
    Serialize JavaScript to a superset of JSON that includes regular expressions and functions. Prior to version 7.0.5, there is a Denial of Service (DoS) vulnerability caused by CPU exhaustion. When serializing a specially crafted "array-like" object (an object that inherits from Ar…
    trivyCVE-2026-34043
  • uuid: uuid: Out-of-bounds write vulnerability impacts data integrity and confidentiality
    uuid is for the creation of RFC9562 (formerly RFC4122) UUIDs. Prior to 14.0.0, v3, v5, and v6 accept external output buffers but do not reject out-of-range writes (small buf or large offset). This allows silent partial writes into caller-provided buffers. This vulnerability is fi…
    trivyCVE-2026-41907

This report is public.