Старый 12.07.2010, 13:06   #11
lisa99
 
Регистрация: 06.07.2010
Сообщений: 11
Репутация: 0
По умолчанию

Цитата:
Сообщение от elwaux Посмотреть сообщение
вот тебе пример кода, который тебе наверника поможет:
PHP код:
$a 'base64_decode';
$a $a('aGVsbG8sIGl0cyBsaW5zaSBsb2hhbg==');
echo 
$a
у тебя в коде явно ф-ция "T7FC56270E7A70FA81A5935B72EACBE29" используется как декодер.
сначала идет base64_decode, а потом другие манипуляции с текстом. наверное ксор, орд, ..
это все понятно, небольшой опыт есть, когда обфусцировалась сама ф-я base64_decode
но
T7FC56270E7A70FA81A5935B72EACBE29 это не base64_decode'

=\
lisa99 вне форума   Ответить с цитированием
Старый 12.07.2010, 13:36   #12
Rebz
 
Аватар для Rebz
 
Регистрация: 06.07.2010
Сообщений: 28
Репутация: 14
По умолчанию

Цитата:
Сообщение от lisa99 Посмотреть сообщение
это все понятно, небольшой опыт есть, когда обфусцировалась сама ф-я base64_decode
но
T7FC56270E7A70FA81A5935B72EACBE29 это не base64_decode'

=\
Привет!
elwaux имеет в виду, что это (T7FC56270E7A70FA81A5935B72EACBE29) название функции, а не результат base64_decode.
__________________
Аудит безопасности сайтов
Вы можете не изменяться.
Выживание — дело добровольное.
(c) Уильям Эдвардс Деминг
Rebz вне форума   Ответить с цитированием
Старый 12.07.2010, 13:40   #13
lisa99
 
Регистрация: 06.07.2010
Сообщений: 11
Репутация: 0
По умолчанию

Цитата:
Сообщение от Rebz Посмотреть сообщение
Привет!
elwaux имеет в виду, что это (T7FC56270E7A70FA81A5935B72EACBE29) название функции, а не результат base64_decode.
ну конечно же название функции!
но откуда она берется, вот вопрос
Я не понимаю всей конструкции. Получается что она вызывает саму себя, что ли

if (!function_exists("T7FC56270E7A70FA81A5935B72EACBE 29"))
{ function T7FC56270E7A70FA81A5935B72EACBE29($TF186217753C37B 9B9F958D906208506E)
{ $TF186217753C37B9B9F958D906208506E = base64_decode($TF186217753C37B9B9F958D906208506E);
lisa99 вне форума   Ответить с цитированием
Старый 12.07.2010, 13:42   #14
lisa99
 
Регистрация: 06.07.2010
Сообщений: 11
Репутация: 0
По умолчанию

просто мне попадались ситуации, когда была закодирована сама base64_decode через себя же.
но там клубок разматывался. а здесь я не могу ухватить крайнюю ниточку. с чего начать -то?
lisa99 вне форума   Ответить с цитированием
Старый 12.07.2010, 13:50   #15
Pashkela
 
Аватар для Pashkela
 
Регистрация: 05.07.2010
Сообщений: 1,243
По умолчанию

ну вот здесь почитай, похожий случай, даже T7FC56270E7A70FA81A5935B72EACBE29 присутствует)

http://www.sitepoint.com/forums/show....php?p=4196002

PS: Вообще, просто набрать в гугле "T7FC56270E7A70FA81A5935B72EACBE29"

Цитата:
oRb -> RE: Расшифровать php код (14.09.2009 11:04:24)

Решение крайне простое. Перед
return $TFF44570ACA8241914870AFBC310CDB85;
пишем
var_dump($TFF44570ACA8241914870AFBC310CDB85);
и получаем:
...

Последний раз редактировалось Pashkela; 12.07.2010 в 13:55..
Pashkela вне форума   Ответить с цитированием
Старый 12.07.2010, 13:54   #16
lisa99
 
Регистрация: 06.07.2010
Сообщений: 11
Репутация: 0
По умолчанию

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

я еще вернусь ))
lisa99 вне форума   Ответить с цитированием
Старый 12.07.2010, 13:58   #17
mailbrush
 
Регистрация: 06.07.2010
Сообщений: 47
Репутация: 4
По умолчанию

