Показать сообщение отдельно

  #2  
Старый 16.09.2008, 16:16
paulzey
Познающий
Регистрация: 30.10.2007
Сообщений: 63
Провел на форуме:
299216

Репутация: 59
По умолчанию

Кодирование примитивно. Везде используется base64_decode.
Мотаем в самый конец файла, до выражения $_D=strrev('edoced_46esab');
Сие означает, что будет использоваться функция base64_decode (перевёрнутое название).
Далее, видно, что этой функцией будет распакован маленький отдельный кусочек и будет выполнен. После распаковки видно (код я опущу, любопытный читатель распакует его самостоятельно), что весь распакованный код выполняется командой eval. Я пошёл по простому пути и прямо в php заменил eval на echo.
Получился следующий код:
Цитата:
$s=base64_decode('JF9Y... // тот кусок, который в самом окончании, весь целиком
$s=str_replace("eval", "echo", $s); // заменим одну функцию другой
$_F=__FILE__;$_X='P2lCP... // самый первый кусок кода, идёт целиком
eval($s);
Результат - распечатанный листинг.
// KOOBI R7 - CMS - PORTALSOFTWARE(c) DREAM4(r)

P.S. Ход рассуждений строился так, чтобы любой подготовленный читатель, обладающий интерпретатором, мог самостоятельно повторить чудо распаковки.
В случае затруднений могу дать дополнительную информацию.

Последний раз редактировалось paulzey; 16.09.2008 в 16:19..
 
Ответить с цитированием