Skocz do zawartości

Wirusy htmlowe


shad

Rekomendowane odpowiedzi

Witam, ponieważ w piątek miałem wjazd na jeden z serwerów napisałem narzędzie do wykrywania poru kodów wirusów html.

Niestety suport niektórych serwerowni umywają ręce i bełkot marketingowy na temat chmodów, haseł itd. Przeglądanie xxx tysiecy plików zajmujących xxxx MB trochę by zajęło

To proszę oto narzędzie które wyszukuje pliki php, html, js i stara się wykryć czy nie ma podejrzanej treści. Może się komuś przyda:

<?php

$start_dir='../';
session_start();

if (!is_numeric($dir_idx)){
	if (isset($_SESSION['dir_idx'])){
		$dir_idx=$_SESSION['dir_idx'];
	} else {
		$dir_idx=0;
	};
};
$_SESSION['dir_idx']=$dir_idx;

if (!isset($dir_array)){
	if (isset($_SESSION['dir_array'])){
		$dir_array=$_SESSION['dir_array'];
	} else {
		$d=@dir($start_dir);
		if (is_object($d)){
			$dir_array=array();
			while($name=$d->read()) {
				$dir_array[]=$name;
			}
			$d->close();
			sort($dir_array);
	};
	};
};

$_SESSION['dir_array']=$dir_array;

$dir_name=$start_dir.$dir_array[$dir_idx].'/';

_fix($dir_name);


#----------------------------------------------------
#
#----------------------------------------------------
function _fix($dir_name,$poxiom=0,$max_poziom=3){

$file_ext='.html';
$file_ext2='.htm';
$file_ext3='.css';
$file_ext4='.js';
$file_ext5='.php';
$file_ext6='.inc';
$file_ext7='.tpl';
$file_ext8='.txt';
$file_ext9='.htx';

$test1a='JavaScript';
$test1b='d=Array(';
$test1c='eval(h)';

$test2a='<iframe src=';
$test2b='width=1';
$test2c='height=1';
$test2d='visibility: hidden';

$test3a="document.write('<iframe ";
$test3b='name="webresource_1"';
$test3c='control.php';

$test4a="document.write('<iframe";
$test4b='7speed.info"';
$test4c='display:none';

$test5a="<iframe name=";
$test5b='analystic.org';
$test5c='display:none';

$test6a="frameset rows";
$test6b='analystic.org';
$test6c='</frameset>';


echo "Start: $dir_name<br>";	
$d=@dir($dir_name);
if (is_object($d)){
while($name=$d->read()){
if ($name!='.' AND $name!='..' AND $name!=''){
	$curr=$dir_name.$name;
	if (is_file($curr) AND (
		stripos($name,$file_ext)!==false OR stripos($name,$file_ext2)!==false OR stripos($name,$file_ext3)!==false OR stripos($name,$file_ext4)!==false
		OR stripos($name,$file_ext5)!==false OR stripos($name,$file_ext6)!==false OR stripos($name,$file_ext7)!==false OR stripos($name,$file_ext8)!==false OR stripos($name,$file_ext9)!==false)
	){
			#echo ("read: $curr<br>");
			$index=file_get_contents($curr);
			if (stripos($index,$test1a)!==false AND stripos($index,$test1b)!==false AND stripos($index,$test1c)!==false){
					echo "<h3 style='color:#FF0000'>Find Virus ? - eval : $curr</h3>";
				} else
			if (stripos($index,$test2a)!==false AND stripos($index,$test2b)!==false AND stripos($index,$test2c)!==false AND stripos($index,$test_2d)!==false){
					echo "<h3 style='color:#FF0000'>Find Virus ? - iframe : $curr</h3>";
				} else
			if (stripos($index,$test3a)!==false AND stripos($index,$test3b)!==false AND stripos($index,$test3c)!==false){
					echo "<h3 style='color:#FF0000'>Find Virus ? - control.php : $curr</h3>";
				} else 
			if (stripos($index,$test4a)!==false AND stripos($index,$test4b)!==false AND stripos($index,$test4c)!==false){
					echo "<h3 style='color:#FF0000'>Find Virus ? - 7speed.info : $curr</h3>";
				} else 
			if (stripos($index,$test5a)!==false AND stripos($index,$test5b)!==false AND stripos($index,$test5c)!==false){
					echo "<h3 style='color:#FF0000'>Find Virus ? - analystic.org - iframe: $curr</h3>";
				} else 
			if (stripos($index,$test6a)!==false AND stripos($index,$test6b)!==false AND stripos($index,$test6c)!==false){
					echo "<h3 style='color:#FF0000'>Find Virus ? - analystic.org - frameset : $curr</h3>";
				}
		} elseif (is_dir($curr)){
			$poxiom++;
			_fix($curr.'/',$poxiom,$max_poziom);
		}
}
}
$d->close();
};
}

session_write_close();
?>

Aplikacje internetowe, systemy wspomagające SEO, programy pod Windows i Linux, info na https://shad.net.pl - dopisz się do Katalogu Firm

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności