ホームページ > バックエンド開発 > PHPチュートリアル > Webshel​​l トランザクション php トロイの木馬 Webshel​​l スキャナー コード

Webshel​​l トランザクション php トロイの木馬 Webshel​​l スキャナー コード

WBOY
リリース: 2016-07-29 08:47:45
オリジナル
3138 人が閲覧しました

コードをコピーします コードは次のとおりです:


/*
+---------------------- ---------------------------------------------------- ----+
| インデックス php による
| (c) 2009 インデックス php |
-------- -------------------------------------- -------- --+
*/
/*===================== プログラム構成========== ======== ===*/
$dir='cms'; //スキャンするディレクトリを設定します
$jumpoff=false; //ファイルのチェックをスキップするように設定します
$jump='safe. php|g'; //この設定はスキップするファイルまたはフォルダーをチェックする場合に有効です $jumpoff=false
$danger='eval|cmd|passthru';//判定する危険な関数を設定しますトロイの木馬ファイルです
$suffix='php| inc';//スキャンするファイルのサフィックスを設定します
$dir_num=0;
$danger_num=0; =============== === 設定の終了=====================*/
extract (GetHttpVars() );
if ($m=="edit") 編集()
if ($check=='check')
{ $safearr =explode( "|",$jump);
$start_time=microtime($dir);
$total=$end_time-$file_num-; $dir_num;
$message= "ファイルの数: ".$file_num;
$message.= " 疑わしいファイルの数: ".$danger_num; message.= " 実行時間: ".$total;
exit();
function GetHttpVars() {//グローバル変数
$superglobs = array(
'_POST',
'_GET',
'HTTP_POST_VARS',
'HTTP_GET_VARS');
$httpvars = array() ;
foreach ($superglobs として $glob) {
if (isset($$glob) && is_array; )) {
$httpvars = $$glob;
}
if (count( $httpvars) > 0)
break;
}
return $httpvars
}
function Safe_Check($dir)//ファイルを走査する
global $danger ,$suffix ,$dir_num ,$file_num ,$danger_num;
$hand=@dir($dir) または die('フォルダーが存在しません') ; read() )
{
$filename=$dir.'/'.$file ;
if (!$jumpoff) {
if(Jump($filename))
}
if(@is_dir($filename) && $file != '.' && $file!= '..'&& $ file!='./..')
{ $dir_num++($filename)
}
if (preg_match_all; .($suffix)/i",$filename,$out))
{
$str='';
$fp = @fopen($filename,'r')or die('許可なし');
while (!feof($fp))
{
$str .= fgets($fp ,1024);
}
fclose($fp)
if( preg_match_all ("/($danger)[rnt]{0,} ([[(])/i",$str,$out))
{
echo "不審なファイル: {$filename}

削除
";
$danger_num++;
}
}
$file_num++;
}
}
function Edit()//疑わしいファイルを表示
{
global $ファイル名;
$ファイル名 = str_replace("..","",$ ファイル名);
$コンテンツ = ""; ($file,"r") または die('許可なし');
$content = fread($fp,filesize($file));
$content = htmlspecialchars($content);
}
echo "