| Package | Affected versions | Patched versions |
|---|---|---|
| request | ≥ 2.2.6, < 2.47.0> 2.51.0, ≤ 2.67.0 | 2.47.0 |
| request | ≥ 2.2.6, < 2.68.0≥ 2.49.0, < 2.68.0 | 2.68.0 |
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
Running one of these products? Scan your site to see whether it exposes a vulnerable version.
Scan my site free