/!\ aspirateur de site et anti référencement ...
21 messages
• Page 1 sur 2 • 1, 2
-

Mumuri - WRInaute passionné

- Messages: 1800
- Inscription: 3 Nov 2004
/!\ aspirateur de site et anti référencement ...
Voila, si j'écris ce post si pour signaler une possible faille de sécurité dans les anti aspirateurs de site, faille qui aurai pour conséquence de vous faire bannir volontairement un bot d'un moteur de recherche et de vous faire couler au fond du classement.
le problème
Le bannissement d'un moteur de recherche par un anti aspirateur de site peut être involontaire (mauvais paramétrage d'un script par exemple) ou volontaire. En effet, un concurrent malhonnête pourrait volontairement vous envoyer des requêtes http avec pour ip source celle d'un moteur de recherche (c'est tout à fait possible, il existe des générateurs de paquets http qui font çà), ce qui aurait pour conséquence de bannir automatiquement le bot de votre site, ce qui ferait autant de pages indexés en moins. Quant à dire que c'est peu probable, vu la concurrence qu'il y a dans le milieu du référencement, je préfère prévenir que guérir
.
la solution
Heureusement, il existe une solution simple. Elle consiste à définir une liste d'ips de confiance, incluant les ips des bots de recherche. Si l'ip de l'hote fait partie de la liste, on ne le banni pas sinon on le banni et on envoie un mail à l'administrateur.
Remarque : pour ceux qui se dirait que les aspirateurs de site pourraient intégré une technologie qui falsifierai l'ip et la mettrai dans la liste des ips de confiance, dites vous bien que quand un logiciel fait une requête avec une ip qui n'est pas la sienne, la réponse est directement envoyé à l'ip falsifié ce qui n'a aucun n'intêrets pour le leecher.
Implémentation
L'implémentation se fait en plusieurs temps, d'abord on fait un fichier antiaspi.php (source plus bas) qu'on upload sur le serveur. Ensuite, on fait un rewriting sur ce fichier de ce type.
Ce régle renvoie tous les fichiers de la forme [chiffre]anti.html vers antiaspi.php, par exemple 75864anti.html ou 6anti.html.
Ensuite, on "parsème le site web",de liens aléatoires ayant la forme définie précédemment et non visible par l'utilisateur. (il vaut mieux éviter les liens vides car les aspirateurs les détectent et ne les suivent pas)
fichier antiaspi.php
Remarque
Surveillez bien les ips envoyés dans les même de bannissement des fois qu'il manque des ips de bots (et posté les ici tant qu'on y est, je pense que j'en ai oublié pour msnbot)
Le problème est d'autant plus vicieux qu'on ne peux pas identifier le concurrent (dans le cas ou il spoofe son ip).
le problème
Le bannissement d'un moteur de recherche par un anti aspirateur de site peut être involontaire (mauvais paramétrage d'un script par exemple) ou volontaire. En effet, un concurrent malhonnête pourrait volontairement vous envoyer des requêtes http avec pour ip source celle d'un moteur de recherche (c'est tout à fait possible, il existe des générateurs de paquets http qui font çà), ce qui aurait pour conséquence de bannir automatiquement le bot de votre site, ce qui ferait autant de pages indexés en moins. Quant à dire que c'est peu probable, vu la concurrence qu'il y a dans le milieu du référencement, je préfère prévenir que guérir
la solution
Heureusement, il existe une solution simple. Elle consiste à définir une liste d'ips de confiance, incluant les ips des bots de recherche. Si l'ip de l'hote fait partie de la liste, on ne le banni pas sinon on le banni et on envoie un mail à l'administrateur.
- Code: Tout sélectionner
Si (ip_appartient_a_liste_de_confiance())
redirection_vers_l_index_du_site
sinon
bannissement_par_htaccess
mail_a_l_administrateur
affichage_d_un_message
finSi
Remarque : pour ceux qui se dirait que les aspirateurs de site pourraient intégré une technologie qui falsifierai l'ip et la mettrai dans la liste des ips de confiance, dites vous bien que quand un logiciel fait une requête avec une ip qui n'est pas la sienne, la réponse est directement envoyé à l'ip falsifié ce qui n'a aucun n'intêrets pour le leecher.
Implémentation
L'implémentation se fait en plusieurs temps, d'abord on fait un fichier antiaspi.php (source plus bas) qu'on upload sur le serveur. Ensuite, on fait un rewriting sur ce fichier de ce type.
RewriteRule ^([0-9]+)anti\.html$ antiaspi.php [L,NC,NS]
Ce régle renvoie tous les fichiers de la forme [chiffre]anti.html vers antiaspi.php, par exemple 75864anti.html ou 6anti.html.
Ensuite, on "parsème le site web",de liens aléatoires ayant la forme définie précédemment et non visible par l'utilisateur. (il vaut mieux éviter les liens vides car les aspirateurs les détectent et ne les suivent pas)
fichier antiaspi.php
- Code: Tout sélectionner
<?
// phplicense
// auteur : mumuri
// site : http://topflood.com
// pour une ip en 216.239.33.xxx, mettre 216.239.33. , attention à ne pas oublier le . final
// pour 216.239.xxx.xxx mettre 216.239.
// http://www.iplists.com/google.txt
// http://www.iplists.com/inktomi.txt
$ip = $_SERVER["REMOTE_ADDR"]; // récupére l'ip
// Remarque : pour faire des tests, vous pouvez forcer l'ip
// $ip = "66.249.239.23"; // bot
// $ip = "23.66.249.239"; // ip standard
$ipsautorisees= array(
'216.239.','66.249.','209.185.','64.68.','64.233.','216.33.', // google bot
'141.185.','169.207.','199.177.','202.160.','202.165.','202.212.5.','202.46.19.93','203.123.188.', '203.255.234.', // yahoo
'206.190.43.','207.126.239.','209.1.12.','209.1.13.','209.131.','209.191.','209.185.', '209.1.32.','209.191.',
'209.67.206.','209.73.176.', '211.14.8.240','211.169.241.21','213.216.143.','216.109.','216.136.233.164','216.145.58.219',
'216.155.', '216.198.200.123' ,'216.239.193.','216.32.237.','62.172.199.','62.27.59.245','63.163.102.182', '64.157.137.',
'64.157.138.','64.75.36.','66.163.170.' ,'66.163.174.65','66.196.101','66.196.65' ,'66.196.67.','66.196.','66.218.65.52',
'66.228.', '66.94.','68.142.', '72.30.101.','72.30.102.', '72.30.103.','72.30.104.','72.30.107.','72.30.110.','72.30.111.',
'72.30.128.', '72.30.129.','72.30.131.','72.30.132.','72.30.133.','72.30.134','72.30.135.','72.30.',
'207.46.98.', '65.54.188.' ,'207.68.146.' // msn bot
);
if(is_in_liste($ip) )
{
// ip de confiance
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://votresite.com");
exit;
} else
{
// banissement
// -------- bannir ici : script de Baltyre ------------
$htaccess="\nDeny from ".$ip;
$fp = fopen(".htaccess","a");
if (flock($fp, LOCK_EX)) {
fputs($fp,$htaccess);
flock($fp, LOCK_UN);
}
fclose($fp);
// ---------------------------------------------
// --------------- mailer -------------------
$Host = gethostbyaddr( $ip ); // Retourne le Host
$Referer = getenv("HTTP_REFERER"); // Retourne le Referer
$Date = date("F j, Y, g:i:s"); // Date du jour
$Client = getenv("HTTP_USER_AGENT");
$site = getenv("HTTP_HOST"); // récupére le nom du site , si vous en avez plusieurs
$message = "<b>Banissement d'une ip</b> \n";
$message .= "------------------- \n";
$message .= " Site : $site \n\n";
$message .= "<b> Infos sur le banni :</b> \n";
$message .= " Ip : $ip \n";
$message .= " Host : $Host \n";
$message .= " Client : $Client \n";
$message .= " Date : $Date \n";
$message .= " Référant : $Referer \n";
// envoie d'un mail au responsable : utile si par hasard un robot est passé à travers votre filtre
mail ("votreemail@votredomaine.com", "Alerte Ban: $ip - ".$Date, $message , "From: banissement@$site");
// ---------------------------------------------
// --------------- affichage -------------------
// on averti le banni ...
echo "<html><head><title>Bannissement</title></head><body><pre>";
echo "<h1>Banissement</h1>\n";
echo "L'utilisation d'aspirateur de site est proscrite sur ce site . Vous avez donc été banni\n";
// on lui fait un peu peur ;)
echo "Les informations suivantes ont été loggué et pourront faire l'objet d'une poursuite judiciaire.\n\n";
echo $message;
echo "\n\n";
// le truc à la con ... ;)
echo "Apprenez que pour flooder un site, il y a des techniques :<a href=http://topflood.free.fr/zine/base-Techniques-de-flood.php>techniques de flood</a>\n";
// dés fois que y'en qui s'amuse à afficher la source de certains sites et qu'il teste l'url
echo "Si vous pensez que c'est une erreur, veuillez en avertir le webmaster à blabla@site.com \n";
echo "</pre><a href=ban.php>ss</a></body></html>";
// ---------------------------------------------
}
function is_in_liste($ip)
{ global $ipsautorisees;
$trouve= false;
$taille = count($ipsautorisees);
$i=0;
while($i<$taille && !$trouve )
{
$pos = strpos ($ip,$ipsautorisees[$i]);
if($pos === 0 )
{
$trouve= true;
}
$i++;
}
return $trouve;
}
?>
Remarque
Surveillez bien les ips envoyés dans les même de bannissement des fois qu'il manque des ips de bots (et posté les ici tant qu'on y est, je pense que j'en ai oublié pour msnbot)
Le problème est d'autant plus vicieux qu'on ne peux pas identifier le concurrent (dans le cas ou il spoofe son ip).
Dernière édition par Mumuri le Ven Fév 24, 2006 17:11, édité 5 fois.
-

TOMHTML - WRInaute accro

- Messages: 3250
- Inscription: 25 Aoû 2004
moi j'ai fait un truc moins compliqué que toi :
j'ai d'une part un script qui détecte si l'agent utilisateur est un aspirateur (genre HTTrack), si c'est le cas c'est automatiquement redirigé vers une page du genre "truc.php?page=1" qui ne contient qu'un lien vers "$page++"
>> ça ne bouffe pas trop de bande passante et en plus ça fait bien chier le méchant copieur qui doit patienter des heures pour télécharger mon site ^^ >> et en plus il peut même pas le télécharger, puisqu'il est redirigé vers la page dont je parle au dessus
deuxiemement, j'ai fait exprès un lien "cassé". Ce lien est "caché" donc c'est quasiment impossible qu'un utilisateur clique dessus. Je loggue toutes les erreurs 404, avec IP (fuck off la cnil) agents_utilisateurs, etc...
comme ça apres je fais le tri à la fois manuellement, mais aussi si une même IP fait la même erreur dans un court laps de temps et que ce n'est pas un robot "OK" (oui car j'ai une petite liste pour vérifier, au cas où) et bien je bloque.
mais c'est un bon script ton truc, je recommande
j'ai d'une part un script qui détecte si l'agent utilisateur est un aspirateur (genre HTTrack), si c'est le cas c'est automatiquement redirigé vers une page du genre "truc.php?page=1" qui ne contient qu'un lien vers "$page++"
>> ça ne bouffe pas trop de bande passante et en plus ça fait bien chier le méchant copieur qui doit patienter des heures pour télécharger mon site ^^ >> et en plus il peut même pas le télécharger, puisqu'il est redirigé vers la page dont je parle au dessus
deuxiemement, j'ai fait exprès un lien "cassé". Ce lien est "caché" donc c'est quasiment impossible qu'un utilisateur clique dessus. Je loggue toutes les erreurs 404, avec IP (fuck off la cnil) agents_utilisateurs, etc...
comme ça apres je fais le tri à la fois manuellement, mais aussi si une même IP fait la même erreur dans un court laps de temps et que ce n'est pas un robot "OK" (oui car j'ai une petite liste pour vérifier, au cas où) et bien je bloque.
mais c'est un bon script ton truc, je recommande
-

