Zurück

Website gegen Zugriffe von Bots schützen

5 Min Lesedauer · Aktualisiert am 28.09.2023

Stellst du unerwünschte Zugriffe von Bots oder Crawlern auf deine Website fest und möchtest diese blockieren? Unsere Firewall schützt deine Website bereits vor diversen schädlichen Zugriffen. Trotzdem kann es zu gezielten Angriffen auf deine Website kommen. Wie du diese erkennen kannst und mit welchen Befehlen diese über die .htaccess-Datei blockiert werden können, beschreiben wir in diesem Artikel. Wenn du hingegen einfach bestimmte IP-Adressen oder IP-Adressen-Bereiche sperren willst, so findest du unter «Zugriffe von bestimmten IP-Adressen blockieren» eine entsprechende Anleitung.

Identifizierung von schädlichen Zugriffen

Als erstes gilt es herauszufinden, in welcher Art die schädlichen Zugriffe erfolgen. Dazu werden die Server Log-Daten deiner Website/Applikation analysiert. Du kannst die Raw Logs in deinem my.cyon unter «Statistik» über «Raw Logs» herunter laden.

Beachte, dass dies entsprechende Kenntnisse in der Analyse von Log-Daten voraussetzt. Bist du lediglich Anwenderin oder Anwender, so wende dich an jene Person, welche deine Website administriert oder kontaktiere eine Person, welche sich in der Administration von Websites und Web-Server auskennt.

Prüfe nun die Log-Dateien auf schädliche Zugriffe. Das können bestimmte IP-Adressen, Query-Strings, welche am Ende deiner Domain angehängt werden, oder Zugriffe, welche von merkwürdigen Geräten oder URL stammen, sein. Du findest auch Analyse-Programme im Internet, welche dir dabei helfen.

Blockieren von Zugriffen auf bestimmte URL

Schädliche Bots versuchen in der Regel die Zugangsdaten zu einer Website herauszufinden und greifen dazu auf die Anmeldeseite deiner Website zu. Bei WordPress sind dies beispielsweise wp-login.php oder xmlrpc.php.

In solchen Fällen hilft es, die Adresse/URL der Anmeldeseite zu verändern. Informiere dich darüber, ob es für dein CMS ein Plugin gibt oder wie die Anmeldeseite entsprechend geschützt werden kann.

Hast du WordPress im Einsatz, blockieren wir bereits serverseitig Zugriffe auf xmlrpc.php. Weitere Informationen dazu findest du im Artikel «XML-RPC und WordPress».

Blockieren von bestimmten Query-Strings

Stellst du in der URL deiner Website merkwürdige Parameter wie https:://oliverorange.ch/qaywsx-crawl/request/?scanx=123 fest, welche nichts direkt mit deiner Website zu tun haben, bedeutet dies in der Regel, dass deine Website mit Malware infiziert ist und dass Scripte über eben diese Parameter aufgerufen werden.

In solchen Fällen empfehlen wir umgehend dein Webhosting zu bereinigen und alle Applikationen zu aktualisieren gemäss «Mit Malware infiziertes Webhosting bereinigen».

Blockieren von bestimmten Quellen

Unter den Quellen, also den Geräten und Browsern, welche auf deine Website zugreifen, befinden sich diverse Bots oder Crawler wie beispielsweise AhrefsBot oder Googlebot. Viele dieser Bots sind jedoch «gutartig» und dienen beispielsweise Suchmaschinen, um regelmässig das Internet zu durchsuchen und die Suchergebnisse stets aktuell zu halten. Es können aber auch «schädliche» Bots darunter sein, die beispielsweise mit Namen wie SecretAgent oder sonstigen verdächtigen Merkmalen gefunden werden.

Diese sogenannten User-Agents können über folgenden Eintrag in der .htaccess-Datei anhand von deren Gerätenamen blockiert werden:

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteCond %{HTTP_USER_AGENT} SecretAgent [NC]

RewriteRule (.*) - [F,L]

</IfModule>

Es können auch mehrere User-Agents in einer Anweisung blockiert werden. In diesem Fall werden diese in Klammern zusammengefasst und über | getrennt: RewriteCond %{QUERY_STRING} (EvilBot|SecretAgent) [NC].

Blockieren von bestimmten Domains

Kommen Anfragen über eine andere Website oder über einen Link, wird meist die URL als Referrer mitgegeben, von wo aus die Anfrage kam. Finden sich in den Log-Einträgen verdächtige Domains als Referrer, können auch diese gezielt blockiert werden. Hier ein Beispiel der Anweisung für die .htaccess:

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteCond %{HTTP_REFERER} ^http://(.*)spamreferrer.org [NC]

RewriteRule (.*) - [F,L]

</IfModule>

Um gleich mehrere Domains zu blockieren, kopiere einfach die Zeile RewriteCond %{HTTP_REFERER} ^http://(.*)spamreferrer.org [NC] und ersetze die Domain. Beachte jedoch, dass in diesem Fall für alle ausser der letzten Zeile noch das Flag OR ergänzt werden muss am Ende der Zeile, also [NC,OR].

Blockieren von bestimmten IP-Adressen

Ist das übereinstimmende Merkmal immer dieselbe IP-Adresse, kannst du wie im Artikel «Zugriffe von bestimmten IP-Adressen blockieren» beschrieben, die betroffenen IP-Adressen sperren.

Kategorien
Sicherheit CMS WordPress
Artikel teilen
E-Mail WhatsApp

Was dir auch helfen könnte

Verwandte Artikel

Du hast noch Fragen?

Wir beantworten sie dir gerne persönlich.

Kontaktiere uns