Кодирование php фала

Discussion in 'PHP' started by Divan, 25 Jun 2009.

  1. Divan

    Divan New Member

    Joined:
    12 Jun 2009
    Messages:
    5
    Likes Received:
    1
    Reputations:
    0
    Привет всем , у меня тако вопрос , я видел очень много тем как раскадировать данный материал
    PHP:
    <?php // This file is protected by copyright law and provided under license. Reverse engineering of this file is strictly prohibited.
    $OOO0O0O00=__FILE__;$O00O00O00=__LINE__;$OO00O0000=4564;eval((base64_decode('JE8wMDBPME8wMD1mb3BlbigkT09PME8wTzAwLCdyYicpO3doaWxlKC0tJE8wME8wME8wMClmZ2V0cygkTzAwME8wTzAwLDEwMjQpO2ZnZXRzKCRPMDAwTzBPMDAsNDA5Nik7JE9PMDBPMDBPMD0oYmFzZTY0X2RlY29kZShzdHJ0cihmcmVhZCgkTzAwME8wTzAwLDM3MiksJ29IK0F0SnJhNU9mZFhRSVAxZXVVRXlHVjhSRjA3Qlo5a3FtM3pMS3hXRGIyaFlsU3Bjbi9pNHdqTU5zZzZUdkM9JywnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLycpKSk7ZXZhbCgkT08wME8wME8wKTs=')));return;?>
    OtTPXAHPXAHPXA4L7KyxVjOL7rcq8wEWO4T9ezLXeyT9OnpmOn5lOtTPU/HPXt6pX+MmOn5hfrOq7wEwQJTzRGQSRrEW7jenBa5WRxOL8G1WOt6pXAHPXt6pX+pzUi6pXt6pXAopfupx0ik21Vef7Kt4UwRzGJJOEAJLByyJZEBGIJOrXAB+G3L27Gi/ZzcdZJBt83OWGGcU7rQldwziBwDQUxQxQLew1/ixd+BH1zQteERautLfuicQUzT1EyOUyJyGy4qRGKJm8weLRKBWFGD20r4l0jHc7xQiBVRjZaLsXAtnX/14Q37MIuhSOnzDfuzgRKQh0jQLf+ePXAopU/HPXAoDIwyw8GpWOtTPXAHPXAHPX+zg5rLl8wc4RrEk5xQLBaypdxHW7+5gBVQL7LTh0wBD0mkDI/YL8wqS5+7xIwLl8wc4RrEk5KqL8GeL7mNpFaomI/YL8wqS5+7xIpDp7KLlB+omPrQL0xeL73M6FAXvOrcq0KB0BrLi0ry9BVHm8GcBP+TWX/MmIpWz734xRVe9BrJm0ry98VOnf+ei8GOhRVQ0BJT47wyn74ihOJTUeyQUuETIGjyDRJih5xRq0ayi8u5DIpWz0GLl8wJ/FrOq0A4xRVe97jL/BKJhf+O47wyn74TYFGN38VQW8KJh5mzg+meYFGN37KOq0A4xRVe97jL/BKJhf+O47wyn74TYFGN37KOq0+5DIpDDRmoWOJTaeye0BVHm8GcBfuHg+KLK5+kzViBJyJYqBaLpRyiTPu5mfuHg5+e9eiyEGwJiZVHLVUicIjifFG8kf+kzViBJyJYq0GT40xeBPAip5rTn5ryM8wqq0KBL8wJ/F+kzViBJyJYq0GT40xeBd+enGjRq0ayi8yih5xHqZVQN74Tj0VWmd+OSBV1mfUpz0GLl8wJ/FrOq0+zk8GNz5+e9eiyEGwJiZVHLVUiTXuzkZnozViBJyJYq0GT40xeBPueYFGN38VQW8KJhIjifRGc/RGLK5+kWOJTaeye08G4SBGNiVUpTX+HS7mozViBJyJYq0GT40xeBP+eYFGN
    А вот как так же кодировать ??? допустим у меня есть php фалы и мне из также нужно закадировать чтоб некто немог посмотреть оригинальный код ...
     
  2. Krist_ALL

    Krist_ALL Banned

    Joined:
    14 Jan 2009
    Messages:
    436
    Likes Received:
    193
    Reputations:
    24
    PHP:
    $O000O0O00=fopen($OOO0O0O00,'rb');while(--$O00O00O00)fgets($O000O0O00,1024);fgets($O000O0O00,4096);$OO00O00O0=(base64_decode(strtr(fread($O000O0O00,372),'oH+AtJra5OfdXQIP1euUEyGV8RF07BZ9kqm3zLKxWDb2hYlSpcn/i4wjMNsg6TvC=','ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/')));eval($OO00O00O0);
    это можно раскодировать

    кодируется так eval(base64_decode(x)); где х это base64_encode(твой код);

    чтобы норм зашифровать юзай ZEND OPTIMIZER.
     
    #2 Krist_ALL, 25 Jun 2009
    Last edited: 25 Jun 2009
  3. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Я примерно год назад писал расшифровщик для такого, про него забыли)
    В этом тексте зашифрован такой кусок:
    PHP:
    include "setup.php";user_login();;echo '';include "header.php";;echo '';
    print 
    "<center><h3>$lang[title_upbal]</h3>";
    $r=get_table_arr($tables[t_users],$_SESSION[uid],"valuta");
    $mincashbal=get_sysval("users_mincashbal");
    $mincrbal=get_sysval("users_mincrbal");
    if (
    $_GET[upbal]) {
    if (
    $_GET[atype]=="") { $_GET[atype]=1;}
    if ((
    $_GET[amount]<=or exchangecash($_GET[amount],$r[valuta],"paysys_wmz","out")<$mincashbal) and $_GET[atype]==1) { $_GET[amount]=$mincashbal;}
    elseif ((
    $_GET[amount]<=or $_GET[amount]<$min
    Еще раз мой универсальный расшифровщик для файлов, зашифрованных таким образом:
    PHP:
    <?php
    $file
    ='lol.php'//file to decrypt


    $f=file_get_contents($file);

    preg_match("/base64_decode\('([a-zA-Z0-9\+=\/]+)'\)\)/isU",$f,$m);
    if(!isset(
    $m[1]))
      die(
    'Couldnot decrypt.');

    preg_match('/__LINE__;\$(.+)=(\d+);/isU',$f,$m2);
    if(!isset(
    $m2[1]) || !isset($m2[2]))
      die(
    'Couldnot decrypt.');

    eval(
    '$'.$m2[1].'='.$m2[2].';');


    $code1=base64_decode($m[1]);

    preg_match("/base64_decode\(strtr\((.+)\);eval/isU",$code1,$m);
    if(!isset(
    $m[1]))
      die(
    'Couldnot decrypt.');



    $code2='base64_decode(strtr('.$m[1];

    $code2='$code3='.preg_replace('/fread\(\$(.+),/isU',"fread(\$f,",$code2).';';

    $f=fopen($file,'r');
    if(!
    $f)
      die(
    'Error opening file');

    while(!
    feof($f))
    {
      
    $txt=fgets($f,2);

      if(
    $txt=='?')
      {
        if(
    fgets($f,2)=='>')
          break;
      }
    }

    fgets($f,3);

    eval(
    $code2);

    $code4=preg_replace('/fread\(\$(.+),/isU',"fread(\$f,",$code3);

    preg_match("/base64_decode\(strtr\((.+)\)\);fclose\(/isU",$code4,$m);
    if(!isset(
    $m[1]))
      die(
    'Couldnot decrypt.');

    $code5='$code6=base64_decode(strtr('.$m[1].';';

    eval(
    $code5);

    fclose($f);

    print 
    trim($code6);
    ?>
     
    1 person likes this.
  4. Krist_ALL

    Krist_ALL Banned

    Joined:
    14 Jan 2009
    Messages:
    436
    Likes Received:
    193
    Reputations:
    24
    у ТСа самое простое шифрование)

    е ченить по серьезнее штатными средствами?

    сморел d_x твой расшифровщик, ну и наворотил ты)) понил на 60% - общий смысл понятен.
     
  5. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Там не банальное base64+eval, там еще чтение своего же файла, еще несколько base64, наворочено достаточно, не помню уже конкретно.
     
  6. Krist_ALL

    Krist_ALL Banned

    Joined:
    14 Jan 2009
    Messages:
    436
    Likes Received:
    193
    Reputations:
    24
    всеравно это легко расшифруемо... я недавно думал как мона зашифровать ченить..разные вещи - шифрование и обфускация. в данном случае больше обфускация $O000O0O00=fopen($OOO0O0O00,'rb');while(--$O00O00O00)fgets($O00.. итд.


    думаю может ченить поинтереснее есть...


    мона еще pack()
     
    #6 Krist_ALL, 25 Jun 2009
    Last edited: 25 Jun 2009
    1 person likes this.
  7. Divan

    Divan New Member

    Joined:
    12 Jun 2009
    Messages:
    5
    Likes Received:
    1
    Reputations:
    0
    Спасибо ребята за ответы ! но мне нужно как зашефровать также : )
     
  8. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    А смысл теперь шифровать также, если всё элементарно расшифровывается? Там даже обфускация исходного скрипта не производится.
     
  9. Divan

    Divan New Member

    Joined:
    12 Jun 2009
    Messages:
    5
    Likes Received:
    1
    Reputations:
    0
    xM.... d_x а как получше шефровать ?
     
  10. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    PHP нет смысла шифровать, в любом случае исходный код получить можно. Если только что посложнее, например, Zend, хотя он тоже снимается. Можно обфусцировать код, т.е. сделать его трудночитаемым.
     
  11. Divan

    Divan New Member

    Joined:
    12 Jun 2009
    Messages:
    5
    Likes Received:
    1
    Reputations:
    0
    ну зенд проблемы шифровать нету , и для него на сервере должно стоять програмное обиспичение ... а как обфусцировать код ?
     
  12. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Я для себя свой обфускатор писал ( http://kaimi.ru/2009/03/php-obfuscator-13-extended/ ), хотя много других есть.
     
  13. Divan

    Divan New Member

    Joined:
    12 Jun 2009
    Messages:
    5
    Likes Received:
    1
    Reputations:
    0
    Спасибо ! но всёже непомогло ((
     
    1 person likes this.
  14. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    не совсем согласен, 1,5 года назад купил покер, есть ключ+лицензия - отдельно от кода, не в нём т.е., закинул грину одному - хрен там, никто пока не справился. Вывод - не паблик ключ шифровки, в отдельном файле

    ЗЫЖ Сам ключ + лицензия тоже чем-то зашифрованы

    Вот пример шифровки, которую вряд ли расшифруешь, если неизвестны параметры расшифровки:

    Code:
    /showpost.php?p=1179471&postcount=716
    
     
    #14 Pashkela, 26 Jun 2009
    Last edited: 26 Jun 2009
  15. cren

    cren Member

    Joined:
    5 May 2009
    Messages:
    247
    Likes Received:
    28
    Reputations:
    1
    Помоему нет смысла в этом элементарном шифровании, уже развелось много сервисов онлайн которые это расшифровывают
     
  16. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    ))))

    Расшифруй это:

    PHP:
     e<co?han'tcaiu t-r  zelzzlz!zz!!z!3?'>1
     
    1 person likes this.
  17. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Pashkela Что мешает получить этот самый файл ключа, если он доступен ПХП для чтения?

    И второе - ваша шифровка взламывается тривиальным образом при возможности подать произвольный текст на вход кодера. И не слишком тривиальным образом при известном характере закодированной последовательности (например если это код ПХП, текст, и т.д.)
     
    _________________________
  18. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Ну если ключ шифрования вроде RSA выдается человеку только при покупке товара, то скрипт уже никак не расшифровать, не купив его.
     
  19. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    d_x Для хороших систем с открытым ключом - естественно. Для данного конкретного шифра перестановки - все просто.

    Плюс - в данном случае имеется ввиду ключ для дешифровки, иначе зачем нам скрипты, которые мы не можем использовать? То опять таки можно декодировать.

    З.Ы, Шифрование в пределах ПХП, без учета надстроек типа IonCube и Zend
     
    _________________________
    #19 Gifts, 27 Jun 2009
    Last edited: 27 Jun 2009
    1 person likes this.
  20. astrologer

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

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Code:
    <? echo 'anticat - rullezzzzzzz!!!!1'; ?>