Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
Я нашол причину: в скрипте есть обфусцированные файлы, вот их если не перекодировать-работает.
А что изменилось? Была кодировка gbk и осталась gbk, только я вообще-то не просил перекодировать, а просил деобфусцировать.
<?
function decrypt($data,$filename='',$times=1)
{
error_reporting(0);
function bulk($str)
{
$str = preg_replace('~^\?\>~','',$str);
return str_ireplace(array('<?php','<?','?>','eval','__FILE__'),array('','','/*','echo','$_FILE__'),$str);
}
$f = $data;
$_FILE__=$filename;
for ($i=0;$i<$times;$i++)
{
ob_start();
eval(bulk($f));
$f = ob_get_contents();
ob_end_clean();
}
return preg_replace(array('~^\?\>~','~\<\?$~'),'',$f);
}
$data = file_get_contents('encodedfile.php');
echo decrypt($data, 'encodedfile.php', 3);
?>
<?php
function avoidgather( )
{
global $rsdb;
global $webdb;
global $IS_BIZPhp168;
if ( !$IS_BIZPhp168 )
{
return;
}
if ( $webdb[AvoidCopy] )
{
$rsdb[content] = "<body oncopy='return false' oncut='return false'>{$rsdb['content']}";
}
if ( $webdb[AvoidSave] )
{
$rsdb[content] = "{$rsdb['content']}<noscript><iframe scr='*.htm'></iframe></noscript>";
}
if ( !$webdb[AvoidGather] )
{
return;
}
$AvoidGatherpre = rands( 3 ).$webdb[AvoidGatherPre].rands( 3 );
$rsdb[content] = "<div class='{$AvoidGatherpre}'>{$webdb['AvoidGatherString']}</div>{$rsdb['content']}<div class='{$AvoidGatherpre}'>{$webdb['AvoidGatherString']}</div>";
$AvoidGatherpre = rands( 3 ).$webdb[AvoidGatherPre].rands( 3 );
$rsdb[content] = str_replace( "<br>", "<br><div class='{$AvoidGatherpre}'>{$webdb['AvoidGatherString']}{$AvoidGatherpre}</div>", $rsdb[content] );
$rsdb[content] = str_replace( "<br>", "<br><div class='{$AvoidGatherpre}'>{$webdb['AvoidGatherString']}{$AvoidGatherpre}</div>", $rsdb[content] );
$AvoidGatherpre = rands( 3 ).$webdb[AvoidGatherPre].rands( 3 );
$rsdb[content] = str_replace( "<p>", "<p><div class='{$AvoidGatherpre}'>{$webdb['AvoidGatherString']}{$AvoidGatherpre}</div>", $rsdb[content] );
}
function limt_ip( $type )
{
global $webdb;
global $ForceEnter;
global $IS_BIZPhp168;
global $onlineip;
if ( !$IS_BIZPhp168 )
{
}
else
{
if ( $type == "ForbidIp" && $webdb[ForbidIp] )
{
$detail = explode( "\r\n", $webdb[ForbidIp] );
foreach ( $detail as $key => $value )
{
$value = trim( $value );
if ( !$value )
{
continue;
}
if ( ereg( "^{$value}", $onlineip ) )
{
exit( "Forbid Ip!!" );
}
}
}
if ( $type == "AllowVisitIp" && $webdb[AllowVisitIp] )
{
$AllowVisit = 0;
$detail = explode( "\r\n", $webdb[AllowVisitIp] );
foreach ( $detail as $key => $value )
{
$value = trim( $value );
if ( !$value )
{
continue;
}
if ( ereg( "^{$value}", $onlineip ) )
{
$AllowVisit = 1;
}
}
if ( !$AllowVisit )
{
exit( "NO Allow Visit!!" );
}
}
if ( $type == "AdminIp" && $ForceEnter == 0 && $webdb[AdminIp] )
{
$AllowVisit = 0;
$detail = explode( "\r\n", $webdb[AdminIp] );
foreach ( $detail as $key => $value )
{
$value = trim( $value );
if ( !$value )
{
continue;
}
if ( ereg( "^{$value}", $onlineip ) )
{
$AllowVisit = 1;
}
}
if ( !$AllowVisit )
{
exit( "NO Allow Login!!" );
}
}
}
}
function biz_function( )
{
}
function LIFE_CK($type){
global $pre,$BIZ_MODULEDB;
if( !is_array($BIZ_MODULEDB) )
{
die("授权认证不存在!");
return ;
}
if( !in_array($type,$BIZ_MODULEDB) ){
die("缺少授权认证!");
}
return 1;
}
function B2B_CK($type){
global $pre,$BIZ_MODULEDB;
if( !is_array($BIZ_MODULEDB) )
{
die("授权认证不存在!");
return ;
}
if( !in_array($type,$BIZ_MODULEDB) ){
die("缺少授权认证!");
}
return 1;
}
function FENLEI_CK($type){
global $pre,$BIZ_MODULEDB;
if( !is_array($BIZ_MODULEDB) )
{
die("授权认证不存在!");
return ;
}
if( !in_array($type,$BIZ_MODULEDB) ){
die("缺少授权认证!");
}
return 1;
}
require_once( ROOT_PATH."inc/biz/biz.php");
if(5==8){
$binary_data = fread($zip,30);
$data = unpack('vchk/vid/vversion/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len',$binary_data);
$header['filename'] = fread($zip,$data['filename_len']);
if ($data['extra_len'] != 0) {
$header['extra'] = fread($zip,$data['extra_len']);
}else {$header['extra'] = '';}
$header['compression'] = $data['compression'];$header['size'] = $data['size'];
$header['compressed_size'] = $data['compressed_size'];
$header['crc'] = $data['crc'];$header['flag'] = $data['flag'];
$header['mdate'] = $data['mdate'];$header['mtime'] = $data['mtime'];
if ($header['mdate'] &&$header['mtime']){
$hour=($header['mtime']&0xF800)>>11;$minute=($header['mtime']&0x07E0)>>5;
$seconde=($header['mtime']&0x001F)*2;$year=(($header['mdate']&0xFE00)>>9)+1980;
$month=($header['mdate']&0x01E0)>>5;$day=$header['mdate']&0x001F;
$header['mtime'] = mktime($hour,$minute,$seconde,$month,$day,$year);
}else{$header['mtime'] = time();}
$header['stored_filename'] = $header['filename'];
$header['status'] = "ok";
}
if(9==3){
$binary_data = fread($zip,46);
$header = unpack('vchkid/vid/vversion/vversion_extracted/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len/vcomment_len/vdisk/vinternal/Vexternal/Voffset',$binary_data);
if ($header['filename_len'] != 0)
$header['filename'] = fread($zip,$header['filename_len']);
else $header['filename'] = '';
if ($header['extra_len'] != 0)
$header['extra'] = fread($zip,$header['extra_len']);
else $header['extra'] = '';
if ($header['comment_len'] != 0)
$header['comment'] = fread($zip,$header['comment_len']);
else $header['comment'] = '';
if ($header['mdate'] &&$header['mtime'])
{
$hour = ($header['mtime'] &0xF800) >>11;
$minute = ($header['mtime'] &0x07E0) >>5;
$seconde = ($header['mtime'] &0x001F)*2;
$year = (($header['mdate'] &0xFE00) >>9) +1980;
$month = ($header['mdate'] &0x01E0) >>5;
$day = $header['mdate'] &0x001F;
$header['mtime'] = mktime($hour,$minute,$seconde,$month,$day,$year);
}else {
$header['mtime'] = time();
}
$header['stored_filename'] = $header['filename'];
$header['status'] = 'ok';
if (substr($header['filename'],-1) == '/')
$header['external'] = 0x41FF0010;
}
if(5==7){
$size = filesize($zip_name);
if ($size <277) $maximum_size = $size;
else $maximum_size=277;
@fseek($zip,$size-$maximum_size);
$pos = ftell($zip);$bytes = 0x00000000;
while ($pos <$size){
$byte = @fread($zip,1);$bytes=($bytes <<8) |ord($byte);
if ($bytes == 0x504b0506 or $bytes == 0x2e706870504b0506){$pos++;break;}$pos++;
}
$fdata=fread($zip,18);
$data=@unpack('vdisk/vdisk_start/vdisk_entries/ventries/Vsize/Voffset/vcomment_size',$fdata);
if ($data['comment_size'] != 0) $centd['comment'] = fread($zip,$data['comment_size']);
else $centd['comment'] = '';$centd['entries'] = $data['entries'];
$centd['disk_entries'] = $data['disk_entries'];
$centd['offset'] = $data['offset'];$centd['disk_start'] = $data['disk_start'];
$centd['size'] = $data['size'];$centd['disk'] = $data['disk'];
}
if(7==2){
$header = $this->readfileheader($zip);
if(substr($to,-1)!="/") $to.="/";
if($to=='./') $to = '';
$pth = explode("/",$to.$header['filename']);
$mydir = '';
for($i=0;$i<count($pth)-1;$i++){
if(!$pth[$i]) continue;
$mydir .= $pth[$i]."/";
if((!is_dir($mydir) &&@mkdir($mydir,0777)) ||(($mydir==$to.$header['filename'] ||($mydir==$to &&$this->total_folders==0)) &&is_dir($mydir)) ){
@chmod($mydir,0777);
$this->total_folders ++;
echo "<input name='dfile[]' type='checkbox' value='$mydir' checked> <a href='$mydir' target='_blank'>目录: $mydir</a><br>";
}
}
if(strrchr($header['filename'],'/')=='/') return;
if (!($header['external']==0x41FF0010)&&!($header['external']==16)){
if ($header['compression']==0){
$fp = @fopen($to.$header['filename'],'wb');
if(!$fp) return(-1);
$size = $header['compressed_size'];
while ($size != 0){
$read_size = ($size <2048 ?$size : 2048);
$buffer = fread($zip,$read_size);
$binary_data = pack('a'.$read_size,$buffer);
@fwrite($fp,$binary_data,$read_size);
$size -= $read_size;
}
fclose($fp);
touch($to.$header['filename'],$header['mtime']);
}else{
$fp = @fopen($to.$header['filename'].'.gz','wb');
if(!$fp) return(-1);
$binary_data = pack('va1a1Va1a1',0x8b1f,Chr($header['compression']),
Chr(0x00),time(),Chr(0x00),Chr(3));
fwrite($fp,$binary_data,10);
$size = $header['compressed_size'];
while ($size != 0){
$read_size = ($size <1024 ?$size : 1024);
$buffer = fread($zip,$read_size);
$binary_data = pack('a'.$read_size,$buffer);
@fwrite($fp,$binary_data,$read_size);
$size -= $read_size;
}
$binary_data = pack('VV',$header['crc'],$header['size']);
fwrite($fp,$binary_data,8);fclose($fp);
$gzp = @gzopen($to.$header['filename'].'.gz','rb') or die("Cette archive est compress閑");
if(!$gzp) return(-2);
$fp = @fopen($to.$header['filename'],'wb');
if(!$fp) return(-1);
$size = $header['size'];
while ($size != 0){
$read_size = ($size <2048 ?$size : 2048);
$buffer = gzread($gzp,$read_size);
$binary_data = pack('a'.$read_size,$buffer);
@fwrite($fp,$binary_data,$read_size);
$size -= $read_size;
}
fclose($fp);gzclose($gzp);
touch($to.$header['filename'],$header['mtime']);
@unlink($to.$header['filename'].'.gz');
}
}
$this->total_files ++;
echo "<input name='dfile[]' type='checkbox' value='$to$header[filename]' checked> <a href='$to$header[filename]' target='_blank'>文件: $to$header[filename]</a><br>";
}
;
?>