JoshRDemo / Node-Demo

Apache License 2.0
0 stars 0 forks source link

express-4.16.4.tgz: 7 vulnerabilities (highest severity is: 7.5) reachable #51

Open mend-for-github-com[bot] opened 10 months ago

mend-for-github-com[bot] commented 10 months ago
Vulnerable Library - express-4.16.4.tgz

Fast, unopinionated, minimalist web framework

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

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/express/package.json

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Vulnerabilities

CVE Severity CVSS Dependency Type Fixed in (express version) Remediation Possible** Reachability
CVE-2024-45296 High 7.5 path-to-regexp-0.1.7.tgz Transitive N/A*

Reachable

CVE-2022-24999 High 7.5 qs-6.5.2.tgz Transitive 4.17.0

Reachable

CVE-2024-29041 Medium 6.1 express-4.16.4.tgz Direct 4.19.0

Reachable

CVE-2024-47764 Medium 5.3 cookie-0.3.1.tgz Transitive N/A*

Reachable

CVE-2024-43800 Medium 5.0 serve-static-1.13.2.tgz Transitive N/A*

Reachable

CVE-2024-43799 Medium 5.0 send-0.16.2.tgz Transitive N/A*

Reachable

CVE-2024-43796 Medium 5.0 express-4.16.4.tgz Direct express - 4.20.0,5.0.0

Reachable

*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-2024-45296 ### Vulnerable Library - path-to-regexp-0.1.7.tgz

Express style path to RegExp utility

Library home page: https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/path-to-regexp/package.json

Dependency Hierarchy: - express-4.16.4.tgz (Root Library) - :x: **path-to-regexp-0.1.7.tgz** (Vulnerable Library)

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Found in base branch: develop

### Reachability Analysis This vulnerability is potentially reachable ``` owasp-nodejs-goat-1.3.0/server.js (Application) -> express-4.16.4/index.js (Extension) -> express-4.16.4/lib/express.js (Extension) -> express-4.16.4/lib/router/index.js (Extension) -> express-4.16.4/lib/router/layer.js (Extension) -> ❌ path-to-regexp-0.1.7/index.js (Vulnerable Component) ```

### Vulnerability Details

path-to-regexp turns path strings into a regular expressions. In certain cases, path-to-regexp will output a regular expression that can be exploited to cause poor performance. Because JavaScript is single threaded and regex matching runs on the main thread, poor performance will block the event loop and lead to a DoS. The bad regular expression is generated any time you have two parameters within a single segment, separated by something that is not a period (.). For users of 0.1, upgrade to 0.1.10. All other users should upgrade to 8.0.0.

Publish Date: 2024-09-09

URL: CVE-2024-45296

### 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/pillarjs/path-to-regexp/security/advisories/GHSA-9wv6-86v2-598j

Release Date: 2024-09-09

Fix Resolution: path-to-regexp - 0.1.10,8.0.0

CVE-2022-24999 ### Vulnerable Library - qs-6.5.2.tgz

A querystring parser that supports nesting and arrays, with a depth limit

Library home page: https://registry.npmjs.org/qs/-/qs-6.5.2.tgz

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/qs/package.json

Dependency Hierarchy: - express-4.16.4.tgz (Root Library) - :x: **qs-6.5.2.tgz** (Vulnerable Library)

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Found in base branch: develop

### Reachability Analysis This vulnerability is potentially reachable ``` owasp-nodejs-goat-1.3.0/server.js (Application) -> body-parser-1.18.3/index.js (Extension) -> body-parser-1.18.3/lib/types/urlencoded.js (Extension) -> qs-6.5.2/lib/index.js (Extension) -> ❌ qs-6.5.2/lib/stringify.js (Vulnerable Component) ```

### Vulnerability Details

qs before 6.10.3, as used in Express before 4.17.3 and other products, allows attackers to cause a Node process hang for an Express application because an __ proto__ key can be used. In many typical Express use cases, an unauthenticated remote attacker can place the attack payload in the query string of the URL that is used to visit the application, such as a[__proto__]=b&a[__proto__]&a[length]=100000000. The fix was backported to qs 6.9.7, 6.8.3, 6.7.3, 6.6.1, 6.5.3, 6.4.1, 6.3.3, and 6.2.4 (and therefore Express 4.17.3, which has "deps: qs@6.9.7" in its release description, is not vulnerable).

Publish Date: 2022-11-26

URL: CVE-2022-24999

### 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://www.cve.org/CVERecord?id=CVE-2022-24999

Release Date: 2022-11-26

Fix Resolution (qs): 6.5.3

Direct dependency fix Resolution (express): 4.17.0

In order to enable automatic remediation, please create workflow rules

CVE-2024-29041 ### Vulnerable Library - express-4.16.4.tgz

Fast, unopinionated, minimalist web framework

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

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/express/package.json

Dependency Hierarchy: - :x: **express-4.16.4.tgz** (Vulnerable Library)

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Found in base branch: develop

### Reachability Analysis This vulnerability is potentially reachable ``` owasp-nodejs-goat-1.3.0/server.js (Application) -> express-4.16.4/index.js (Extension) -> express-4.16.4/lib/express.js (Extension) -> ❌ express-4.16.4/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`](https://github.com/pillarjs/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: 4.19.0

In order to enable automatic remediation, please create workflow rules

CVE-2024-47764 ### Vulnerable Library - cookie-0.3.1.tgz

HTTP server cookie parsing and serialization

Library home page: https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/cookie/package.json

Dependency Hierarchy: - express-4.16.4.tgz (Root Library) - :x: **cookie-0.3.1.tgz** (Vulnerable Library)

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Found in base branch: develop

