Lucene search

K
githubGitHub Advisory DatabaseGHSA-9QXR-QJ54-H672
HistoryApr 04, 2024 - 2:20 p.m.

Undici's fetch with integrity option is too lax when algorithm is specified but hash value is in incorrect

2024-04-0414:20:54
CWE-284
GitHub Advisory Database
github.com
35
undici
fetch
integrity
vulnerability
tampered
requests
hash value
algorithm
patch
fix
workaround
hackerone
nodejs

CVSS3

2.6

Attack Vector

NETWORK

Attack Complexity

HIGH

Privileges Required

LOW

User Interaction

REQUIRED

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

LOW

Availability Impact

NONE

CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:L/A:N

AI Score

7.1

Confidence

Low

EPSS

0

Percentile

10.3%

Impact

If an attacker can alter the integrity option passed to fetch(), they can let fetch() accept requests as valid even if they have been tampered.

Patches

Fixed in https://github.com/nodejs/undici/commit/d542b8cd39ec1ba303f038ea26098c3f355974f3.
Fixes has been released in v5.28.4 and v6.11.1.

Workarounds

Ensure that integrity cannot be tampered with.

References

https://hackerone.com/reports/2377760

Affected configurations

Vulners
Node
undiciRange<6.11.1
OR
undiciRange<5.28.4
VendorProductVersionCPE
*undici*cpe:2.3:a:*:undici:*:*:*:*:*:*:*:*

CVSS3

2.6

Attack Vector

NETWORK

Attack Complexity

HIGH

Privileges Required

LOW

User Interaction

REQUIRED

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

LOW

Availability Impact

NONE

CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:L/A:N

AI Score

7.1

Confidence

Low

EPSS

0

Percentile

10.3%