Реализация защиты PHP-скриптов (Zend + привязка к домену)

  • Автор темы Автор темы zxc
  • Дата начала Дата начала

zxc

Новичок
Реализация защиты PHP-скриптов (Zend + привязка к домену)

Есть ли хорошие статьи по защите PHP-скриптов?
Хочу сделать привязку к домену и нужно предусмотреть варианты обхода
Сейчас у меня реализовано так:

1. При помощи debug_backtrace() проверяем существуют ли родительские скрипты, которые подключают наш
2. Проверяем различия между getenv('HTTP_HOST') и $_SERVER['HTTP_HOST']
3. Сверяем HTTP_HOST и привязанный домен при помощи md5()+key
4. Проверяем md5 или crc32 или размер шифрованного php файла (довольно ресурсоемкий вариант, учитывая предполагаемое кол-во обращений)
5. Какую-то важную текстовую часть (без которой скрипт будет не актуален) шифруем с помощью домена (к которому привязываем) и кладем в отдельный файл

есть ли варианты обхода ?
что ещё можно сделать, улучшить?

и ещё вопрос:
видел предложения по поводу расшифровки Zend, насколько актуально и как можно максимально защитить/усложнить задачу?
 
> есть ли варианты обхода ?
Обойти HTTP_HOST проблем не составляет.
 
можно пример? и есть ли способ, как избежать?

если проверять auto_prepend_file и auto_append_file через ini_get это поможет?

-~{}~ 10.08.06 16:49:

Народ, неужели никто не сталкивался с этим?
 
Автор оригинала: SiMM
Обойти HTTP_HOST проблем не составляет.
если не сложно - как?
что-то типа putenv("HTTP_HOST=qwe"); ?

-~{}~ 10.08.06 17:20:

Автор оригинала: zxc


Народ, неужели никто не сталкивался с этим?
лично у меня используются
1. getenv("HTTP_HOST") и прописанного в скрипте домена (константа)
2. результат debug_backtrace()
3. проверка переопределения констант - если они defined до нужного момента - досвидания
4. все это зазендено, причем ходит слух, что если в скрипте есть что-то на русском - он не очень весело дезендится

можно и, наверно, нужно препенды проверять, аппенды - в общем тоже можно
 
append ничего не даст, но можно и его залочить, в конце скриптов просто exit ставить

> и прописанного в скрипте домена (константа)
имхо надо не домен прописывать, а его хэш
 
Если скрипт настолько ценен - то один из вариантов через заднее кирильцо (может есть и попроще - то, что первым пришло в голову).
1. Завести на своём выделенном сервере требуемый скриптом виртуальный хост A.
2. С "чужого" хоста B лезть через mod_proxy к A.

> имхо надо не домен прописывать, а его хэш
Какая разница - что хэш, что домен - константы.
 
SiMM
Если чечь идет о
своём выделенном сервере
, то
наверное, более эффективно модуль приписать к PHP, переопределяющий debug_backtrace. А затем включать скрипт простым includ'ом. Ну, а перед этим инклудом состряпать подходящее окружение для скрипта... :)
 
все эти проверки можно обойти, условия снять и т.д.

P.S. дезенд 1 файла - 3 бакса.
 
нет. но как буду с компа(сейчас с кпк) - могу найти координаты того, кто может сделать.
 
мне не надо
я итак знаю, что зенд расшифровывается (кстати, последнюю версию Zend Guard, которая шифрует на zend optimizer 3.0, вроде бы ещё не декодируют)


а проверки на уровне зенда действительно легко снимаются, тут статья была.
мы говорим о проверках на пхп.
это необязательно относится к zend - можно юзать ioncube или ещё что-то
 
В любом случае можно легко поправить сорцы пхп и вся защита пойдет в трубу.
 
наверно не новость, но дезенд уже у всех есть, теперь только качество, удобный интерфейс и т.д.
 
Любая защита обходится, но большинство скриптов не стоит времени на их взлом.
 
WP
Видел я. Как они дешифруют последние версии зенда ))
Такая каша получается...Что я даже, тот человек, который когда то писал это не мог понять логики. При чём платным дезендом пользовались люди)
Кстати... В зенде есть такая фича "запрет инклуда не закоденных тем же юзверем файлов" - это решает большее количество проблем с дезендом. Т.е грубо говоря если проект большой, то декодинг какого то одного файла ни чего не даст. Нужно декодить и исправлять весь проект.
 
видел предложения по поводу расшифровки Zend, насколько актуально и как можно максимально защитить/усложнить задачу?

никак. смотрите [skip...]
Отредактировал - реклама
 
Сверху