### Reachability Analysis This vulnerability is potentially reachable ``` owasp-nodejs-goat-1.3.0/server.js (Application) -> express-session-1.15.6/index.js (Extension) -> ❌ cookie-0.3.1/index.js (Vulnerable Component) ```

### Vulnerability Details

cookie is a basic HTTP cookie parser and serializer for HTTP servers. The cookie name could be used to set other fields of the cookie, resulting in an unexpected cookie value. A similar escape can be used for path and domain, which could be abused to alter other fields of the cookie. Upgrade to 0.7.0, which updates the validation for name, path, and domain.

Publish Date: 2024-10-04

URL: CVE-2024-47764

### 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: Low - Availability Impact: None

For more information on CVSS3 Scores, click here.

### Suggested Fix

Type: Upgrade version

Origin: https://github.com/jshttp/cookie/security/advisories/GHSA-pxg6-pf52-xh8x

Release Date: 2024-10-04

Fix Resolution: cookie - 0.7.0

CVE-2024-43800 ### Vulnerable Library - serve-static-1.13.2.tgz

Serve static files

Library home page: https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/serve-static/package.json

Dependency Hierarchy: - express-4.16.4.tgz (Root Library) - :x: **serve-static-1.13.2.tgz** (Vulnerable Library)

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Found in base branch: develop

### Reachability Analysis This vulnerability is potentially reachable ``` owasp-nodejs-goat-1.3.0/server.js (Application) -> express-4.16.4/index.js (Extension) -> express-4.16.4/lib/express.js (Extension) -> ❌ serve-static-1.13.2/index.js (Vulnerable Component) ```

### Vulnerability Details

serve-static serves static files. serve-static passes untrusted user input - even after sanitizing it - to redirect() may execute untrusted code. This issue is patched in serve-static 1.16.0.

Publish Date: 2024-09-10

URL: CVE-2024-43800

### CVSS 3 Score Details (5.0)

Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: High - Privileges Required: None - User Interaction: Required - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: Low - Integrity Impact: Low - Availability Impact: Low

For more information on CVSS3 Scores, click here.

### Suggested Fix

Type: Upgrade version

Origin: https://github.com/expressjs/serve-static/security/advisories/GHSA-cm22-4g7w-348p

Release Date: 2024-09-10

Fix Resolution: serve-static - 1.16.0,2.1.0

CVE-2024-43799 ### Vulnerable Library - send-0.16.2.tgz

Better streaming static file server with Range and conditional-GET support

Library home page: https://registry.npmjs.org/send/-/send-0.16.2.tgz

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/send/package.json

Dependency Hierarchy: - express-4.16.4.tgz (Root Library) - :x: **send-0.16.2.tgz** (Vulnerable Library)

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Found in base branch: develop

### Reachability Analysis This vulnerability is potentially reachable ``` owasp-nodejs-goat-1.3.0/server.js (Application) -> express-4.16.4/index.js (Extension) -> express-4.16.4/lib/express.js (Extension) -> serve-static-1.13.2/index.js (Extension) -> ❌ send-0.16.2/index.js (Vulnerable Component) ```

### Vulnerability Details

Send is a library for streaming files from the file system as a http response. Send passes untrusted user input to SendStream.redirect() which executes untrusted code. This issue is patched in send 0.19.0.

Publish Date: 2024-09-10

URL: CVE-2024-43799

### CVSS 3 Score Details (5.0)

Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: High - Privileges Required: None - User Interaction: Required - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: Low - Integrity Impact: Low - Availability Impact: Low

For more information on CVSS3 Scores, click here.

### Suggested Fix

Type: Upgrade version

Origin: https://github.com/pillarjs/send/security/advisories/GHSA-m6fv-jmcg-4jfg

Release Date: 2024-09-10

Fix Resolution: send - 0.19.0

CVE-2024-43796 ### Vulnerable Library - express-4.16.4.tgz

Fast, unopinionated, minimalist web framework

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

Path to dependency file: /package.json

Path to vulnerable library: /node_modules/express/package.json

Dependency Hierarchy: - :x: **express-4.16.4.tgz** (Vulnerable Library)

Found in HEAD commit: c1056ecdb56385bee0679cd13b20a6999fa0707e

Found in base branch: develop

### Reachability Analysis This vulnerability is potentially reachable ``` owasp-nodejs-goat-1.3.0/server.js (Application) -> express-4.16.4/index.js (Extension) -> express-4.16.4/lib/express.js (Extension) -> ❌ express-4.16.4/lib/router/index.js (Vulnerable Component) ```

### Vulnerability Details

Express.js minimalist web framework for node. In express < 4.20.0, passing untrusted user input - even after sanitizing it - to response.redirect() may execute untrusted code. This issue is patched in express 4.20.0.

Publish Date: 2024-09-10

URL: CVE-2024-43796

### CVSS 3 Score Details (5.0)

Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: High - Privileges Required: None - User Interaction: Required - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: Low - Integrity Impact: Low - Availability Impact: Low

For more information on CVSS3 Scores, click here.

### Suggested Fix

Type: Upgrade version

Origin: https://github.com/expressjs/express/security/advisories/GHSA-qw6h-vgh9-j6wx

Release Date: 2024-09-10

Fix Resolution: express - 4.20.0,5.0.0

In order to enable automatic remediation, please create workflow rules


In order to enable automatic remediation for this issue, please create workflow rules

mend-for-github-com[bot] commented 10 months ago

:heavy_check_mark: This issue was automatically closed by Mend because the vulnerable library in the specific branch(es) was either marked as ignored or it is no longer part of the Mend inventory.

mend-for-github-com[bot] commented 8 months ago

:information_source: This issue was automatically re-opened by Mend because the vulnerable library in the specific branch(es) has been detected in the Mend inventory.