// script de détection - script d'appel en fin
='$ipdecimal'";
$resultat=mysql_query($requete);
$ligne=mysql_num_rows($resultat);
// echo "ligne ".$ligne;
if ($ligne>0)
{
// adresse déjà bloquée
// echo "adresse bloquée";
//include('http://www.ybet.be/copie.htm');
header("HTTP/1.1 403 Forbidden");
exit();
// die(content="3");
}
// fin de vérification si bloqué.
$host=ADDSLASHES(gethostbyaddr($_SERVER['REMOTE_ADDR']));
$filename=ADDSLASHES($_SERVER["SCRIPT_FILENAME"]);
$page=strstr($filename,"/www/");
$site=STR_REPLACE($page,"",$filename);
$site=STR_REPLACE("/home/","",$site);
$page1=STR_REPLACE("/www/","",$page);
$page=$_SERVER['REQUEST_URI'];
// page reprend maintenant les paramètres également
//LIST($site,$page)=explode("wwww/",$filename,2);
//echo $site."
".$page;
if (isset ($_SERVER["HTTP_REFERER"]))
{
$precedent=mysql_real_escape_string($_SERVER["HTTP_REFERER"]);
}
else
{
$precedent="Direct";
}
$user_agent=mysql_real_escape_string($_SERVER["HTTP_USER_AGENT"]);
// echo $user_agent;
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$x_forward = ADDSLASHES($_SERVER['HTTP_X_FORWARDED_FOR']);
}
else
{
$x_forward='';
}
// début supression copieurs
if (strpos(STRTOLOWER($user_agent),"httrack")!==false)
{
// httrack détecté
header("HTTP/1.1 403 Forbidden");
exit();
}elseif (strpos(STRTOLOWER($user_agent),"webdav")!==false)
{
header("HTTP/1.1 403 Forbidden");
exit();
}
elseif (empty($user_agent))
{
echo ('Désolé, notre système a détecté un problème dans votre navigateur');
exit();
}
elseif (strpos(STRTOLOWER($user_agent),"iisbot")!==false)
{
// Free download manager
header("HTTP/1.1 403 Forbidden");
exit();
}
elseif (strpos(STRTOLOWER($user_agent),"ia_archiver")!==false)
{
header("HTTP/1.1 403 Forbidden");
exit();
}
elseif (empty($host))
{
header("HTTP/1.1 403 Forbidden");
exit();
}
// fin suppression par HOST
if (strpos(STRTOLOWER($precedent),"best-seo")!==false)
{
die('');
} elseif (strpos(STRTOLOWER($precedent),"semalt")!==false)
{
die('');
} elseif (strpos(STRTOLOWER($precedent),"buttons-for-website")!==false)
{
die('');
} elseif (strpos(STRTOLOWER($precedent),"100dollars")!==false)
{
// supprescion de semalt
die('');
}
// fin suppression copieurs
include ('start.php');
// détection de Googleboot, ip = X.X.X.X, host=crawl-X-X-X-X.googlebot.com user_agent contient http://www.google.com/bot.html , plage d'adresses IP
$depart="crawl-".$tableau['0']."-".$tableau['1']."-".$tableau['2']."-".$tableau['3'].".googlebot.com";
if ($host=="crawl-".$tableau['0']."-".$tableau['1']."-".$tableau['2']."-".$tableau['3'].".googlebot.com")
{
// Google
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
} elseif ($host=="msnbot-".$tableau['0']."-".$tableau['1']."-".$tableau['2']."-".$tableau['3'].".search.msn.com")
{ // msn
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif (strpos($host,".voilabot.orange.fr")!==false)
{
// voilabot
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif (($ipdecimal>=1123631104)AND($ipdecimal<=1123639295))
{
//Mediapartners-Google
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif (($ipdecimal>=2637627392)AND($ipdecimal<=2637692927))
{
//bing boot 157.55.0.0 - 157.55.255.255
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif (($ipdecimal>=3488735232)AND($ipdecimal<=3488739327))
{
//archive.org 207.241.224.0 - 207.241.239.255
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif (($ipdecimal>=1152679936)AND($ipdecimal<=1152712703))
{
//yahoo 68.180.128.0 - 68.180.255.255
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif (($ipdecimal>=1653080064)AND($ipdecimal<=1653342207))
{
//yahoo 98.136.0.0 - 98.139.255.255
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif ($ipdecimal==1255204963)
{
//dmoz 74.208.232.99
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif ($ipdecimal==1255191758)
{
//dmoz 74.208.180.206
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
elseif ($ipdecimal==3484204839)
{
//dmoz 207.172.191.39
$requete="INSERT ip_robot SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
else
{
$requete="INSERT ip_visiteur SET ip='$ip',ipdecimal='$ipdecimal',host='$host',filename='$page',site='$site',precedent='$precedent',user_agent='$user_agent',x_forward='$x_forward'";
}
$resultat=mysql_query($requete);
// $erreur1=mysql_error();
// print($erreur1);
// début suppression paramètres
// $page donne / + nom_page
// $page1 donne nom_page (attention à index.php)
// on commence par index.php
$page=STR_replace("/","",$page);
if ($page1=="index.php")
{
// page entrée
$page1="";
}
// fin suppression paramètres
// début suppression paramètres
// $page donne / + nom_page
// $page1 donne nom_page (attention à index.php)
// on commence par index.php
date_default_timezone_set('Europe/Brussels');
include (start.php');
$requete="select ip from ip_visiteur WHERE ip='$ip' order by uid DESC limit 0,4";
$resultat=mysql_query($requete);
$ligne=mysql_num_rows($resultat);
IF ($ligne>=3)
{
$valeur1=0;
$adresse=array();
$stamp=array();
$requete="select * from ip_visiteur WHERE ip='$ip' order by uid DESC limit 0,3";
$resultat=mysql_query($requete);
while ($tableau=mysql_fetch_array($resultat))
{
$adresse[$valeur1]=$tableau['filename'];
$stamp[$valeur1]= strtotime($tableau['date_heure']);
$valeur1=$valeur1+1;
}
if(count(array_unique($adresse)) == $valeur1)
{
// toutes des pages différentes: copieurs? on analyse les délais.
// echo "toutes des pages différentes";
if ($stamp[0]-$stamp[2]<=10)
{
// 3 pages en moins de 10 secondes: on bloque
$bloque="O";
include ('start.php');
$requete="INSERT ip_bloque SET ip='$ip',ipdecimal='$ipdecimal',ipdecimal_min='$ipdecimal',ipdecimal_max='$ipdecimal',bloque='$bloque'";
$resultat=mysql_query($requete);
header("HTTP/1.1 403 Forbidden");
exit();
}
}
}
?>
// script d'appel
$adresse_reel)
{
// on interdit l'accès
include ('ip.php');
header("HTTP/1.1 403 Forbidden");
exit();
}
include ('ip.php');
?>