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

CVE-2023-46234 (Medium) detected in browserify-sign-4.2.1.tgz #5410

Closed
mend-for-github-com bot opened this issue Oct 30, 2023 · 1 comment · Fixed by #5414
Closed

CVE-2023-46234 (Medium) detected in browserify-sign-4.2.1.tgz #5410

mend-for-github-com bot opened this issue Oct 30, 2023 · 1 comment · Fixed by #5414
Assignees
Labels
Mend: dependency security vulnerability Security vulnerability detected by Mend

Comments

@mend-for-github-com
Copy link

CVE-2023-46234 - Medium Severity Vulnerability

Vulnerable Library - browserify-sign-4.2.1.tgz

adds node crypto signing for browsers

Library home page: https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/browserify-sign/package.json

Dependency Hierarchy:

  • @osd/eslint-import-resolver-opensearch-dashboards-2.0.0.tgz (Root Library)
    • eslint-import-resolver-webpack-0.11.1.tgz
      • node-libs-browser-2.2.1.tgz
        • crypto-browserify-3.12.0.tgz
          • browserify-sign-4.2.1.tgz (Vulnerable Library)

Found in base branch: main

Vulnerability Details

browserify-sign is a package to duplicate the functionality of node's crypto public key functions, much of this is based on Fedor Indutny's work on indutny/tls.js. An upper bound check issue in dsaVerify function allows an attacker to construct signatures that can be successfully verified by any public key, thus leading to a signature forgery attack. All places in this project that involve DSA verification of user-input signatures will be affected by this vulnerability. This issue has been patched in version 4.2.2.

Publish Date: 2023-10-26

URL: CVE-2023-46234

CVSS 3 Score Details (6.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • 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: GHSA-x9w5-v3q2-3rhw

Release Date: 2023-10-26

Fix Resolution: browserify-sign - 4.2.2

@mend-for-github-com mend-for-github-com bot added the Mend: dependency security vulnerability Security vulnerability detected by Mend label Oct 30, 2023
@joshuarrrr joshuarrrr self-assigned this Oct 31, 2023
@joshuarrrr
Copy link
Member

The dependency hierarchy listed here isn't the only way we get this dep. In addition:

yarn why browserify-sign
yarn why v1.22.19
[1/4] Why do we have the module "browserify-sign"...?
[2/4] Initialising dependency graph...
warning Resolution field "typescript@4.0.2" is incompatible with requested version "typescript@~4.5.2"
[3/4] Finding dependency...
[4/4] Calculating file sizes...
=> Found "browserify-sign@4.2.1"
info Reasons this module exists
   - "_project_#@osd#ace#webpack#node-libs-browser#crypto-browserify" depends on it
   - Hoisted from "_project_#@osd#ace#webpack#node-libs-browser#crypto-browserify#browserify-sign"
info Disk size without dependencies: "364KB"
info Disk size with unique dependencies: "1.19MB"
info Disk size with transitive dependencies: "2.31MB"
info Number of shared dependencies: 23
Done in 1.29s.

We can probably resolve this with a resolution of the sub-dep. However, this is another case where we're stuck/blocked on #1118 and #2875. For webpack 4, we're currently relying on this patched fork: https://www.npmjs.com/package/@amoo-miki/webpack

Webpack 4 takes a dependency on the latest version of https://www.npmjs.com/package/node-libs-browser, which was published 4 years ago, and depends on version 3.11.1 of https://github.com/browserify/crypto-browserify, which was also released 4 years ago.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Mend: dependency security vulnerability Security vulnerability detected by Mend
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants