Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Please help to fix the vulnerabilities in version 9.1.0 #1218

Open
mihui opened this issue May 20, 2024 · 1 comment
Open

Please help to fix the vulnerabilities in version 9.1.0 #1218

mihui opened this issue May 20, 2024 · 1 comment

Comments

@mihui
Copy link

mihui commented May 20, 2024

Overview
Dependency security vulnerability detected from the version 9.1.0

Expected behavior
They should be fixed.

Actual behavior

CVE-2024-4067 - High Severity Vulnerability

Vulnerable Library - micromatch-4.0.5.tgz

Glob matching for javascript/node.js. A replacement and faster alternative to minimatch and multimatch.

Library home page: https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz

Path to dependency file: /package.json

Path to vulnerable library: /package.json

Dependency Hierarchy:

  • ibm-watson-9.1.0.tgz (Root Library)
    • ibm-cloud-sdk-core-4.2.4.tgz
      • expect-26.6.2.tgz
        • jest-message-util-26.6.2.tgz
          • micromatch-4.0.5.tgz (Vulnerable Library)

Found in base branch: main

Vulnerability Details

The NPM package micromatch is vulnerable to Regular Expression Denial of Service (ReDoS). The vulnerability occurs in micromatch.braces() in index.js because the pattern .* will greedily match anything. By passing a malicious payload, the pattern matching will keep backtracking to the input while it doesn't find the closing bracket. As the input size increases, the consumption time will also increase until it causes the application to hang or slow down. There was a merged fix but further testing shows the issue persists. This issue should be mitigated by using a safe pattern that won't start backtracking the regular expression due to greedy matching.

Publish Date: 2024-05-14

URL: CVE-2024-4067

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-2024-4068 - High Severity Vulnerability

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

Path to dependency file: /package.json

Path to vulnerable library: /package.json

Dependency Hierarchy:

  • ibm-watson-9.1.0.tgz (Root Library)
    • ibm-cloud-sdk-core-4.2.4.tgz
      • expect-26.6.2.tgz
        • jest-message-util-26.6.2.tgz
          • micromatch-4.0.5.tgz
            • braces-3.0.2.tgz (Vulnerable Library)

Found in base branch: main

Vulnerability Details

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 memory without freeing it at any moment of the loop. Eventually, the JavaScript heap limit is reached, and the program will crash.

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.

How to reproduce
Please scan the code by using Mend (whitesource)

Screenshots
N/A

SDK Version
9.1.0

Additional information:

  • OS: Any
  • Which version of Node are you using?: Any

Additional context
N/A

@apaparazzi0329
Copy link
Contributor

Those are vulnerabilities from jest testing framework dependencies, specifically the jest-message-util package. These vulnerabilities should pose no risk to any application using the ibm-watson package

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants