User Case: Bots klicken auf Amazon Links

Es ist Sonntag. Ein Kunde schreibt mir sichtlich aufgeregt. 4000 Klicks auf seine Amazonlinks innerhalb von 24 Stunden. Er hat Angst, dass sein Amazonaccount daraufhin gesperrt wird. Auch die Anzeige der Conversion Rate ist dadurch verwässert.
Wie ich ihm geholfen habe erfährst du im Details in diesem Beitrag.

Logfiles Analysieren

Um die Zugriffe nachzuvollziehen ist der erste Schritt die Analyse der Serverlogs des jeweiligen Webhosters.

Der Kunde hat DSGVO Konform die IPs verschleiert, dass kann man ganz gut an den endenden Nullen in der IP sehen. Ein Eintrag sah z.b. so aus

XXX.XXX.0.0 - - [24/Oct/2020:00:11:16 +0200] "GET /test-seite HTTP/1.1" 200 30899 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36" "Traffic IN:932 OUT:35484" "ReqTime:0 sec"

BedeutungWert im BeispielErläuterung
IP-Adresse192.168.0.0IP-Adresse des anfordernden Hosts
Unbelegtvorgesehen für RFC-1413-Identität, die jedoch standardmäßig (-) nicht ermittelt wird
WerGgf. Nutzername aus einer HTTP-Authentifizierung, sonst „-“
Wann[24/Oct/2020:00:11:16 +0200]Zeitstempel (Datum, Uhrzeit, Zeitverschiebung)
Was„GET /test-seite HTTP/1.1“Anforderung, eines Bildes, Übertragungsprotokoll
Ok200HTTP-Statuscodes (200=Erfolgreiche Anfrage)
Wie viel30899Menge der gesendeten Daten (Byte)
Woher„-„Von welcher Internetseite (URI) wird angefordert
Womit„Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36“Mit welchem Webbrowser/Betriebssystem/Oberfläche (UserAgent)
Siehe Wikipedia

Gut – zumindest habe ich eine Logfile bekommen und konnte mich jetzt an die eigentliche Analyse machen. Für Logfiles bis 1000 Zeilen kann man kostenlos den ScreamingFrog Logfile Analyser nutzen, danach kostet es um die 99 Pounds.

screaming frog log file analyser
Bild aus der ScreamingFrog Doku entnommen.

Es gibt sicherlich besser oder auch kostenlose Varianten da draußen. Für mich zählt aber Perfomance/Schnelligkeit und die grafische Verarbeitung der Daten. So konnte ich sehr schnell filtern und den vermeintlichen Verursacher ausfindig machen.

Bots oder Angreifer aussperren

Zum Aussperren gibt es mehrere Möglichkeiten. Hier muss man genaustens herausfinden wer oder was die Aufrufe auf die Links erzeugt hat.

In unserem Beispiel war es der BingBot, der die Seite mehrfach gecrawled hat. Beim crawlen hat er die Bilder von Amazon / AAWP geladen und somit ein Klick verursacht.

Diesen habe ich einfach per robots.txt für das öffentliche Bild von AAWP gesperrt. Hier mehr über die robots.txt und damit die Steuerung der Crawler erfahren.

User-agent: BingBot
Disallow: /wp-content/plugins/aawp/public/*

Solltest du aber Bots wirklich aussperren wollen, musst du auf andere Möglichkeiten zugreifen.

Bots mittels IP sperren

Da im o.g. Beispiel kein bösartiger Bot verantwortlich war, musste ich im Serverlog auch nicht die IP Adresse komplett loggen. Da die IP anonymisiert war, ist es schwer diese zu blocken ohne andere Besucher des Subnetzes mit auszuschließen.

Hast Du die IP, die Du sperren möchtest? Dann blockieren wir mal über die .htaccess. Den folgenden Eintrag an den Anfang der .htaccess setzen und die IPv4 oder IPv6 Adresse natürlich austauschen. Du kannst auch mehrere IP Adressen untereinander setzen.

Order Allow,Deny
Allow from all
Deny from 123.123.123.123
Deny from 2001:0000:0000:0042

Solltest Du ganze Länder aussperren wollen und WordPress nutzen, kann ich Dir zu dem Plugin Login IP & Country Restriction raten. Hier werden die IP Adressen alle Länder gesammelt und zu 90% richtig erkannt. Bei Prrojekten aus dem deutschsprachigen Raum könntest Du z.b. nur die D-A-CH Länder aktivieren – alle anderen bleiben draußen. Aber Achtung – ohne Grund würde ich niemals einfach so IPs sperren.

IP und Länder sperrung Plugin
Login IP & Country Restriction Plugin in WordPress

Bots mittels UserAgent aussperren

Wenn die IP ständig wechselt oder eben nicht bekannt ist, kann man auch UserAgents aussperren. PBN Netzwerke z.b. sperren gerne die Bots von den SEO Tools aus.

Dazu auch wieder in die .htaccess folgenden Eintrag einsetzen und dabei „UserAgentName“ mit dem jeweiligen UserAgent ersetzen.

RewriteEngine On 
RewriteCond %{HTTP_USER_AGENT} UserAgentName [NC] 
RewriteRule .* - [F,L]

Fazit

Das Problem mit den Amazon Klicks waren Suchmaschienen. Diese habe ich mittels robots.txt gelenkt.

Solltest Du Probleme mit bestimmten IPs haben, kannst du diese mittels Plugin oder .htaccess aussperren. Auch gibt es da noch viel mehr Möglichkeiten wie z.b. nur bestimmte Unterverzeichnisse, Weiterleitungen etc, die ich hier nicht behandelt habe.

Auch die UserAgents kannst du aussperren. Dazu gibt es sicherlich auch genug Plugins. Solltest du Referrer Spam in deinen Analysetools haben, kannst Du dies auch per .htaccess oder Plugin verhindern. Aber dazu wann anders mehr 🙂

Abschließend rate ich euch zu dem Einsatz einer Firewall. NinjaFirewall wäre hier anzuraten. Näheres zu Firewalls und Absicherung von WordPress erfährst Du hier.

Hinterlasse eine Anmerkung

Datenschutz
Lightweb-media Burghardt, Besitzer: Joel Burghardt (Firmensitz: Deutschland), verarbeitet zum Betrieb dieser Website personenbezogene Daten nur im technisch unbedingt notwendigen Umfang. Alle Details dazu in der Datenschutzerklärung.
Datenschutz
Lightweb-media Burghardt, Besitzer: Joel Burghardt (Firmensitz: Deutschland), verarbeitet zum Betrieb dieser Website personenbezogene Daten nur im technisch unbedingt notwendigen Umfang. Alle Details dazu in der Datenschutzerklärung.