Print This Post PHP Obfuscator 1.4

Пятница, 16. Октябрь 2009
Раздел: PHP, автор:

Обновил свой давний проект - обфускатор PHP-кода. Теперь он способен генерировать еще более непонятный код.

Возможности обфускатора:
[+] Замена имен переменных
[+] Замена имен функций
[+] Шифрование статических строк
[+] Шифрование имен стандартных функций PHP
[+] Обфускация INTEGER'ов
[+] Сжатие скрипта
[+] Архивация скрипта
[+] Добавление треш-комментариев
[+++] И многое другое, множество удобств

Обфускатор не поддерживает конструкции eval() и $$var_name.

Скриншот:

Пример работы. Возьмем такой простой исходный код:

А теперь - несколько вариантов обфускации (показываю без архивации скрипта):

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

Скачать: ZIP

 Обсудить на форуме


Получать обновления на почту:     

Метки: , .

Комментариев: 23 к “PHP Obfuscator 1.4”


  1. Chrome~ :

    Неплохо, скрипт версии 1.3 занимает всего 34.5 Кб, 1.4 - аж 139 Кб.

    Массив $phpfuncs, наверное, намного место увеличил.

    Спасибо за обновление!

    [Ответить]


  2. poma :

    Ты делаешь особую, уличную магию.
    p.s.: У меня во рту оранж сода!

    [Ответить]


  3. Anonym :

    Спасибо за труды!
    При добавлении функций скрипт не дописывает php к <?

    в итоге получается <? function а надо <?php function

    [Ответить]

    dx:

    Как правило все хостинги поддерживают и <? и <?php
    Это не является проблемой.

    [Ответить]


  4. Anonym :

    Так же ошибка при обфускации INTEGER
    Например имеем функцию
    function foo($some_int = 0){
    }

    после обфускации она будет такая
    function foo($some_int = round(0)){
    }
    на это ругается ошибкой

    Так же если делаем exit(0)
    то получаем exit(round(0))
    в итоге команда выведет 0 на экран.

    [Ответить]

    dx:

    Проблема с дефолтовыми значениями действительно есть, время появится - поправлю.

    [Ответить]

  5. [...] тогдам вам будет интересно посмотреть Обфускатор PHP. /2009/10/php-obfuscator-1-4/ AKPC_IDS += "2023,";  К записи нет [...]


  6. dx :

    Обновил обфускатор. Поправлены замены integer в дефолтовых параметров функций, а также замены integer в exit() и die().

    [Ответить]


  7. m :

    А include он поддерживает? Если у меня код разбит на несколько фалов.

    [Ответить]

    dx:

    В этом случае нужно вручную смотреть, чтобы имена переменных, используемых в обоих файлах, совпадали. В обфускаторе есть поле, куда можно вписать имена переменных, которые не следует обфусцировать.

    [Ответить]

  8. хорошо обфусцирует )
    да, обработка инклюдов бы очень пригодилась,
    потом хорошо бы чтоб скрипт абфускатора работал не только http. В большинстве случаев в работе удобнее делать
    $ obf.php --param1 --param2 file_to_obfuscate.php > obfuscated.php

    [Ответить]

  9. Спасибо, я тоже с инклудом не мог разобраться

    [Ответить]


  10. Reset :

    Интересно... а как потом самому править такой код запутанный?

    [Ответить]


  11. AirPower :

    Ты сам то понял, что спростил !?
    Ты исходный код удаляешь что ли ? ^)

    [Ответить]

  12. Спасибо, очень помогло!

    [Ответить]

  13. Скачал, спасибо. Попробую. До этого использовал свой вариант (тоже php-файл он не весь скрипт кодирует а только нужные моменты, чтобы быстрее было)

    [Ответить]

    dx:

    Уже 1.5 давно есть, поищи на блоге.

    [Ответить]


  14. Михаил :

    Здравствуйте!
    Мне попался скрипт рекламной сети IQUELA, там во всех php файлах везде этот Дэвид Блэйн, снял с движка первую кодировку gzuncompres теперь осталась Base64
    Вот кусок кода из корневого index.php

    function /* : Ненененене!! */
    _294570954($i){$a=Array('c3FsX3ByZWZpeA==','c3FsX3ByZWZpeA==','c3FsX3ByZWZpeA==','c3FsX3ByZWZpeA==');

    или вот так

    function _1266945356($i){$a=Array('c2lk','zvjo4erg','bGM=','zvjo4erg','bGM=','z/Dl4vv45e3o5SDx8fvr7uo=',
    И так далее много много) и в конце );return base64_decode($a[$i]);}

    Пробовал через это: http://www.artlebedev.ru/tools/decoder/advanced/

    В лучшем случае 80% нормального кода остальные 20% смайлокод.

    Пожалуйста подскажите как эту кодировку можно снять без потерь?

    [Ответить]

    Kaimi:

    Ручками, если знаешь PHP, то это исключительно вопрос времени.

    [Ответить]


  15. Михаил :

    Могу заплатить за дэшифровку этого скрипта, если цена в разумных пределах будет.

    [Ответить]

    Kaimi:

    В разумных - вряд ли

    [Ответить]


Оставьте ваш комментарий