Просьба объяснить работу php функции?

Доброе время суток. Просьба объяснить как работает данная функция, ибо знать надо, а в php не силен... Заранее большое спасибо.

До
eval(str_rot13('shapgvba purpx_sbbgre(){$y=\'<n uers="uggc://jjj.serfuwbbzyngrzcyngrf.pbz/" gvgyr="wbbzyn 1.7 grzcyngrf" gnetrg="_oynax">Wbbzyn 1.7 Grzcyngrf</n>\';$s=qveanzr(__SVYR__).\'/vaqrk.cuc\';$sq=sbcra($s,\'e\');$p=sernq($sq,svyrfvmr($s));spybfr($sq);vs(fgecbf($p, $y)==0){rpub \'Gur grzcyngr jvyy oernx vs nhgube yvax vf erzbirq.\';qvr;}}purpx_sbbgre();'));


После расшифровки str_rot13:
'function check_footer(){$l=\'<a href="http://www.freshjoomlatemplates.com/" title="joomla 1.7 templates" target="_blank">Joomla 1.7 Templates</a>\';$f=dirname(__FILE__).\'/index.php\';$fd=fopen($f,\'r\');$c=fread($fd,filesize($f));fclose($fd);if(strpos($c, $l)==0){echo \'The template will break if author link is removed.\';die;}}check_footer();'
  • Вопрос задан
  • 2658 просмотров
Решения вопроса 1
@Krakozebl
Если более подробно то:

1. запускается str_rot13 для деобфускации белиберды (www.php.su/str_rot13)
2. результат декодирования передается в функцию eval(), которая выполняет строку как php код.
3. В этом коде php открывается файл index.php на чтение и ищется подстрока с текстом расположенным в переменной $l (по сути копирайт).
4. Если не найдено, то "а та та" и капут (выход/завершение работы с помощью die()).
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Remmi
@Remmi
Функция check_footer() проверяет шаблон на наличие авторской ссылки внизу страницы.

Конкретнее, она ищет такой участок в коде страницы:
<a href="http://www.freshjoomlatemplates.com/" title="joomla 1.7 templates" target="_blank">Joomla 1.7 Templates</a>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
23 апр. 2024, в 13:19
15000 руб./за проект
23 апр. 2024, в 13:17
2000 руб./за проект