textbooks icon indicating copy to clipboard operation
textbooks copied to clipboard

studio-0.1.42.tgz: 12 vulnerabilities (highest severity is: 9.8) reachable

Open mend-for-github-com[bot] opened this issue 1 year ago • 0 comments

Vulnerable Library - studio-0.1.42.tgz

Vulnerabilities

CVE Severity CVSS Dependency Type Fixed in (studio version) Remediation Possible** Reachability
CVE-2022-37620 High 7.5 html-minifier-4.0.0.tgz Transitive N/A*

Reachable

CVE-2021-32050 High 7.5 mongodb-5.7.0.tgz Transitive N/A*

Reachable

CVE-2024-28849 Medium 6.5 follow-redirects-1.15.4.tgz Transitive N/A*

Reachable

CVE-2024-29041 Medium 6.1 express-4.18.2.tgz Transitive N/A*

Reachable

CVE-2023-42282 Critical 9.8 detected in multiple dependencies Transitive N/A*

Unreachable

CVE-2023-36665 Critical 9.8 protobufjs-7.2.4.tgz Transitive N/A*

Unreachable

CVE-2022-37598 Critical 9.8 uglify-js-3.13.9.tgz Transitive N/A*

Unreachable

CVE-2024-29415 Critical 9.1 detected in multiple dependencies Transitive N/A*
CVE-2024-4068 High 7.5 braces-3.0.2.tgz Transitive N/A*
CVE-2024-37890 High 7.5 ws-8.13.0.tgz Transitive N/A*
CVE-2024-39249 Medium 6.5 async-3.2.3.tgz Transitive N/A*
CVE-2024-37168 Medium 5.3 grpc-js-1.8.15.tgz Transitive N/A*

*For some transitive vulnerabilities, there is no version of direct dependency with a fix. Check the "Details" section below to see if there is a version of transitive dependency where vulnerability is fixed.

**In some cases, Remediation PR cannot be created automatically for a vulnerability despite the availability of remediation

Details

CVE-2022-37620

Vulnerable Library - html-minifier-4.0.0.tgz

Highly configurable, well-tested, JavaScript-based HTML minifier.

Library home page: https://registry.npmjs.org/html-minifier/-/html-minifier-4.0.0.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • :x: html-minifier-4.0.0.tgz (Vulnerable Library)

Found in base branch: master

Reachability Analysis

This vulnerability is potentially reachable

@mathigon/textbooks-0.7.4/package.json (Application)
  -> @mathigon/studio-0.1.42/build/index.js (Extension)
   -> @mathigon/studio-0.1.42/build/tools/search.js (Extension)
    -> @mathigon/studio-0.1.42/build/markdown/index.js (Extension)
     -> @mathigon/studio-0.1.42/build/markdown/parser.js (Extension)
      -> html-minifier-4.0.0/src/htmlminifier.js (Extension)
       -> ❌ html-minifier-4.0.0/src/htmlparser.js (Vulnerable Component)

Vulnerability Details

A Regular Expression Denial of Service (ReDoS) flaw was found in kangax html-minifier 4.0.0 via the candidate variable in htmlminifier.js.

Publish Date: 2022-10-31

URL: CVE-2022-37620

CVSS 3 Score Details (7.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: High
For more information on CVSS3 Scores, click here.

CVE-2021-32050

Vulnerable Library - mongodb-5.7.0.tgz

Library home page: https://registry.npmjs.org/mongodb/-/mongodb-5.7.0.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • mongoose-7.4.3.tgz
      • :x: mongodb-5.7.0.tgz (Vulnerable Library)

Found in base branch: master

Reachability Analysis

This vulnerability is potentially reachable

@mathigon/textbooks-0.7.4/package.json (Application)
  -> @mathigon/studio-0.1.42/server/serve.ts (Extension)
   -> @mathigon/studio-0.1.42/server/app.ts (Extension)
    -> @mathigon/studio-0.1.42/server/models/analytics.ts (Extension)
    ...
      -> mongoose-7.4.3/lib/index.js (Extension)
       -> mongodb-5.7.0/lib/index.js (Extension)
        -> ❌ mongodb-5.7.0/lib/cmap/command_monitoring_events.js (Vulnerable Component)

Vulnerability Details

Some MongoDB Drivers may erroneously publish events containing authentication-related data to a command listener configured by an application. The published events may contain security-sensitive data when specific authentication-related commands are executed.

Without due care, an application may inadvertently expose this sensitive information, e.g., by writing it to a log file. This issue only arises if an application enables the command listener feature (this is not enabled by default).

This issue affects the MongoDB C Driver 1.0.0 prior to 1.17.7, MongoDB PHP Driver 1.0.0 prior to 1.9.2, MongoDB Swift Driver 1.0.0 prior to 1.1.1, MongoDB Node.js Driver 3.6 prior to 3.6.10, MongoDB Node.js Driver 4.0 prior to 4.17.0 and MongoDB Node.js Driver 5.0 prior to 5.8.0. This issue also affects users of the MongoDB C++ Driver dependent on the C driver 1.0.0 prior to 1.17.7 (C++ driver prior to 3.7.0).

Publish Date: 2023-08-29

URL: CVE-2021-32050

CVSS 3 Score Details (7.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: None
    • Availability Impact: None
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://github.com/advisories/GHSA-vxvm-qww3-2fh7

Release Date: 2023-08-29

Fix Resolution: mongodb - 3.6.10,4.17.0,5.8.0

CVE-2024-28849

Vulnerable Library - follow-redirects-1.15.4.tgz

Library home page: https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • mongodb-memory-server-8.15.1.tgz
      • mongodb-memory-server-core-8.15.1.tgz
        • :x: follow-redirects-1.15.4.tgz (Vulnerable Library)

Found in base branch: master

Reachability Analysis

This vulnerability is potentially reachable

@mathigon/textbooks-0.7.4/package.json (Application)
  -> @mathigon/studio-0.1.42/server/serve.ts (Extension)
   -> @mathigon/studio-0.1.42/server/app.ts (Extension)
    -> mongodb-memory-server-8.15.1/index.js (Extension)
    ...
      -> mongodb-memory-server-core-8.15.1/lib/util/MongoBinary.js (Extension)
       -> mongodb-memory-server-core-8.15.1/lib/util/MongoBinaryDownload.js (Extension)
        -> ❌ follow-redirects-1.15.4/index.js (Vulnerable Component)

Vulnerability Details

follow-redirects is an open source, drop-in replacement for Node's http and https modules that automatically follows redirects. In affected versions follow-redirects only clears authorization header during cross-domain redirect, but keep the proxy-authentication header which contains credentials too. This vulnerability may lead to credentials leak, but has been addressed in version 1.15.6. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Publish Date: 2024-03-14

URL: CVE-2024-28849

CVSS 3 Score Details (6.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: Low
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: None
    • Availability Impact: None
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://github.com/follow-redirects/follow-redirects/security/advisories/GHSA-cxjh-pqwp-8mfp

Release Date: 2024-03-14

Fix Resolution: follow-redirects - 1.15.6

CVE-2024-29041

Vulnerable Library - express-4.18.2.tgz

Fast, unopinionated, minimalist web framework

Library home page: https://registry.npmjs.org/express/-/express-4.18.2.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • :x: express-4.18.2.tgz (Vulnerable Library)

Found in base branch: master

Reachability Analysis

This vulnerability is potentially reachable

@mathigon/textbooks-0.7.4/package.json (Application)
  -> @mathigon/studio-0.1.42/server/serve.ts (Extension)
   -> @mathigon/studio-0.1.42/server/app.ts (Extension)
    -> express-4.18.2/index.js (Extension)
     -> express-4.18.2/lib/express.js (Extension)
      -> ❌ express-4.18.2/lib/response.js (Vulnerable Component)

Vulnerability Details

Express.js minimalist web framework for node. Versions of Express.js prior to 4.19.0 and all pre-release alpha and beta versions of 5.0 are affected by an open redirect vulnerability using malformed URLs. When a user of Express performs a redirect using a user-provided URL Express performs an encode using encodeurl on the contents before passing it to the location header. This can cause malformed URLs to be evaluated in unexpected ways by common redirect allow list implementations in Express applications, leading to an Open Redirect via bypass of a properly implemented allow list. The main method impacted is res.location() but this is also called from within res.redirect(). The vulnerability is fixed in 4.19.2 and 5.0.0-beta.3.

Publish Date: 2024-03-25

URL: CVE-2024-29041

CVSS 3 Score Details (6.1)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: Required
    • Scope: Changed
  • Impact Metrics:
    • Confidentiality Impact: Low
    • Integrity Impact: Low
    • Availability Impact: None
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://github.com/expressjs/express/security/advisories/GHSA-rv95-896h-c2vc

Release Date: 2024-03-25

Fix Resolution: express - 4.19.0

CVE-2023-42282

Vulnerable Libraries - ip-1.1.8.tgz, ip-2.0.0.tgz

ip-1.1.8.tgz

[![](https://badge.fury.io/js/ip.svg)](https://www.npmjs.com/package/ip)

Library home page: https://registry.npmjs.org/ip/-/ip-1.1.8.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • puppeteer-20.9.0.tgz
      • browsers-1.4.6.tgz
        • proxy-agent-6.3.0.tgz
          • pac-proxy-agent-7.0.0.tgz
            • pac-resolver-7.0.0.tgz
              • :x: ip-1.1.8.tgz (Vulnerable Library)

ip-2.0.0.tgz

[![](https://badge.fury.io/js/ip.svg)](https://www.npmjs.com/package/ip)

Library home page: https://registry.npmjs.org/ip/-/ip-2.0.0.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • mongoose-7.4.3.tgz
      • mongodb-5.7.0.tgz
        • socks-2.7.1.tgz
          • :x: ip-2.0.0.tgz (Vulnerable Library)

Found in base branch: master

Reachability Analysis

The vulnerable code is unreachable

Vulnerability Details

The ip package before 1.1.9 for Node.js might allow SSRF because some IP addresses (such as 0x7f.1) are improperly categorized as globally routable via isPublic.

Publish Date: 2024-02-08

URL: CVE-2023-42282

CVSS 3 Score Details (9.8)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: High
    • Availability Impact: High
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://nvd.nist.gov/vuln/detail/CVE-2023-42282

Release Date: 2024-02-08

Fix Resolution: ip - 2.0.0

CVE-2023-36665

Vulnerable Library - protobufjs-7.2.4.tgz

Library home page: https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.4.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • text-to-speech-4.2.3.tgz
      • google-gax-3.6.1.tgz
        • :x: protobufjs-7.2.4.tgz (Vulnerable Library)

Found in base branch: master

Reachability Analysis

The vulnerable code is unreachable

Vulnerability Details

"protobuf.js (aka protobufjs) 6.10.0 through 7.x before 7.2.5 allows Prototype Pollution, a different vulnerability than CVE-2022-25878. A user-controlled protobuf message can be used by an attacker to pollute the prototype of Object.prototype by adding and overwriting its data and functions. Exploitation can involve: (1) using the function parse to parse protobuf messages on the fly, (2) loading .proto files by using load/loadSync functions, or (3) providing untrusted input to the functions ReflectionObject.setParsedOption and util.setProperty.

Publish Date: 2023-07-05

URL: CVE-2023-36665

CVSS 3 Score Details (9.8)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: High
    • Availability Impact: High
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://nvd.nist.gov/vuln/detail/CVE-2023-36665

Release Date: 2023-07-05

Fix Resolution: protobufjs - 6.11.4,7.2.5

CVE-2022-37598

Vulnerable Library - uglify-js-3.13.9.tgz

JavaScript parser, mangler/compressor and beautifier toolkit

Library home page: https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.9.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • text-to-speech-4.2.3.tgz
      • google-gax-3.6.1.tgz
        • protobufjs-cli-1.1.1.tgz
          • :x: uglify-js-3.13.9.tgz (Vulnerable Library)

Found in base branch: master

Reachability Analysis

The vulnerable code is unreachable

Vulnerability Details

Prototype pollution vulnerability in function DEFNODE in ast.js in mishoo UglifyJS 3.13.2 via the name variable in ast.js. NOTE: the vendor considers this an invalid report.

Publish Date: 2022-10-20

URL: CVE-2022-37598

CVSS 3 Score Details (9.8)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: High
    • Availability Impact: High
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Release Date: 2022-10-20

Fix Resolution: uglify-js - 3.13.10

CVE-2024-29415

Vulnerable Libraries - ip-2.0.0.tgz, ip-1.1.8.tgz

ip-2.0.0.tgz

[![](https://badge.fury.io/js/ip.svg)](https://www.npmjs.com/package/ip)

Library home page: https://registry.npmjs.org/ip/-/ip-2.0.0.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • mongoose-7.4.3.tgz
      • mongodb-5.7.0.tgz
        • socks-2.7.1.tgz
          • :x: ip-2.0.0.tgz (Vulnerable Library)

ip-1.1.8.tgz

[![](https://badge.fury.io/js/ip.svg)](https://www.npmjs.com/package/ip)

Library home page: https://registry.npmjs.org/ip/-/ip-1.1.8.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • puppeteer-20.9.0.tgz
      • browsers-1.4.6.tgz
        • proxy-agent-6.3.0.tgz
          • pac-proxy-agent-7.0.0.tgz
            • pac-resolver-7.0.0.tgz
              • :x: ip-1.1.8.tgz (Vulnerable Library)

Found in base branch: master

Vulnerability Details

The ip package through 2.0.1 for Node.js might allow SSRF because some IP addresses (such as 127.1, 01200034567, 012.1.2.3, 000:0:0000::01, and ::fFFf:127.0.0.1) are improperly categorized as globally routable via isPublic. NOTE: this issue exists because of an incomplete fix for CVE-2023-42282.

Publish Date: 2024-05-27

URL: CVE-2024-29415

CVSS 3 Score Details (9.1)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: High
    • Availability Impact: None
For more information on CVSS3 Scores, click here.

CVE-2024-4068

Vulnerable Library - braces-3.0.2.tgz

Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed.

Library home page: https://registry.npmjs.org/braces/-/braces-3.0.2.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • chokidar-3.5.3.tgz
      • :x: braces-3.0.2.tgz (Vulnerable Library)

Found in base branch: master

Vulnerability Details

The NPM package braces, versions prior to 3.0.3, 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 memory without freeing it at any moment of the loop. Eventually, the JavaScript heap limit is reached, and the program will crash. Mend Note: After conducting a further research, it was concluded that CVE-2024-4068 does not contain a high security risk that reflects the NVD score, but should be kept for users' awareness. Users of braces should follow the fix recommendation as noted.

Publish Date: 2024-05-14

URL: CVE-2024-4068

CVSS 3 Score Details (7.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: High
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Release Date: 2024-05-14

Fix Resolution: braces - 3.0.3

CVE-2024-37890

Vulnerable Library - ws-8.13.0.tgz

Library home page: https://registry.npmjs.org/ws/-/ws-8.13.0.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • jsdom-22.1.0.tgz
      • :x: ws-8.13.0.tgz (Vulnerable Library)

Found in base branch: master

Vulnerability Details

ws is an open source WebSocket client and server for Node.js. A request with a number of headers exceeding theserver.maxHeadersCount threshold could be used to crash a ws server. The vulnerability was fixed in [email protected] (e55e510) and backported to [email protected] (22c2876), [email protected] (eeb76d3), and [email protected] (4abd8f6). In vulnerable versions of ws, the issue can be mitigated in the following ways: 1. Reduce the maximum allowed length of the request headers using the --max-http-header-size=size and/or the maxHeaderSize options so that no more headers than the server.maxHeadersCount limit can be sent. 2. Set server.maxHeadersCount to 0 so that no limit is applied.

Publish Date: 2024-06-17

URL: CVE-2024-37890

CVSS 3 Score Details (7.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: High
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://github.com/websockets/ws/security/advisories/GHSA-3h5v-q93c-6h6q

Release Date: 2024-06-17

Fix Resolution: ws - 5.2.4,6.2.3,7.5.10,8.17.1

CVE-2024-39249

Vulnerable Library - async-3.2.3.tgz

Higher-order functions and common patterns for asynchronous code

Library home page: https://registry.npmjs.org/async/-/async-3.2.3.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • fluent-ffmpeg-2.1.2.tgz
      • :x: async-3.2.3.tgz (Vulnerable Library)

Found in base branch: master

Vulnerability Details

Async <= 2.6.4 and <= 3.2.5 are vulnerable to ReDoS (Regular Expression Denial of Service) while parsing function in autoinject function.

Publish Date: 2024-07-01

URL: CVE-2024-39249

CVSS 3 Score Details (6.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: Required
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: High
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://nvd.nist.gov/vuln/detail/CVE-2024-39249

Release Date: 2024-07-01

Fix Resolution: async - 3.0.1

CVE-2024-37168

Vulnerable Library - grpc-js-1.8.15.tgz

Library home page: https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.15.tgz

Dependency Hierarchy:

  • studio-0.1.42.tgz (Root Library)
    • text-to-speech-4.2.3.tgz
      • google-gax-3.6.1.tgz
        • :x: grpc-js-1.8.15.tgz (Vulnerable Library)

Found in base branch: master

Vulnerability Details

@grpc/grps-js implements the core functionality of gRPC purely in JavaScript, without a C++ addon. Prior to versions 1.10.9, 1.9.15, and 1.8.22, there are two separate code paths in which memory can be allocated per message in excess of the grpc.max_receive_message_length channel option: If an incoming message has a size on the wire greater than the configured limit, the entire message is buffered before it is discarded; and/or if an incoming message has a size within the limit on the wire but decompresses to a size greater than the limit, the entire message is decompressed into memory, and on the server is not discarded. This has been patched in versions 1.10.9, 1.9.15, and 1.8.22.

Publish Date: 2024-06-10

URL: CVE-2024-37168

CVSS 3 Score Details (5.3)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: Low
For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: https://github.com/grpc/grpc-node/security/advisories/GHSA-7v5v-9h63-cj86

Release Date: 2024-06-10

Fix Resolution: @grpc/grpc-js - 1.8.22,1.9.15,1.10.9