Immutable.js: Hash-collision algorithmic complexity denial of service in Immutable.Map/Set
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| immutable-js | immutable-js | affected |
|
Configuration 1 [-]
|
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Immutable-js | Immutable-js |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-xvcm-6775-5m9r | Immutable: Hash-collision algorithmic complexity denial of service in Immutable.Map/Set |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.665% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Immutable-js
Immutable-js immutable-js |
|
| Vendors & Products |
Immutable-js
Immutable-js immutable-js |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Immutable.js provides many Persistent Immutable data structures. Prior to 4.3.9 and 5.1.8, Immutable.Map and Immutable.Set keep keys that share the same 32-bit hash in a HashCollisionNode collision bucket that is scanned linearly, allowing an attacker who controls keys inserted into a Map, such as through Immutable.Map(obj), Immutable.fromJS(obj), state.merge(userObject), or mergeDeep, to craft many colliding keys and degrade insertion and lookup to consume disproportionate CPU. This issue is fixed in versions 4.3.9 and 5.1.8. | |
| Title | Immutable.js: Hash-collision algorithmic complexity denial of service in Immutable.Map/Set | |
| Weaknesses | CWE-407 | |
| References |
|
|
| Metrics |
cvssV4_0
|