Результат T7FC56270E7A70FA81A5935B72EACBE29 - это base64_decode.
Алгоритм скрипта:
Цитата:
если нет функции T7FC56270E7A70FA81A5935B72EACBE29, то создается функция T7FC56270E7A70FA81A5935B72EACBE29 с аргументом $TF186217753C37B9B9F958D906208506E. результат функции - декодирование аргумента $TF186217753C37B9B9F958D906208506E через base64
mailbrush вне форума   Ответить с цитированием
Старый 12.07.2010, 14:55   #18
elwaux
 
Аватар для elwaux
 
Регистрация: 05.07.2010
Сообщений: 26
Репутация: 11
По умолчанию

Цитата:
Сообщение от oRb
oRb -> RE: Расшифровать php код (14.09.2009 11:04:24)

Решение крайне простое. Перед
return $TFF44570ACA8241914870AFBC310CDB85;
пишем
var_dump($TFF44570ACA8241914870AFBC310CDB85);
и получаем:
...
кстате, в скрипте есть проверка на вывод текста (разработчики забыли про var_dump):
PHP код:
preg_match(base64_decode("LyhwcmludHxzcHJpbnR8ZWNobykv"), $file$pse);
//preg_match('/(print|sprint|echo)/', $file, $pse);
 
if (count($pse)) exit; 
Цитата:
Сообщение от mailbrush
если нет функции T7FC56270E7A70FA81A5935B72EACBE29, то создается функция T7FC56270E7A70FA81A5935B72EACBE29 с аргументом $TF186217753C37B9B9F958D906208506E. результат функции - декодирование аргумента $TF186217753C37B9B9F958D906208506E через base64
неправильно. в base64 загоняется исходный текст только потому что там есть непечатаемые символы.
результатом ф-ции есть нечто больше чем простой base64_decode

Последний раз редактировалось elwaux; 12.07.2010 в 14:58..
elwaux вне форума   Ответить с цитированием
Старый 12.07.2010, 15:05   #19
elwaux
 
Аватар для elwaux
 
Регистрация: 05.07.2010
Сообщений: 26
Репутация: 11
По умолчанию

lisa99:
поискал в гугле, нашел твою ф-цию:
PHP код:
if (!function_exists("T7FC56270E7A70FA81A5935B72EACBE29"))  {   function T7FC56270E7A70FA81A5935B72EACBE29($TF186217753C37B9B9F958D906208506E)   {    $TF186217753C37B9B9F958D906208506E base64_decode($TF186217753C37B9B9F958D906208506E);    $T7FC56270E7A70FA81A5935B72EACBE29 0;    $T9D5ED678FE57BCCA610140957AFAB571 0;    $T0D61F8370CAD1D412F80B84D143E1257 0;    $TF623E75AF30E62BBD73D6DF5B50BB7B5 = (ord($TF186217753C37B9B9F958D906208506E[1]) << 8) + ord($TF186217753C37B9B9F958D906208506E[2]);    $T3A3EA00CFC35332CEDF6E5E9A32E94DA 3;    $T800618943025315F869E4E1F09471012 0;    $TDFCF28D0734569A6A693BC8194DE62BF 16;    $TC1D9F50F86825A1A2302EC2449C17196 "";    $TDD7536794B63BF90ECCFD37F9B147D7F strlen($TF186217753C37B9B9F958D906208506E);    $TFF44570ACA8241914870AFBC310CDB85 __FILE__;    $TFF44570ACA8241914870AFBC310CDB85 file_get_contents($TFF44570ACA8241914870AFBC310CDB85);    $TA5F3C6A11B03839D46AF9FB43C97C188 0;    preg_match(base64_decode("LyhwcmludHxzcHJpbnR8ZWNobykv"), $TFF44570ACA8241914870AFBC310CDB85$TA5F3C6A11B03839D46AF9FB43C97C188);    for (;$T3A3EA00CFC35332CEDF6E5E9A32E94DA<$TDD7536794B63BF90ECCFD37F9B147D7F;)    {     if (count($TA5F3C6A11B03839D46AF9FB43C97C188)) exit;     if ($TDFCF28D0734569A6A693BC8194DE62BF == 0)     {      $TF623E75AF30E62BBD73D6DF5B50BB7B5 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) << 8);      $TF623E75AF30E62BBD73D6DF5B50BB7B5 += ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]);      $TDFCF28D0734569A6A693BC8194DE62BF 16;     }     if ($TF623E75AF30E62BBD73D6DF5B50BB7B5 0x8000)     {      $T7FC56270E7A70FA81A5935B72EACBE29 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) << 4);      $T7FC56270E7A70FA81A5935B72EACBE29 += (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA]) >> 4);      if ($T7FC56270E7A70FA81A5935B72EACBE29)      {       $T9D5ED678FE57BCCA610140957AFAB571 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) & 0x0F) + 3;       for ($T0D61F8370CAD1D412F80B84D143E1257 0$T0D61F8370CAD1D412F80B84D143E1257 $T9D5ED678FE57BCCA610140957AFAB571$T0D61F8370CAD1D412F80B84D143E1257++)        $TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012+$T0D61F8370CAD1D412F80B84D143E1257] = $TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012-$T7FC56270E7A70FA81A5935B72EACBE29+$T0D61F8370CAD1D412F80B84D143E1257];       $T800618943025315F869E4E1F09471012 += $T9D5ED678FE57BCCA610140957AFAB571;      }      else      {       $T9D5ED678FE57BCCA610140957AFAB571 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) << 8);       $T9D5ED678FE57BCCA610140957AFAB571 += ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) + 16;       for ($T0D61F8370CAD1D412F80B84D143E1257 0$T0D61F8370CAD1D412F80B84D143E1257 $T9D5ED678FE57BCCA610140957AFAB571$TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012+$T0D61F8370CAD1D412F80B84D143E1257++] = $TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA]);       $T3A3EA00CFC35332CEDF6E5E9A32E94DA++; $T800618943025315F869E4E1F09471012 += $T9D5ED678FE57BCCA610140957AFAB571;      }     }     else $TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012++] = $TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++];     $TF623E75AF30E62BBD73D6DF5B50BB7B5 <<= 1;     $TDFCF28D0734569A6A693BC8194DE62BF--;     if ($T3A3EA00CFC35332CEDF6E5E9A32E94DA == $TDD7536794B63BF90ECCFD37F9B147D7F)     {      $TFF44570ACA8241914870AFBC310CDB85 implode(""$TC1D9F50F86825A1A2302EC2449C17196);      $TFF44570ACA8241914870AFBC310CDB85 "?".">".$TFF44570ACA8241914870AFBC310CDB85."<"."?";      return $TFF44570ACA8241914870AFBC310CDB85;     }    }   }  }  eval(T7FC56270E7A70FA81A5935B72EACBE29("QAAAPD9waHAKLyoqCiAqIEBwYQABY2thZ2UgV29yZFByZXNzAWIQgHN1YgGZemluZQGALwo/PgoJPAAIc3BhbiBjbGFzcz0iAMBjZXIAISI+Jm5ic3A7PC8BAG4+CiAAEAAAPC9kaXY+PCEtLSBlbmQgbwAAZiAjaW5uZXJDb250ZW50IDAgLS0ChAJwIGlkPSJpAaRCb3R0b37hbQU3AgACpAUvA0UE4gkJwALQCbVwdXNoBGtBADwI0XRoaXMgAnBpc2lvbiBoZQAAbHBzIGZvb3RlciB0byBzdCEHYXkAUGlja3kA8XRoZSBiCQIMEQDhaVNwEtELwQkOHyNjDcBhEsByCQEJCgkEDdGBPQYjX3dyYXAiDOMJPAhQD5IBwwF2cAwVCAhsZWZ0DBBjb3B5OyBDAGByaWcQAGh0IBwCIGVjaG8gZGF0ZSgnAQBZJyk7ID8+AZRibG9naW5mbwIAKCduYW1lAbMuIDxiciAvPgoAADxhIGhyZWY9Imh0dHA6Ly+AAA0gbWVzLndlYm95Lm9yZyI+EAhUaGUBIDwvYT4gYnkgAw13d3cABS5tb25vZmFjdG9yLmMagU0BBoAAA2EsIGF2YWlsYWJsZSB2aWHkBAQvBCAHYmZvJuB0Lm5ldC8/CTF6aBxNa2VuCAQBwwTxPC9wJzAJPBFWEEIiE4gPiExvZ28TxCdgBwcScxDndXJsENMiPjwAQWltZyBzcmM9IgJddGVtcGwVUAUSX2RpcmUOMXkDQy9pbR+Acy8VwG9AAF8bAy5naWYiIGFsdD0iIi8+/3sKwS9yCEILVB4RMo8yggGwPgMCJHQAwiUvIwbDI4LxQSVBAnIlcDwxIHdwCLQoIAAKCW9iXzaQAnBfZmx1c2gBIAoJITAI4ALgL2JvZEAAeR/QL2h0bWw+")); 
теперь как ее обезвредить.
сперва сделаем код красивым:
PHP код:
if (!function_exists("T7FC56270E7A70FA81A5935B72EACBE29")) {
    function 
T7FC56270E7A70FA81A5935B72EACBE29($TF186217753C37B9B9F958D906208506E) {
        
$TF186217753C37B9B9F958D906208506E base64_decode($TF186217753C37B9B9F958D906208506E);
        
$T7FC56270E7A70FA81A5935B72EACBE29 0;
        
$T9D5ED678FE57BCCA610140957AFAB571 0;
        
$T0D61F8370CAD1D412F80B84D143E1257 0;
        
$TF623E75AF30E62BBD73D6DF5B50BB7B5 = (ord($TF186217753C37B9B9F958D906208506E[1]) << 8) + ord($TF186217753C37B9B9F958D906208506E[2]);
        
$T3A3EA00CFC35332CEDF6E5E9A32E94DA 3;
        
$T800618943025315F869E4E1F09471012 0;
        
$TDFCF28D0734569A6A693BC8194DE62BF 16;
        
$TC1D9F50F86825A1A2302EC2449C17196 "";
        
$TDD7536794B63BF90ECCFD37F9B147D7F strlen($TF186217753C37B9B9F958D906208506E);
        
$TFF44570ACA8241914870AFBC310CDB85 __FILE__;
        
$TFF44570ACA8241914870AFBC310CDB85 file_get_contents($TFF44570ACA8241914870AFBC310CDB85);
        
$TA5F3C6A11B03839D46AF9FB43C97C188 0;
        
preg_match(base64_decode("LyhwcmludHxzcHJpbnR8ZWNobykv"), $TFF44570ACA8241914870AFBC310CDB85$TA5F3C6A11B03839D46AF9FB43C97C188);
        for (; 
$T3A3EA00CFC35332CEDF6E5E9A32E94DA $TDD7536794B63BF90ECCFD37F9B147D7F;) {
            if (
count($TA5F3C6A11B03839D46AF9FB43C97C188)) exit;
            if (
$TDFCF28D0734569A6A693BC8194DE62BF == 0) {
                
$TF623E75AF30E62BBD73D6DF5B50BB7B5 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) << 8);
                
$TF623E75AF30E62BBD73D6DF5B50BB7B5 += ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]);
                