Mumuri - WRInaute passionné

- Messages: 1800
- Inscription: 3 Nov 2004
et qu'es ce que tu fais si un gars te balance des paquets avec pour ip sources celui des bots de google et pour useragent "httrack" ?
.
un générateur de chaine numérique aléatoire pour ceux qui ont la flemme de chercher
.
---------
chaine aléatoire pour un phpBB
dans un fichier php (genre viewforum.php)
et dans le template
merci pour les 11 recos au passage
un générateur de chaine numérique aléatoire pour ceux qui ont la flemme de chercher
- Code: Tout sélectionner
$rand_str="";
for($i = 0; $i < rand(1,9); $i++) // taille aléatoire en plus ...
{
$rand_str .=rand(0, 255);
}
---------
chaine aléatoire pour un phpBB
dans un fichier php (genre viewforum.php)
- Code: Tout sélectionner
$rand_str="";
for($i = 0; $i < rand(1,9); $i++) // taille aléatoire en plus ...
{
$rand_str .=rand(0, 255);
}
$template->assign_vars(array('random' => '$rand_str '));
et dans le template
- Code: Tout sélectionner
{random}
merci pour les 11 recos au passage
-

Mumuri - WRInaute passionné

- Messages: 1800
- Inscription: 3 Nov 2004
thierry8 a écrit:Est-ce que beaucoup d'entre vous utilise un anti-apsirateur de site ?
Est-ce vraiment utile ?
Le gars qui veux pomper le site....il n'a cas le faire...
Malheur à lui si vous vous en apercevez...
disons qu'aprés c'est une question de quota de traffic suivant ton hébergement. et je pense que les gros sites doivent tous plus ou moin en utilisé (bien que n'ayant aucune preuve).
faut aussi se dire qu'un administrateur qui utilise des logiciels genre snort et qui connaissent pas bien les ips de google et compagnie pourraient les bannir à tort en voyant les logs de leurs firewalls.
-

TOMHTML - WRInaute accro

- Messages: 3250
- Inscription: 25 Aoû 2004
Mumuri a écrit:et qu'es ce que tu fais si un gars te balance des paquets avec pour ip sources celui des bots de google et pour useragent "httrack" ?.
tu aurais dû remplacer le ";)" par "
", méchant ^^Est-ce vraiment utile ?
ça dépend du site : si c'est un petit site perso ça devrait faire plaisir qu'on te copie (lol), mais quand c'est un site que tu t'es cassé le c** à réaliser, aux fruits d'années de recherches, ça fait chier de voir quelqu'un prend même pas la peine de consulter le site en ligne et le télécharge directement...
d'autant plus si c'est un plagiaire qui fait ça pour remettre ça en ligne à son compte....
- thierry8
- WRInaute accro

- Messages: 3251
- Inscription: 11 Juil 2005
Ni a t-il justement pas un moyen de connaître ce genre de plagiat ?
Mais ne pense-tu pas que si ton site plait et que si quelqu'un souhaite te le pomper il y arrivera de toute manière ?
Encore une chose par rapport aux ips et donc l'idée de Murmuri.
Si celui qui visite ton site a l'ip d'un bot, il pourra te pomper sans
problème tes pages du fait qu'il sera considéré comme un bot ?
(ca va dans les deux sens...si quelqu'un peut prendre une ip d'un bot pour
influencer ton référencement, quelqu'un pourra utiliser une ip pour pomper ton site)
Mais ne pense-tu pas que si ton site plait et que si quelqu'un souhaite te le pomper il y arrivera de toute manière ?
Encore une chose par rapport aux ips et donc l'idée de Murmuri.
Si celui qui visite ton site a l'ip d'un bot, il pourra te pomper sans
problème tes pages du fait qu'il sera considéré comme un bot ?
(ca va dans les deux sens...si quelqu'un peut prendre une ip d'un bot pour
influencer ton référencement, quelqu'un pourra utiliser une ip pour pomper ton site)
-

Mumuri - WRInaute passionné

- Messages: 1800
- Inscription: 3 Nov 2004
thierry8 a écrit:Encore une chose par rapport aux ips et donc l'idée de Murmuri.
Si celui qui visite ton site a l'ip d'un bot, il pourra te pomper sans
problème tes pages du fait qu'il sera considéré comme un bot ?
(ca va dans les deux sens...si quelqu'un peut prendre une ip d'un bot pour
influencer ton référencement, quelqu'un pourra utiliser une ip pour pomper ton site)
j'avais mis une petite remarque pour çà
Remarque : pour ceux qui se dirait que les aspirateurs de site pourraient intégré une technologie qui falsifierai l'ip et la mettrai dans la liste des ips de confiance, dites vous bien que quand un logiciel fait une requête avec une ip qui n'est pas la sienne, la réponse est directement envoyé à l'ip falsifié ce qui n'a aucun n'intêrets pour le leecher.
mort de rire l'icone "brice de nice" tom html
-

Mumuri - WRInaute passionné

- Messages: 1800
- Inscription: 3 Nov 2004
Voila toute l'explication
Tout d'abord,
- le concurrent malhonnéte envoie la requete avec l'ip de googlebot à ton site
- ton site répond à googlebot en lui renvoyant la page (le serveur de ton site renvoie la requete à l ip source contenu dans le paquet)
- googlebot renvoie un paquet a ton site pour dire qu'il n'a pas sollicité cette page.
donc au final le leecher ou le concurrent n'a rien reçu.
PS : ne fais pas attention au légende (syn spoof, syn ack et rst, c'est liée au protocole tcp et non au protocole http, j'ai pas retrouvé les archives de mes fichiers et j'ai du expliquer sur l'image que j'avais )
Tout d'abord,
- le concurrent malhonnéte envoie la requete avec l'ip de googlebot à ton site
- ton site répond à googlebot en lui renvoyant la page (le serveur de ton site renvoie la requete à l ip source contenu dans le paquet)
- googlebot renvoie un paquet a ton site pour dire qu'il n'a pas sollicité cette page.
donc au final le leecher ou le concurrent n'a rien reçu.
PS : ne fais pas attention au légende (syn spoof, syn ack et rst, c'est liée au protocole tcp et non au protocole http, j'ai pas retrouvé les archives de mes fichiers et j'ai du expliquer sur l'image que j'avais )
-

absoluteweb - WRInaute occasionnel

- Messages: 478
- Inscription: 22 Nov 2002
Autre solution :
http://www.toulouse-renaissance.net/c_o ... ateurs.htm
Le principe est d'interdire la page piégée dans robots.txt et dans la page d'accès à la page piégée (noindex, nofollow). Les bons moteurs ne suivront pas ce lien et ne seront donc pas piégés, les mauvais moteurs et les aspirateurs seront bannis.
Nicolas.
http://www.toulouse-renaissance.net/c_o ... ateurs.htm
Le principe est d'interdire la page piégée dans robots.txt et dans la page d'accès à la page piégée (noindex, nofollow). Les bons moteurs ne suivront pas ce lien et ne seront donc pas piégés, les mauvais moteurs et les aspirateurs seront bannis.
Nicolas.
-

cdpdf - WRInaute impliqué

- Messages: 953
- Inscription: 11 Mar 2003
absoluteweb a écrit:Le principe est d'interdire la page piégée dans robots.txt et dans la page d'accès à la page piégée (noindex, nofollow). Les bons moteurs ne suivront pas ce lien et ne seront donc pas piégés, les mauvais moteurs et les aspirateurs seront bannis.
C'est tres facile à contourner, car je sais que certains aspirateurs permettent de respecter le fichier robots.txt
21 messages
• Page 1 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- anti-aspirateur
- Anti aspirateur URGENT ?
- mod_rewrite et anti aspirateur
- .htaccess anti-aspirateur de site
- Script php Anti aspirateur.
- [Résolu] Pb htaccess anti-aspirateur email
- Anti aspirateur: ne pas bloquer Google
- Anti aspirateur de site : une idée
- Mon script anti-aspirateur a blacklisté googlebot.
- Script anti-aspirateur et Google (et les autres...)
- La valse des rachats de sociétés par Google en mai/juin 2007 - 06-06-2007
- Google Pack s'enrichit de 2 nouveaux logiciels gratuits - 28-03-2007
- Archive.org n'indexe plus rien depuis le 22 août 2008 ? - 19-11-2009
- Incidence du PHP sur le référencement - 04-08-2008
- Référencer un blog - 20-11-2006
- Une check-list pour bien démarrer son référencement - 21-02-2007
- Séminaire référencement avec la CCIP Délégation de Paris le 12/12/2005 - 17-10-2005
- Optimiser le nombre de mots dans les textes de liens - 03-10-2005
Consultez la description détaillée des produits ou services de Google suivants : Google Sandbox
- Synthèse du référencement Google
Cet outil vous donne un petit résumé de l'état de référencement de votre site dans Google. - Logiciel de référencement AgentWebRanking
AgentWebRanking est un logiciel professionnel qui permet d'analyser le positionnement d'un ou plusieurs sites dans plus de 300 moteurs de recherche dans le monde. Vous pouvez ainsi analyser les performances du référencement pour de nombreux mots-clés.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
