Publication | Closed Access
ReScue: crafting regular expression DoS attacks
48
Citations
30
References
2018
Year
Unknown Venue
EngineeringInformation SecurityInformation ForensicsSoftware EngineeringSoftware AnalysisHardware SecurityString-searching AlgorithmString ProcessingDenial-of-service AttackRedos StringsFuzzingDefense SystemsData PrivacyComputer ScienceLanguage-based SecuritySecurity Testing MethodData SecurityCryptographyRescue ToolProgram AnalysisAttack ModelSoftware TestingCombinatorial Pattern MatchingModern Extensions
Regular expression (regex) with modern extensions is one of the most popular string processing tools. However, poorly-designed regexes can yield exponentially many matching steps, and lead to regex Denial-of-Service (ReDoS) attacks under well-conceived string inputs. This paper presents Rescue, a three-phase gray-box analytical technique, to automatically generate ReDoS strings to highlight vulnerabilities of given regexes. Rescue systematically seeds (by a genetic search), incubates (by another genetic search), and finally pumps (by a regex-dedicated algorithm) for generating strings with maximized search time. We implemenmted the Rescue tool and evaluated it against 29,088 practical regexes in real-world projects. The evaluation results show that Rescue found 49% more attack strings compared with the best existing technique, and applying Rescue to popular GitHub projects discovered ten previously unknown ReDoS vulnerabilities.
| Year | Citations | |
|---|---|---|
Page 1
Page 1