$TDFCF28D0734569A6A693BC8194DE62BF 16;
            }
            if (
$TF623E75AF30E62BBD73D6DF5B50BB7B5 0x8000) {
                
$T7FC56270E7A70FA81A5935B72EACBE29 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) << 4);
                
$T7FC56270E7A70FA81A5935B72EACBE29 += (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA]) >> 4);
                if (
$T7FC56270E7A70FA81A5935B72EACBE29) {
                    
$T9D5ED678FE57BCCA610140957AFAB571 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) & 0x0F) + 3;
                    for (
$T0D61F8370CAD1D412F80B84D143E1257 0$T0D61F8370CAD1D412F80B84D143E1257 $T9D5ED678FE57BCCA610140957AFAB571$T0D61F8370CAD1D412F80B84D143E1257++) $TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012 $T0D61F8370CAD1D412F80B84D143E1257] = $TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012 $T7FC56270E7A70FA81A5935B72EACBE29 $T0D61F8370CAD1D412F80B84D143E1257];
                    
$T800618943025315F869E4E1F09471012 += $T9D5ED678FE57BCCA610140957AFAB571;
                } else {
                    
$T9D5ED678FE57BCCA610140957AFAB571 = (ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) << 8);
                    
$T9D5ED678FE57BCCA610140957AFAB571 += ord($TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++]) + 16;
                    for (
$T0D61F8370CAD1D412F80B84D143E1257 0$T0D61F8370CAD1D412F80B84D143E1257 $T9D5ED678FE57BCCA610140957AFAB571$TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012 $T0D61F8370CAD1D412F80B84D143E1257++] = $TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA]);
                    
$T3A3EA00CFC35332CEDF6E5E9A32E94DA++;
                    
$T800618943025315F869E4E1F09471012 += $T9D5ED678FE57BCCA610140957AFAB571;
                }
            } else 
$TC1D9F50F86825A1A2302EC2449C17196[$T800618943025315F869E4E1F09471012++] = $TF186217753C37B9B9F958D906208506E[$T3A3EA00CFC35332CEDF6E5E9A32E94DA++];
            
$TF623E75AF30E62BBD73D6DF5B50BB7B5 <<= 1;
            
