Zend Guard. Мнимая защита. В последнее время, люди активно "защищают" свои скрипты, кодируя избранные файлы или целый проект в Zend Guard. Этими людьми движет желание, чтобы их кодом не пользовались как попало, с одной стороны, это понятно. Но с другой стороны, ими движет алчность, они не покупают Zend Guard, а качают крякнутый, чтобы потом продавать свои поделки. Расскажу, как можно просто декодировать файл, зашифрованный не последней оф версией, а взломаной. Для этого существует сервис http://showmycode.com/ В поисках закодированных файлов я наткнулся на описание скрипта подсчета переходов на http://wapes.org.ru/ Бинго, база ип как раз закодирована, скачать ее можно по этой ссылке http://wapes.org.ru/xrek/oper.zip Действительно, файл oper.php в архиве закодирован зендом, давайте его раскодируем, потому что базы ип должны быть бесплатными и свободными :) Грузим этот файл в формочку на http://showmycode.com, вводим простенькую капчу и наслаждаемся результатом <?php if ( eregi( "oper.php", $PHP_SELF ) ) { exit( ); } $oper = trim( htmlspecialchars( stripslashes( @$_GET['oper'] ) ) ); $oper = @preg_replace( "/[^0-9]/", "", $oper ); if ( $oper != "" ) { if ( !( $oper < 0 ) && !( 160 < $oper ) ) { $oper = 0; } } else { do { $ip = @$_SERVER['REMOTE_ADDR']; $ips = split( "\\.", $ip ); @$ipnum = @$ips[3] + @$ips[2] * 256 + @$ips[1] * 256 * 256 + @$ips[0] * 256 * 256 * 256; $oper = 0; $IP101 = array( 1402273792, 1402277888, 3.25123e+009, 3.58203e+009, 3.64763e+009, 2.88676e+009, 1427800064 ); $IP201 = array( 1402276863, 1402290175, 3.25123e+009, 3.58203e+009, 3.64763e+009, 2.88677e+009, 1427832831 ); .............. продолжение не пишу ?> Такой "удобный" формат записи ип придумал (скорее всего под укуркой) автор небезызвестного скрипта вапфикс. А остальные переняли и юзают до сих пор. Почему нельзя было хранить как-то так array( oper1 => array( array(start, end), array(start, end), array(start, end), ), oper2 => array( array(start, end), array(start, end), array(start, end), ) )