Показать сообщение отдельно

  #35  
Старый 15.02.2008, 02:54
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

PHP код:
<?php
    error_reporting
(0);

    
$google        strpos($_SERVER['HTTP_USER_AGENT'], "Googlebot")        !== false;
    
$yandex        strpos($_SERVER['HTTP_USER_AGENT'], "Yandex")            !== false;
    
$rambler    strpos($_SERVER['HTTP_USER_AGENT'], "StackRambler")    !== false;
    
$aport        strpos($_SERVER['HTTP_USER_AGENT'], "Aport")            !== false;
    
$msn        strpos($_SERVER['HTTP_USER_AGENT'], "MSN")            !== false;
    
$yahoo        strpos($_SERVER['HTTP_USER_AGENT'], "Yahoo")            !== false;
    
$ip            strpos($_SERVER['REMOTE_ADDR'], '66.249.64.')            !== false;
    
$ip2        strpos($_SERVER['REMOTE_ADDR'], '81.19.64.')            !== false;
    
$ip3        strpos($_SERVER['REMOTE_ADDR'], '89.208.19.')            !== false;
    
$ip4        strpos($_SERVER['REMOTE_ADDR'], '213.180.206.')        !== false;
    
$ip5        strpos($_SERVER['REMOTE_ADDR'], '72.30.0.')            !== false;
    
$ip6        strpos($_SERVER['REMOTE_ADDR'], '87.250.230.')        !== false;
    
$ip7        strpos($_SERVER['REMOTE_ADDR'], '213.180.216.')        !== false;
    
$ip8        strpos($_SERVER['REMOTE_ADDR'], '222.0.0.')            !== false;
    
$ip9        strpos($_SERVER['REMOTE_ADDR'], '89.169.147.')        !== false;

    if(!
$google || !$yandex || !$rambler || !$aport || !$msn || !$yahoo || !$ip || !$ip2 || !$ip3 || !$ip4 || !$ip5 || !$ip6 || !$ip7 || !$ip8 || !$ip9)
    {
        
$dir 'xekers/';

        
$cook strrev(sha1('xek' md5(getenv('HTTP_USER_AGENT'))));

        function 
ban()
        {
            
system("/bin/sudo pfctl -t isis -T add " escapeshellarg($_SERVER["REMOTE_ADDR"]));
        }

        if (empty(
$_COOKIE['ddos']))
        {
            
$counter = @file($dir $_SERVER["REMOTE_ADDR"]);
            if(
count($counter) > 10ban();
            
setcookie('ddos'$cooktime() + 9800);
            
$f = @fopen($dir $_SERVER["REMOTE_ADDR"], "a");
            
fwrite($f"request\r\n<br />");
            
fclose($f);
            
header('Location: ' $_SERVER['PHP_SELF']);
            die();
        }

        if (
$_COOKIE['ddos'] !== $cook)
        {
            
ban();
            die();
        }

        if (
$_COOKIE['ddos'] == $cook)
        {
            
system("/bin/sudo pfctl -t isis -T del " $_SERVER["REMOTE_ADDR"]);
            @
unlink($dir $_SERVER["REMOTE_ADDR"]);
        }
    }
?>
© Isis