AreaS Web Sitenizdeki Zararlı Olabilcek Dosyaları Bulma

Konu sahibi son olarak 2399 gün önce görüldü
Tara.php Ne işe Yarar ?

Açıklama

Sitenizdeki belirttiğiniz dizindeki dosyaları tarayarak içerisinde belirttiğim parametleri karşılaştırma yapar ve sizlere zararlı olabilcek dosyaları gösterir. Bu araç ın hem boyutu küçük hemde kullanımı basit olucak şekilde ayarladım. Tek kendi sitenizde değil sızdığınız sitede Hacklink yapacaksanız diyer Hackerların shellerini tespit edip silmek içinde kullanabilirsiniz.

KULLANIMI :


Altta verdiğim php kodlarını Tara.php olarak ismini kaydedin ve sitenizin ana dizinini akabindeki textbox da belirtin. Taramaya Basla Butonuna basıp sayfanın tamamen yüklenmesini bekleyin size zararlı olabilcek dosyaları ve dosyadaki zararlı olabilcek bulduğu kodları göstericektir.

Kod :

<php
/************************************

Zararli yazilim bulucu By AreaS

************************************/
error_reporting(E_ERROR);
ini_set('max_execution_time',20000);
ini_set('memory_limit','512M');
header("content-Type: text/html; charset=gb2312");

$matches = array(
'/function\_exists\s*\(\s*[\'|"](popen|exec|proc\_open|system|passthru)+[\'|"]\s*\)/i',
'/fopo/i',
'/(exec|shell\_exec|system|passthru)+\s*\(\s*\$\_(\w+)\[(.*)\]\s*\)/i',
'/mka/i',
'/b0ru70/i',
'/base64/i',
'/UeXploiT/i',
'/((udp|tcp)\:\/\/(.*)\;)+/i',
'/preg\_replace\s*\((.*)\/e(.*)\,\s*\$\_(.*)\,(.*)\)/i',
'/preg\_replace\s*\((.*)\(base64\_decode\(\$/i',
'/preg\_replace\s*\((.*)\(@eval\(\$/i',
'/(eval|assert|include|require|include\_once|require\_once)+\s*\(\s*(base64\_decode|str\_rot13|gz(\w+)|file\_(\w+)\_contents|(.*)php\:\/\/input)+/i',
'/(eval|assert|include|require|include\_once|require\_once|array\_map|array\_walk)+\s*\(\s*\$\_(GET|POST|REQUEST|COOKIE|SERVER|SESSION)+\[(.*)\]\s*\)/i',
'/eval\s*\(\s*\(\s*\$\$(\w+)/i',
'/(include|require|include\_once|require\_once)+\s*\(\s*[\'|"](\w+)\.(jpg|gif|ico|bmp|png|txt|zip|rar|htm|css|js)+[\'|"]\s*\)/i',
'/\$\_(\w+)(.*)(eval|assert|include|require|include\_once|require\_once)+\s*\(\s*\$(\w+)\s*\)/i',
'/\(\s*\$\_FILES\[(.*)\]\[(.*)\]\s*\,\s*\$\_(GET|POST|REQUEST|FILES)+\[(.*)\]\[(.*)\]\s*\)/i',
'/(fopen|fwrite|fputs|file\_put\_contents)+\s*\((.*)\$\_(GET|POST|REQUEST|COOKIE|SERVER)+\[(.*)\](.*)\)/i',
'/echo\s*curl\_exec\s*\(\s*\$(\w+)\s*\)/i',
'/new com\s*\(\s*[\'|"]shell(.*)[\'|"]\s*\)/i',
'/\$(.*)\s*\((.*)\/e(.*)\,\s*\$\_(.*)\,(.*)\)/i',
'/\$\_\=(.*)\$\_/i',
'/\$\_(GET|POST|REQUEST|COOKIE|SERVER)+\[(.*)\]\(\s*\$(.*)\)/i',
'/\$(\w+)\s*\(\s*\$\_(GET|POST|REQUEST|COOKIE|SERVER)+\[(.*)\]\s*\)/i',
'/\$(\w+)\s*\(\s*\$\{(.*)\}/i',
'/\$(\w+)\s*\(\s*chr\(\d+\)/i'
);

function antivirus($dir,$exs,$matches) {
if(($handle = @opendir($dir)) == NULL) return false;
while(false !== ($name = readdir($handle))) {
if($name == '.' || $name == '..') continue;
$path = $dir.$name;
if(is_dir($path)) {
//chmod($path,0777);/*主è¦é’ˆå¯¹ä¸€äº›0111的目录*/
if(is_readable($path)) antivirus($path.'/',$exs,$matches);
} elseif(strpos($name,';') > -1 || strpos($name,'%00') > -1 || strpos($name,'/') > -1) {
echo 'ç‰¹å¾ <input type="text" style="width:218px;" value="è§£ææ¼æ´"> '.$path.'<div></div>'; flush(); ob_flush();
} else {
if(!preg_match($exs,$name)) continue;
if(filesize($path) > 10000000) continue;
$fp = fopen($path,'r');
$code = fread($fp,filesize($path));
fclose($fp);
if(empty($code)) continue;
foreach($matches as $matche) {
$array = array();
preg_match($matche,$code,$array);
if(!$array) continue;
if(strpos($array[0],"\x24\x74\x68\x69\x73\x2d\x3e")) continue;
$len = strlen($array[0]);
if($len > 6 && $len < 200) {
echo 'ç‰¹å¾ <input type="text" style="width:218px;" value="'.htmlspecialchars($array[0]).'"> '.$path.'<div></div>';
flush(); ob_flush(); break;
}
}
unset($code,$array);
}
}
closedir($handle);
return true;
}

function strdir($str) { return str_replace(array('\\','//','//'),array('/','/','/'),chop($str)); }

echo '<form method="POST">';
echo '路径: <input type="text" name="dir" value="'.($_POST['dir'] ? strdir($_POST['dir'].'/') : strdir($_SERVER['********_ROOT'].'/')).'" style="width:398px;"><div></div>';
echo 'åç¼€: <input type="text" name="exs" value="'.($_POST['exs'] ? $_POST['exs'] : '.php|.inc|.phtml').'" style="width:398px;"><div></div>';
echo 'æ“作: <input type="submit" style="width:80px;" value="Taramaya Basla"><div></div>';
echo '</form>';

if(file_exists($_POST['dir']) && $_POST['exs']) {
$dir = strdir($_POST['dir
 
Son düzenleme:
  • Beğen
Tepkiler: S4S
Geri