On en finit plus de trouver des astuces aujourd’hui pour spammer en masse sur le Web. Un tas de petites techniques (des coups en quelque sorte) existent et Google analytics en particulier fait les frais souvent d’attaques généralisées. Fin d’année 2016, à l’occasion des élections américaines, vous avez peut-être vu fleurir ce qui semblait un spam referrer assez costaud (et parfois très pénible) invitant à voter pour Donald Trump. L’opération s’est d’ailleurs accentuée après même son élection. Retour sur le petit stratagème et la manière de lutter contre ces spammeurs. Armez-vous de votre console Google Analytics.
Mais d’abord, le spam referrer, c’est quoi ? Petite définition
Il s’agit d’envoyer des requêtes automatiques vers un site Internet afin de promouvoir un autre site perçu comme « référent ». C’est-à-dire donner l’illusion aux webmasters et analystes du trafic l’impression de bénéficier d’un lien naturel apportant du trafic. Ces derniers cliquant dessus apportent un trafic involontaire permettant d’améliorer le positionnement de ces sites. C’est une technique proscrite que Google s’efforce de supprimer mais qui sévit toujours à l’heure actuelle y compris sur des outils d’analyse comme Piwik. On a coutume de désigner deux types de spams referrer :
Le Ghost referrer Spam qui consiste simplement au black Hat de truquer les statistiques en utilisant le protocole de mesure de Google Analytics (l’ID de tracking dont nous détaillons ici la mise en place). En truquant ces statistiques par des referrals qui n’ont aucun sens comme « Vote for Trump » ;), vous voyez vos statistiques gonfler mais sans pour autant que la (les) visite(s) soi(en)t effective(s). Comme exemples célèbres : o-o-6-o-o.com ou l’horrible floatting-share-buttons.com.
Les crawler referer spam quant à eux sont de vrais robots qui se baladent sur votre site et vont de page en page : sessions, durée de visite, taux de rebond explosé, tout cela devient faussé et augmente arbitrairement les statistiques. On pense aux « semalt » et autres « anticrawlers.org » par exemple.
Plusieurs raisons motivent ce type de pratique du referer spam
Le referer spam — parfois appelé referrer spam ou spam de référence — désigne une stratégie automatisée utilisée pour faire apparaître des domaines tiers dans les rapports de trafic (notamment dans Google Analytics, Matomo, Piwik ou AWStats), dans l’espoir que l’administrateur du site cible clique sur ces sources suspectes. Cette méthode, bien qu’ancienne, continue d’évoluer dans sa forme et ses objectifs, souvent à la croisée du black hat SEO, du hacking, et du marketing frauduleux.
Les motivations derrière le referer spam sont multiples, et s’appuient souvent sur une automatisation massive à travers des bots ou l’exploitation directe des APIs de tracking (comme le Measurement Protocol de Google). Voici les principales :
- Inciter à des clics par curiosité : qui n’a jamais cliqué, par erreur ou curiosité, sur un domaine inconnu aperçu dans son tableau de bord Analytics ? L’espoir du spammeur est précisément de déclencher un clic vers un site douteux, et donc du trafic « humain » généré de manière détournée ;
- Vendre des produits ou services douteux : de nombreux domaines spammés renvoient vers des pages de vente déguisées. Qu’il s’agisse de services SEO low-cost, de solutions de crypto douteuses ou de fausses extensions WordPress, le but est de monétiser un trafic détourné ;
- Piéger l’utilisateur avec du contenu malveillant : certaines URL de referer spam sont conçues pour injecter du JavaScript, héberger du phishing, voire déployer des malwares à l’ouverture de la page. Ces tactiques relèvent de la cybercriminalité pure ;
- Détériorer les statistiques pour perturber la prise de décision : en injectant du faux trafic (ghost spam) ou en crawlant massivement des pages (crawler spam), les spammeurs faussent les indicateurs clés : durée moyenne de session, taux de rebond, géolocalisation des visiteurs, etc. Résultat : les KPIs deviennent inexploitables pour les marketeurs ou les analystes web ;
- Saturer les serveurs web via une charge automatique : le crawler referer spam n’est pas toujours passif. En envoyant des milliers de requêtes par seconde vers des pages précises (voire dynamiques), certains robots visent à provoquer des ralentissements ou des indisponibilités temporaires. Cela peut être utilisé dans des campagnes de negative SEO ou de sabotage ciblé.
À cela s’ajoute une motivation parfois sous-estimée : obtenir des backlinks artificiels. De nombreux webmasters inexpérimentés publient automatiquement des rapports de trafic (ou des pages de statistiques publiques), sans filtrer les valeurs du champ referer
. Résultat : les spammeurs obtiennent des liens en dur, souvent dofollow, vers leur domaine. Une stratégie qui vise à tromper Google sur la popularité d’un domaine — même si, fort heureusement, ce type de backlink est de moins en moins valorisé.
Historiquement, le referer spam s’est manifesté dès le début des années 2000, avec des scripts Perl ou PHP conçus pour saturer les journaux de logs des serveurs Apache. Le phénomène a pris de l’ampleur avec la montée en puissance de Google Analytics (lancé en 2005), lorsque l’identifiant UA-XXXXX-Y
est devenu un vecteur d’attaque par ghost spam, via le Measurement Protocol
.
Des noms bien connus de la première vague de spam référent : semalt.com, buttons-for-website.com, ou encore le célèbre floating-share-buttons.com. Aujourd’hui, la liste s’est allongée, et même les outils comme Matomo ou Statcounter ne sont pas épargnés.
En 2016, Google avait annoncé améliorer le filtrage automatique de ces referer ghosts dans Analytics. Pourtant, à l’heure actuelle, bon nombre d’analystes SEO continuent de devoir mettre en place des filtres personnalisés pour contenir l’invasion.
Autrement dit : le referer spam, s’il peut paraître anecdotique à première vue, reste un vecteur d’attaque et de parasitage actif, intelligent, et en constante mutation. Il fait partie des signaux faibles qu’un audit technique SEO digne de ce nom doit systématiquement surveiller.
Dans la suite de cet article, voyons comment filtrer, bloquer et prévenir le referer spam à l’aide de segments Analytics, de règles .htaccess ou de configurations de pare-feu applicatif (WAF).
3 manières de se prévenir des spams referral
Vous avez probablement coché, dans votre interface Google Analytics (GA3 ou GA4), l’option proposée sous : Administration → Vue → Paramètres de vue, intitulée : « Exclure tous les appels provenant de robots connus ». Cette case active une base de données interne de Google, qui tente de filtrer automatiquement les bots référencés dans la IAB/ABC International Spider & Bots List. Une bonne habitude, certes, mais insuffisante dans bien des cas :
Pour consulter les sites référents touchés par du spam, rendez-vous dans : Google Analytics → Acquisition → Tout le trafic → Sites référents. Vous verrez alors la liste des noms de domaines soi-disant « sources » de vos visiteurs. Certains paraîtront douteux, voire absurdes.
On pourrait penser qu’un simple robots.txt interdirait le crawl de ces bots… mais c’est une illusion : la majorité des referer spams, notamment les ghost spams, ne visitent même pas votre site. Ils envoient des hits directement à Google Analytics via le protocole Measurement Protocol, en falsifiant l’http_referer
.
Configurer le fichier .htaccess pour bloquer les referer spams
Le fichier .htaccess
, utilisé sur les serveurs Apache, permet de bloquer l’accès à des crawlers identifiés. Cette méthode est inefficace contre les ghost spams (puisqu’ils ne passent pas par votre serveur), mais redoutablement utile contre les real crawler referrer spams (comme semalt.com ou crawler288.com).
Voici un exemple de règle à intégrer dans votre fichier .htaccess :
# Bloquer buttons-for-website.com
RewriteEngine On
RewriteCond %{HTTP_REFERER} buttons-for-website\.com [NC]
RewriteRule ^.* - [F]
Explication :
RewriteEngine On
: active le moteur de réécritureRewriteCond %{HTTP_REFERER} ...
: définit la condition de déclenchement sur le champ HTTP Referer[NC]
: rend la condition insensible à la casse[F]
: renvoie une erreur 403 (forbidden) pour bloquer l’accès
Vous pouvez ajouter autant de lignes que nécessaire pour bloquer d’autres domaines. Mais attention : trop de règles dans ce fichier peuvent ralentir légèrement le serveur, surtout sur un trafic important.
Utiliser des filtres personnalisés dans Google Analytics
Pour ne pas polluer vos données statistiques, la meilleure méthode reste souvent d’agir directement dans Analytics. En créant un filtre personnalisé, vous pouvez exclure les noms de domaine de spam des rapports. Cela préserve vos données tout en évitant une surcharge côté serveur.
Étapes :
- Créez une nouvelle vue de données dédiée (afin de ne pas altérer vos statistiques principales).
- Accédez à : Admin → Vue → Filtres → Ajouter un filtre
- Choisissez « Filtre personnalisé » → « Exclure » → « Champ : Source de la campagne » ou « Nom d’hôte »
- Dans le champ filtre, saisissez les domaines à exclure, séparés par un
|
(ex :semalt\.com|buttons-for-website\.com|floating-share-buttons\.com
)
Vérifiez ensuite la stabilité de votre trafic dans les 7 jours suivant la mise en place. Cela permet de s’assurer que le filtre ne supprime pas accidentellement du trafic légitime (certains referers douteux peuvent être de vrais visiteurs).
Utiliser les segments dans Analytics pour mieux analyser
Si vous souhaitez nettoyer vos rapports a posteriori (sans filtrer en amont), ou si vous n’avez pas accès à la configuration de l’instance Analytics (en tant que prestataire ou intervenant externe), les segments personnalisés sont une excellente solution.
Il vous suffit de créer un segment d’audience excluant les sources identifiées comme frauduleuses :
- Menu : Audience → Ajouter un segment
- Nom : Spam Referral (par exemple)
- Conditions : Source → ne contient pas → « semalt », etc.
L’intérêt est ici de comparer des données propres avec des données polluées et de prendre des décisions stratégiques sur vos contenus ou vos performances sans être biaisé par du faux trafic.
Et Google Analytics 4 dans tout ça ?
Avec l’arrivée de Google Analytics 4, la problématique du spam referral n’a pas disparu. GA4 utilise un modèle de collecte basé sur les événements, mais reste vulnérable aux appels via Measurement Protocol. Il est donc tout aussi important de :
- Limiter la collecte aux noms d’hôte vérifiés,
- Créer des audiences excluantes dans vos rapports,
- Ajouter une
validation côté serveur
sur votre taggage (avec GTM Server Side, par exemple).
Le spam referral n’est donc pas une fatalité, mais un combat permanent. Il faut rester vigilant, auditer ses données régulièrement, et mettre à jour ses filtres dès l’apparition d’un nouveau domaine parasite. Il est probable qu’avec le temps, les solutions d’analyse embarqueront nativement des IA de détection comportementale… mais en attendant, il faudra garder un œil attentif sur vos sources de trafic.
3 manières de se prévenir des Spams referral
Si vous avez bien configuré votre compte Google Analytics, vous avez forcément déjà coché dans « Administration -> Vue -> Paramètres de vue » la case intitulée « Exclure tous les appels provenant de robots connus « . C’est bien mais cela n’évite pas forcément l’apparition de ce type de spam :
Pour avoir accès à ce type d’information, rendez-vous sur votre console Google Analytics -> Acquisition -> Sites référents.
On pourrait se dire que de configurer le robots.txt suffirait mais c’est plus compliqué car ces spams ne passent pas par là généralement.
Voyons donc les cas par le biais de la console et par le fichier .htaccess :
Configurer le fichier htaccess pour les spams
Le fichier .htaccess
est un outil puissant disponible sur les serveurs Apache. Il permet de contrôler finement les accès au serveur, aussi bien pour les visiteurs humains que pour les robots. C’est une méthode simple mais très efficace contre une catégorie spécifique de spam : les crawler referrer spam.
Contrairement aux ghost spam referrers, qui n’interagissent pas du tout avec votre site (car ils falsifient simplement les données envoyées à Google Analytics via le Measurement Protocol), les crawler spams visitent réellement vos pages. Ces derniers peuvent être bloqués efficacement avec des règles .htaccess.
Voici un exemple de blocage de domaine référent :
# Bloquer buttons-for-website.com
RewriteEngine On
RewriteCond %{HTTP_REFERER} buttons-for-website\.com [NC]
RewriteRule ^.* - [F]
Décryptage :
RewriteEngine On
: active le moteur de réécriture ApacheRewriteCond %{HTTP_REFERER}
: la condition vérifie si le champ HTTP_REFERER contient le nom du domaine ciblé[NC]
: ignore la casse (majuscule/minuscule)RewriteRule ^.* - [F]
: si la condition est remplie, la règle renvoie une erreur 403 (Forbidden), interdisant l’accès
Exemples supplémentaires de blocage
Voici d’autres domaines souvent impliqués dans ce type de spam que vous pouvez bloquer :
# Bloquer plusieurs referers spam
RewriteCond %{HTTP_REFERER} semalt\.com [NC,OR]
RewriteCond %{HTTP_REFERER} darodar\.com [NC,OR]
RewriteCond %{HTTP_REFERER} hulfingtonpost\.com [NC,OR]
RewriteCond %{HTTP_REFERER} priceg\.com [NC,OR]
RewriteCond %{HTTP_REFERER} ilovevitaly\.com [NC]
RewriteRule ^.* - [F]
À noter : le dernier RewriteCond ne doit pas comporter l’option [OR]
, sinon le bloc ne se terminera jamais et pourrait créer une règle erronée.
Quelques précautions d’usage
- Le fichier
.htaccess
est lu à chaque requête : trop de règles peuvent alourdir légèrement le serveur sur des sites à fort trafic. - Il est recommandé de tester chaque modification (sur une version de pré-production si possible).
- Un blocage mal configuré pourrait impacter des utilisateurs légitimes (exemple : un CDN ou proxy dont le domaine référent contient un mot partiellement bloqué).
Alternative : bloquer par user-agent
Si certains bots malveillants se signalent eux-mêmes par leur user-agent (ex : AhrefsBot
, MJ12bot
), vous pouvez également les interdire de cette manière :
# Bloquer certains bots par user-agent
SetEnvIfNoCase User-Agent "MJ12bot" bad_bot
SetEnvIfNoCase User-Agent "AhrefsBot" bad_bot
Deny from env=bad_bot
Ce type de configuration vous permet de couper le trafic directement à la source avant même que le bot ne charge les ressources de votre site.
En résumé, le fichier .htaccess
reste un outil efficace pour se protéger des spammeurs référents de type crawler. Il est particulièrement utile pour les administrateurs techniques et les développeurs qui souhaitent garder la maîtrise des accès au serveur sans alourdir Google Analytics. Pour les ghost spams, il faudra en revanche privilégier les solutions côté Analytics ou via un proxy serveur.
La méthode du filtre dans Google Analytics
Cette approche consiste à configurer des filtres personnalisés dans Google Analytics pour empêcher que certains spams referer ne soient pris en compte dans vos rapports. Elle ne surcharge pas votre serveur comme le ferait une solution via .htaccess
, et elle permet une action rapide, à condition d’agir sur une vue dédiée.
Avant toute modification, pensez à conserver une vue brute non filtrée de votre trafic (que vous ne modifiez jamais). Travaillez sur une seconde vue dédiée aux données épurées, afin de conserver un historique intact.
Pour ajouter un filtre :
- Accédez à Administration > Vue > Créer une vue
- Nommez-la (ex. : Vue sans spam referer)
- Rendez-vous dans Filtres > Ajouter un filtre
Choisissez un filtre personnalisé de type Exclure, appliquez-le au champ « Site référent » et spécifiez les domaines indésirables :
semalt.com|buttons-for-website.com|darodar.com|floating-share-buttons.com
Cette syntaxe utilise le séparateur |
(pipe), qui signifie « ou » en regex, pour bloquer plusieurs domaines avec un seul filtre. Attention à ne pas dépasser la limite de 255 caractères dans le champ de saisie.
Vous pouvez créer plusieurs filtres si nécessaire, en segmentant par type de spam (ghost, crawler) ou par région. La mise à jour des données est immédiate pour les nouvelles visites, mais les anciens rapports ne seront pas rétroactivement modifiés.
Exemples de regex efficaces
Pour filtrer les spams typiques tout en évitant les faux positifs :
(?i)semalt|buttons-for-website|darodar|ilovevitaly|priceg|event-tracking|free-video-tool
Le (?i)
rend la regex insensible à la casse.
Dernière solution : les segments d’analytics
Les segments permettent de filtrer dynamiquement vos rapports sans affecter les données brutes. Vous pouvez ainsi visualiser l’impact des spams referer ou isoler le trafic légitime, rétroactivement.
Voici comment procéder :
- Dans n’importe quel rapport, cliquez sur « Ajouter un segment »
- Choisissez « Nouveau segment », nommez-le (ex. : Trafic sans spam)
- Allez dans « Conditions » > « Source » > « ne correspond pas à l’expression régulière »
- Ajoutez votre regex de spammeurs (comme plus haut)
Cela vous permet de comparer le trafic propre et le trafic brut. Vous pouvez aussi créer un segment inverse (ne garder que le spam) pour mesurer l’ampleur du phénomène.
Avantage : les segments peuvent s’appliquer à n’importe quelle période et vue existante, même rétroactivement, ce qui est impossible avec les filtres.
Entre les filtres de vue, les segments d’analyse et le .htaccess
, vous disposez de plusieurs leviers pour contrer efficacement les referer spams. L’idéal est d’adopter une approche combinée :
- .htaccess pour les crawlers invasifs
- Filtres de vue pour exclure les domaines polluants à la source
- Segments pour visualiser et analyser le trafic propre
Et comme le spam évolue sans cesse, pensez à mettre à jour régulièrement vos listes de domaines et à surveiller vos rapports d’acquisition.
0 commentaires