$TDFCF28D0734569A6A693BC8194DE62BF--;
            if (
$T3A3EA00CFC35332CEDF6E5E9A32E94DA == $TDD7536794B63BF90ECCFD37F9B147D7F) {
                
$TFF44570ACA8241914870AFBC310CDB85 implode(""$TC1D9F50F86825A1A2302EC2449C17196);
                
$TFF44570ACA8241914870AFBC310CDB85 "?".">".$TFF44570ACA8241914870AFBC310CDB85."<"."?";
                return 
$TFF44570ACA8241914870AFBC310CDB85;
            }
        }
    }
}
eval(
T7FC56270E7A70FA81A5935B72EACBE29("QAAAPD9waHAKLyoqCiAqIEBwYQABY2thZ2UgV29yZFByZXNzAWIQgHN1YgGZemluZQGALwo/PgoJPAAIc3BhbiBjbGFzcz0iAMBjZXIAISI+Jm5ic3A7PC8BAG4+CiAAEAAAPC9kaXY+PCEtLSBlbmQgbwAAZiAjaW5uZXJDb250ZW50IDAgLS0ChAJwIGlkPSJpAaRCb3R0b37hbQU3AgACpAUvA0UE4gkJwALQCbVwdXNoBGtBADwI0XRoaXMgAnBpc2lvbiBoZQAAbHBzIGZvb3RlciB0byBzdCEHYXkAUGlja3kA8XRoZSBiCQIMEQDhaVNwEtELwQkOHyNjDcBhEsByCQEJCgkEDdGBPQYjX3dyYXAiDOMJPAhQD5IBwwF2cAwVCAhsZWZ0DBBjb3B5OyBDAGByaWcQAGh0IBwCIGVjaG8gZGF0ZSgnAQBZJyk7ID8+AZRibG9naW5mbwIAKCduYW1lAbMuIDxiciAvPgoAADxhIGhyZWY9Imh0dHA6Ly+AAA0gbWVzLndlYm95Lm9yZyI+EAhUaGUBIDwvYT4gYnkgAw13d3cABS5tb25vZmFjdG9yLmMagU0BBoAAA2EsIGF2YWlsYWJsZSB2aWHkBAQvBCAHYmZvJuB0Lm5ldC8/CTF6aBxNa2VuCAQBwwTxPC9wJzAJPBFWEEIiE4gPiExvZ28TxCdgBwcScxDndXJsENMiPjwAQWltZyBzcmM9IgJddGVtcGwVUAUSX2RpcmUOMXkDQy9pbR+Acy8VwG9AAF8bAy5naWYiIGFsdD0iIi8+/3sKwS9yCEILVB4RMo8yggGwPgMCJHQAwiUvIwbDI4LxQSVBAnIlcDwxIHdwCLQoIAAKCW9iXzaQAnBfZmx1c2gBIAoJITAI4ALgL2JvZEAAeR/QL2h0bWw+")); 
теперь заменим кое какие переменные:
PHP код:
if (!function_exists("decode")) {
    function 
decode($text) {
        
$text base64_decode($text);
        
$ord_bool 0;
        
$i2 0;
        
$i3 0;
        
$i4 = (ord($text[1]) << 8) + ord($text[2]);
        
$temp_len 3;
        
$i6 0;
        
$i7 16;
        
$i8 "";
        
$text_length strlen($text);
        
$file __FILE__;
        
$file file_get_contents($file);
        
$pse 0;
        
preg_match(base64_decode("LyhwcmludHxzcHJpbnR8ZWNobykv"), $file$pse);
        for (; 
$temp_len $text_length;) {
            if (
count($pse)) exit;
            if (
$i7 == 0) {
                
$i4 = (ord($text[$temp_len++]) << 8);
                
$i4 += ord($text[$temp_len++]);
                
$i7 16;
            }
            if (
$i4 0x8000) {
                
$ord_bool = (ord($text[$temp_len++]) << 4);
                
$ord_bool += (ord($text[$temp_len]) >> 4);
                if (
$ord_bool) {
                    
$i2 = (ord($text[$temp_len++]) & 0x0F) + 3;
                    for (
$i3 0$i3 $i2$i3++) $i8[$i6 $i3] = $i8[$i6 $ord_bool $i3];
                    
$i6 += $i2;
                } else {
                    
$i2 = (ord($text[$temp_len++]) << 8);
                    
$i2 += ord($text[$temp_len++]) + 16;
                    for (
$i3 0$i3 $i2$i8[$i6 $i3++] = $text[$temp_len]);
                    
$temp_len++;
                    
$i6 += $i2;
                }
            } else 
$i8[$i6++] = $text[$temp_len++];
            
$i4 <<= 1;
            
$i7--;
            if (
$temp_len == $text_length) {
                
$file implode(""$i8);
                
$file "?".">".$file."<"."?";
                return 
$file;
            }
        }
    }
}
eval(
decode("QAAAPD9waHAKLyoqCiAqIEBwYQABY2thZ2UgV29yZFByZXNzAWIQgHN1YgGZemluZQGALwo/PgoJPAAIc3BhbiBjbGFzcz0iAMBjZXIAISI+Jm5ic3A7PC8BAG4+CiAAEAAAPC9kaXY+PCEtLSBlbmQgbwAAZiAjaW5uZXJDb250ZW50IDAgLS0ChAJwIGlkPSJpAaRCb3R0b37hbQU3AgACpAUvA0UE4gkJwALQCbVwdXNoBGtBADwI0XRoaXMgAnBpc2lvbiBoZQAAbHBzIGZvb3RlciB0byBzdCEHYXkAUGlja3kA8XRoZSBiCQIMEQDhaVNwEtELwQkOHyNjDcBhEsByCQEJCgkEDdGBPQYjX3dyYXAiDOMJPAhQD5IBwwF2cAwVCAhsZWZ0DBBjb3B5OyBDAGByaWcQAGh0IBwCIGVjaG8gZGF0ZSgnAQBZJyk7ID8+AZRibG9naW5mbwIAKCduYW1lAbMuIDxiciAvPgoAADxhIGhyZWY9Imh0dHA6Ly+AAA0gbWVzLndlYm95Lm9yZyI+EAhUaGUBIDwvYT4gYnkgAw13d3cABS5tb25vZmFjdG9yLmMagU0BBoAAA2EsIGF2YWlsYWJsZSB2aWHkBAQvBCAHYmZvJuB0Lm5ldC8/CTF6aBxNa2VuCAQBwwTxPC9wJzAJPBFWEEIiE4gPiExvZ28TxCdgBwcScxDndXJsENMiPjwAQWltZyBzcmM9IgJddGVtcGwVUAUSX2RpcmUOMXkDQy9pbR+Acy8VwG9AAF8bAy5naWYiIGFsdD0iIi8+/3sKwS9yCEILVB4RMo8yggGwPgMCJHQAwiUvIwbDI4LxQSVBAnIlcDwxIHdwCLQoIAAKCW9iXzaQAnBfZmx1c2gBIAoJITAI4ALgL2JvZEAAeR/QL2h0bWw+")); 
теперь закоментируем строчку
PHP код:
if (count($pse)) exit; 
и заменим eval на echo

после запуска получаем:
Код HTML:
?>	<span class="spacer">&nbsp;</span> 
    </div><!-- end of #innerContent --> 
    <div id="iContentBottom">&nbsp;</div> 
    </div><!-- end of #iContent --> 
	
	<div class="push">&nbsp;</div><!-- this division helps footer to stay sticky to the bottom of the page --> 
	</div><!-- end of #container -->	
 
	<div id="footer_wrap"> 
    	<div id="footer"> 
    	<p class="left">&copy; Copyright  . <br /> 
<a href="http://themes.weboy.org">Themes</a> by <a href="http://www.monofactor.com">Monofactor</a>, available via <a href="http://www.themeforest.net/?ref=zhken">Themeforest</a></p> 
		<p class="right" id="footerLogo"> 
        <a href="<?php bloginfo('url'); ?>"><img src="<?php bloginfo('template_directory'); ?>/images/logo_footer.gif" alt=""/></a> 
        </p> 
		<div class="spacer">&nbsp;</div> 
    	</div> 
    </div><!-- end of #footer_wrap --> 
    
	    
	</body> 
</html>
все
elwaux вне форума   Ответить с цитированием
Старый 12.07.2010, 15:51   #20
tipsy
 
Аватар для tipsy
 
Регистрация: 10.07.2010
Сообщений: 415
Репутация: 311
По умолчанию

Подскажите, что можно сделать с eval($code), чтобы он не обнаруживался простым прогоном через grep?

php.net утверждает:
Цитата:
Because eval is a language construct and not a function, it cannot be called using variable functions
http://php.net/manual/en/function.eval.php

То есть традиционный вариант работать не будет
PHP код:
$r "e"."val";
${
r}($code); 
Есть другие варианты?
tipsy вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot