Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   PHP Obfuscator by DX (https://forum.antichat.xyz/showthread.php?t=70377)

d_x 15.05.2008 21:24

PHP Obfuscator by DX
 
Как-то столкнулся с проблемой - надо было провести обфускацию исходников скрипта на PHP (для тех кто не знает, что это такое: http://ru.wikipedia.org/wiki/обфускация). Но никак не мог найти толкового обфускатора, все почему-то выдавали нерабочий код с ошибками. В итоге решил написать свой, вот что получилось:

Исходники: http://stream.ifolder.ru/6593599
Пример работы: http://xxgate.jino-net.ru/

1. Скрипт имеет веб-интерфейс, поддерживает обфускацию имен переменных, имен функций, методов классов, шифрование статических строк (без переменных), а также сжатие PHP-кода (удаляются лишние пробелы, комментарии и т.п.)

2. Имеется возможность указать переменные, функции, которые не следует заменять, а также функции, параметры которых не следует заменять

3. Можно выборочно отключить обфускацию строк/переменных/функций. Для каждого типа также есть по два вида обфускации.

4. Не поддерживаются конструкции $$var_name и eval, также после обфускации необходимо будет поменять соответствующие имена функций в функциях, устанавливающих манипуляторы (например, ob_gzhandler). Не поддерживаются вызовы функций по их именам из строк.

А обфускация того скрипта, который я хотел изначально запутать, прошла отлично.

Обновление 1.3.

Скачать:
Rapidshare
Webfile

Piflit 15.05.2008 21:31

неплохо
большие файлы оставались рабочими?

d_x 15.05.2008 21:33

Да, пробовал делать обфускацию файла размером 100кб. Единственное, что не работает - это то, что я указал (eval и т.д., это просто остаётся как было, и нужно вручную править).

x-demon 15.05.2008 22:36

Если б допилил еще и обфускацию eval и $$var просто цены бы скриту не было =) А то eval то в шеллах часто есть...

d_x 15.05.2008 22:40

Ну $$var по сути никак не обработать, потому что например в таком коде:
PHP код:

<?
$test
='abc';

$
$test=1;

print 
$abc//выведет 1
?>

содержимое переменной test может быть каким угодно, оно может вообще получаться из БД или откуда-то ещё. С eval примерно то же самое получается.

x-demon 15.05.2008 23:00

Закодировал вебшелл маднетовский... Не скушал, высрал ошибку. А жаль.

d_x 15.05.2008 23:08

Да вот только что обнаружил, что всплывает ошибка иногда при включении сжатия файла, никак пока не могу определить, отчего.



Всё, нашёл в чём дело было, поправил, перезалил.


Маднетовский шелл теперь у меня нормально закодировался, но там используются как-раз таки $$var и eval.

xena-mil1 16.05.2008 01:55

интересует рабочий криптор кода + рабочий обсфуркатор ПХП

d_x 16.05.2008 18:40

Сделал версию 1.1.
  • Исправлено множество мелких иногда возникающих ошибок при обфускации
  • Теперь можно указать, заменять ли переменные и функции внутри скобок eval(). Строки в eval() по прежнему не заменяются, процесс нужно контролировать.
  • Добавлена функция вывода подробной отладочной информации:
    -новые и старые имена замененных переменных и функций;
    -имена найденных, но не замененных переменных и функций;
    -имена функций, параметры которых нужно пересмотреть вручную
  • Добавлено несколько переменных и функций в списки незаменяемых

Пробовал кодировать шелл от nst - он остался работоспособным, хотя в коде присутствуют несколько eval'ов.

Ссылка на скачивание и на пример в первом посте.

x-demon 16.05.2008 20:24

А добавь туда несколько методов обфускации. Kallisto, И которую madnet в своем шелле юзает - она очень сильно файло жмет. (gzip)


Время: 17:40