Надоела уже эта "мода" на кодирование php-файлов ионкубом. Каждый раз приходиться искать файлы, отправлять на декодирование, заменять кодированные на декодированные. Все это отнимает кучу времени. Поэтому, решил это как-то автоматизировать.
Основной план действий:
В общих случаях, для поиска вручную, следует использовать какой-либо файловый менеджер, например, Total Commander или Far Manager.
Суть поиска: найти все файлы по маске *.php содержащие текст "HR+". Почему нужно искать так, а не слово "ionCube"? Многие извращенцы специально удаляют часть кода, проверяющую наличие установленного расширения 'ionCube Loader', чтобы усложнить жизнь простым пользователям. Поэтому при поиске по слову ionCube вы ничего не найдете!
Далее следует как-то собрать эти файлы в одно место. Для этого используем полезную возможность вышеуказанных файловых менеджеров - копировать результаты поиска во временную панель. Почти все хорошо, но когда файлов много, то стоит как-то сохранить все исходные папки, в которых находились эти файлы. Тут возникает сложность. Скопировать файлы с временной панели можно в любую папку, но все исходные пути будут утеряны. Сохранить файлы с путями можно выделив все файлы на временной панели и поместив из в архив. Но тут возникает другое неудобство - нужно перемещаться по всем папкам доходя до нужного файла (-ов) для отправки его на декодирование. Нужно как-то сохранить исходные папки и при этом разместить все файлы в одной папке, чтобы можно было отправить их все сразу на декодирование. Тут уже проблему в ручную тяжело решить. Поэтому родился первый батник 1_find_encode.cmd.
Он делает следующее:
находит все кодированные файлы и копирует их в папку Encode. При этом он переименовывает файлы так, что в имени сохраняется весь относительный путь.
Теперь нужно это все как-то отправить на декодирование на сервис easytoyou.eu. Для декодирования нужно купить доступ, стоимость 10 Евро/месяц.
На гитхабе https://github.com/ip-rw/easy4us был найден скрипт на питоне, который позволяет найти все файлы, кодированные ионкубом, отправить их на декодирование и скачать декодированные файлы. Для работы нужно установить питон и установить необходимые расширения.
При установке зависимостей, скорее всего будут проблемы и ошибки. Читаем то что пишется на экране и устанавливаем необходимое.
Для упрощения процесса второго шага, создаем второй батник 2_decode.cmd
В нем нужно будет настроить две переменные, логин и пароль для вашего аккаунта на easytoyou.eu и сохранить отредактированный файл
Третий шаг, восстановление путей декодированных файлов решает третий батник 3_rename_encode.cmd
Объединим все операции в батнике 0_start_decode.cmd
В результате получаем такую структуру:
requirements.txt - после установки зависимостей ( pip install -r requirements.txt ) можно будет удалить.
Для работы помещаем папку проекта рядом с батниками и запускаем 0_start_decode.cmd - будут выполнены все задачи из файлов
Эти же файлы, можно запускать в ручную, для достижения результата соответствующей задачи.
Файлы проекта выложу чуть позже, утомила меня эта писанина.
Основной план действий:
- поиск кодированных файлов;
- декодирование файлов;
- замена исходных файлов на декодированные.
В общих случаях, для поиска вручную, следует использовать какой-либо файловый менеджер, например, Total Commander или Far Manager.
Суть поиска: найти все файлы по маске *.php содержащие текст "HR+". Почему нужно искать так, а не слово "ionCube"? Многие извращенцы специально удаляют часть кода, проверяющую наличие установленного расширения 'ionCube Loader', чтобы усложнить жизнь простым пользователям. Поэтому при поиске по слову ionCube вы ничего не найдете!
Далее следует как-то собрать эти файлы в одно место. Для этого используем полезную возможность вышеуказанных файловых менеджеров - копировать результаты поиска во временную панель. Почти все хорошо, но когда файлов много, то стоит как-то сохранить все исходные папки, в которых находились эти файлы. Тут возникает сложность. Скопировать файлы с временной панели можно в любую папку, но все исходные пути будут утеряны. Сохранить файлы с путями можно выделив все файлы на временной панели и поместив из в архив. Но тут возникает другое неудобство - нужно перемещаться по всем папкам доходя до нужного файла (-ов) для отправки его на декодирование. Нужно как-то сохранить исходные папки и при этом разместить все файлы в одной папке, чтобы можно было отправить их все сразу на декодирование. Тут уже проблему в ручную тяжело решить. Поэтому родился первый батник 1_find_encode.cmd.
Он делает следующее:
находит все кодированные файлы и копирует их в папку Encode. При этом он переименовывает файлы так, что в имени сохраняется весь относительный путь.
Теперь нужно это все как-то отправить на декодирование на сервис easytoyou.eu. Для декодирования нужно купить доступ, стоимость 10 Евро/месяц.
На гитхабе https://github.com/ip-rw/easy4us был найден скрипт на питоне, который позволяет найти все файлы, кодированные ионкубом, отправить их на декодирование и скачать декодированные файлы. Для работы нужно установить питон и установить необходимые расширения.
Код:
pip install -r requirements.txt
Для упрощения процесса второго шага, создаем второй батник 2_decode.cmd
В нем нужно будет настроить две переменные, логин и пароль для вашего аккаунта на easytoyou.eu и сохранить отредактированный файл
Код:
set USERNAME=тут ваш логин
set PASSWORD=тут ваш пароль
Объединим все операции в батнике 0_start_decode.cmd
В результате получаем такую структуру:
Код:
0_start_decode.cmd
1_find_encode.cmd
2_decode.cmd
3_rename_encode.cmd
main.py
requirements.txt
Для работы помещаем папку проекта рядом с батниками и запускаем 0_start_decode.cmd - будут выполнены все задачи из файлов
Код:
1_find_encode.cmd - создает папку Encode, куда помещает все найденные кодированные файлы
2_decode.cmd - отправляет файлы из Encode на декодирование и перезаписывает на декодированные файлы в папке Encode
3_rename_encode.cmd - создает паку Decode, в которой все декодированные файлы расположены на своих местах (папках)
Файлы проекта выложу чуть позже, утомила меня эта писанина.
Последнее редактирование: