All the vulnerabilities related to the version 0.2.4 of the package
Incorrect Handling of Non-Boolean Comparisons During Minification in uglify-js
Versions of uglify-js
prior to 2.4.24 are affected by a vulnerability which may cause crafted JavaScript to have altered functionality after minification.
Upgrade UglifyJS to version >= 2.4.24.
Regular Expression Denial of Service in uglify-js
Versions of uglify-js
prior to 2.6.0 are affected by a regular expression denial of service vulnerability when malicious inputs are passed into the parse()
method.
var u = require('uglify-js');
var genstr = function (len, chr) {
var result = "";
for (i=0; i<=len; i++) {
result = result + chr;
}
return result;
}
u.parse("var a = " + genstr(process.argv[2], "1") + ".1ee7;");
$ time node test.js 10000
real 0m1.091s
user 0m1.047s
sys 0m0.039s
$ time node test.js 80000
real 0m6.486s
user 0m6.229s
sys 0m0.094s
Update to version 2.6.0 or later.
Improper Input Validation in SocksJS-Node
Incorrect handling of Upgrade header with the value websocket leads in crashing of containers hosting sockjs apps. This affects the package sockjs before 0.3.20.
Insecure Entropy Source - Math.random() in node-uuid
Affected versions of node-uuid
consistently fall back to using Math.random
as an entropy source instead of crypto
, which may result in guessable UUID's.
Update to version 1.4.4 or later.
Remote Memory Exposure in request
Affected versions of request
will disclose local system memory to remote systems in certain circumstances. When a multipart request is made, and the type of body
is number
, then a buffer of that size will be allocated and sent to the remote server as the body.
var request = require('request');
var http = require('http');
var serveFunction = function (req, res){
req.on('data', function (data) {
console.log(data)
});
res.end();
};
var server = http.createServer(serveFunction);
server.listen(8000);
request({
method: "POST",
uri: 'http://localhost:8000',
multipart: [{body:500}]
},function(err,res,body){});
Update to version 2.68.0 or later
Server-Side Request Forgery in Request
The request
package through 2.88.2 for Node.js and the @cypress/request
package prior to 3.0.0 allow a bypass of SSRF mitigations via an attacker-controller server that does a cross-protocol redirect (HTTP to HTTPS, or HTTPS to HTTP).
NOTE: The request
package is no longer supported by the maintainer.
Open Redirect in ecstatic
Versions of ecstatic
prior to 4.1.2, 3.3.2 or 2.2.2 are vulnerable to Open Redirect. The package fails to validate redirects, allowing attackers to craft requests that result in an HTTP 301
redirect to any other domains.
If using ecstatic
4.x, upgrade to 4.1.2 or later.
If using ecstatic
3.x, upgrade to 3.3.2 or later.
If using ecstatic
2.x, upgrade to 2.2.2 or later.
Denial of Service in ecstatic
ecstatic have a denial of service vulnerability. Successful exploitation could lead to crash of an application.
Denial of Service in ecstatic
ecstatic
, a simple static file server middleware, is vulnerable to denial of service. If a payload with a large number of null bytes (%00
) is provided by an attacker it can crash ecstatic by running it out of memory.
Results from the original advisory
A payload of 22kB caused a lag of 1 second,
A payload of 35kB caused a lag of 3 seconds,
A payload of 86kB caused the server to crash
Update to version 2.0.0 or later.
Denial of Service in ecstatic
Versions of ecstatic
prior to 1.4.0 are affected by a denial of service vulnerability when certain input strings are sent via the Last-Modified
or If-Modified-Since
headers.
Parsing certain inputs with new Date()
or Date.parse()
cases v8 to crash. As ecstatic passes the value of the affected headers into one of these functions, sending certain inputs via one of the headers will cause the server to crash.
Update to version 1.4.0 or later.
mime Regular Expression Denial of Service when MIME lookup performed on untrusted user input
Affected versions of mime
are vulnerable to regular expression denial of service when a mime lookup is performed on untrusted user input.
Update to version 2.0.3 or later.
Prototype Pollution in merge
All versions of package merge <2.1.1 are vulnerable to Prototype Pollution via _recursiveMerge .
Prototype Pollution in merge
Versions of merge
before 1.2.1 are vulnerable to prototype pollution. The merge.recursive
function can be tricked into adding or modifying properties of the Object prototype.
Update to version 1.2.1 or later.