Automatisierte Webseitenzugriffe verhindern
Hinweis: Der Autor des Artikels ist kein ausgebildeter Fachmann zum Thema. Alle hier getroffenen Aussagen sind nach bestem Wissen sowie gegebenenfalls nach persönlicher Einschätzung des Autors getroffen. Dabei ist es leider nicht auszuschließen, dass einige Angaben veraltet, irreführend oder sonstwie fehlerhaft sind. Letztendlich liegt es in der Verantwortung jedes einzelnen Lesers, die hier gemachten Angaben zu überprüfen und gegebenenfalls weitere Informationen einzuholen. Der Autor kann und will darum keine Garantie oder Haftung für Probleme oder Verluste, die trotz oder wegen der Befolgung der hier genannten Ratschläge eintreten, übernehmen. Jeder Leser hat natürlich die Möglichkeit, die folgenden Ratschläge nicht zu befolgen oder sie gar nicht erst zu lesen.
Wie kann ich automatisierte Zugriffe auf meine Webseite verhindern?
Dieser Artikel ist Teil einer Artikelserie zur Optimierung von Webseiten. Er beschreibt einleitend die Problematik von automatisierten Zugriffen auf eigene selbstverwaltete Webseiten. Mit den weiteren Artikeln "Bots mit robots.txt ausperren" und "Zugriff auf Webseiten mit .htaccess sperren" werden konkrete Sperrmaßnahmen beschrieben.
Inhaltsverzeichnis
Automatisierte Zugriffe
Bots versus Humans
Webseiten sind im wesentlichen Dateien, die auf einem Servercomputer lagern und durch Abfrage einer bestimmten Internet-Adresse aufgerufen werden können. Die Inhalte der aufgerufenen Seiten können dabei statisch sein oder durch Scripte und Datenbanken dynamisch generiert. Alle Zugriffe auf diese Webseiten werden von Computern durchgeführt. Üblicherweise sind die Inhalte der Webseiten jedoch zum Lesen durch einen Menschen bestimmt. Der Webseitenbetreiber erwartet also im Normalfall Zugriffe auf seine Webseiten durch menschliche Besucher, die dazu einen Computer mit einem Internetbrowser verwenden.
Jedoch können auch Computerprogramme (sogenannte "Bots") das Verhalten menschlicher Besucher nachahmen und so automatisiert Webseitenaufrufe starten. Je nachdem wie das Verhalten solcher Computerprogramme ist, lassen sie sich für den Webseitenbetreiber leicht, schwer oder auch gar nicht von den Aufrufen duch menschliche Besucher unterscheiden.
Sinn automatisierter Zugriffe
Da Bots Computerprogramme sind, haben sie kein eigenes Interesse an dem Aufruf von Webseiten, zumal sie nicht in der Lage sind, Sinn und Inhalt der aufgerufenen Webseiten zu verstehen. Ihre Aufgabe besteht allein darin, eine oder mehrere Aufgaben durchzuführen, die ihnen ihr Programmierer oder ihr Betreiber mit auf den Weg gegeben haben. Die Aufrufe duch die Bots geschehen also zunächst einmal zum Vorteil des Betreiber des Bots. Im Prinzip verfolgen Bots dabei je nach ihrer Bauart eines von zwei Zielen.
Indizieren des Internets
Suchbots haben die Aufgabe, möglichst viele Seiten aufzurufen, Ihre Inhalte abzuspeichern und ihre Verlinkung von und zu anderen Webseiten festzustellen. Diese Aufgabe führen insbesondere die automatierten Suchbots der großen Suchmaschinen wie etwa Google durch, die mit diesen Informationen eine riesige Datenbank erstellen, mit der sie in der Lage sind, ihre Suchmaschinen zu betreiben und ihren Nutzern Suchergebnisse auf ihre Suchanfragen zu geben. Neben diesen öffentlich zugänglichen und weit bekannten Suchmaschinen gibt es auch zahlreiche kleinere Anbieter, die ein Interesse an der Erstellung einer Sammlung von Webseiteninhalten haben. Dies können unter Anderem sein: Suchmaschinen für SEO-Betreiber, die versuchen, Informationen für zahlende Kunden zu liefern, Content-Suchmaschinen von Abmahndiensten, die gezielt nach Copyrightverstößen auf Webseiten suchen oder Backlink-Checker, die regelmäßig testen wollen, ob versprochene Backlinks immer noch gesetzt sind.
Die Indizierungsversuche sind also zum großen Teil zunächst einmal harmlos und können im Falle der Suchmaschinen sogar vorteilhaft für den Webseitenbetreiber sein, da er die Sichtbarkeit der eigenen Webinhalte in Suchmaschinen erhöht und so zu mehr erwünschten menschlichen Besuchern führen kann.
Infizieren von Webseiten
Neben den Suchbots gibt es auch schadhafte Bots, die versuchen, bekannte Sicherheitslücken im Internet aufzuspüren und auszunutzen, um eine gefährdete Webseite mit Schadsoftware zu infizieren oder sogar komplett zu übernehmen. Dabei schicken diese Bots meist massenhaft Infizierungsanfragen an Webseiten, ohne zu wissen, ob sich auf einer Webseite überhaupt angreifbare Programme befinden. Üblicherweise sind die Angriffe nicht gezielt auf die Webseite abgestimmt, sondern es werden automatisch Sicherheitslücken von weitverbreiteten Programmen ausgetestet, egal ob der Webseitenbetreiber solche Programme nutzt oder nicht. Über die schiere Masse der Anfrage sind diese Bots dennoch erfolgreich.
Problematik automatisierte Abfragen
Gefährdung durch Schadangriffe
Die Problematik der schadhaften Bots ist jedem offensichtlich. Hier versucht quasi ein Einbrecher aufs Geratewohl nach offenen Einfallstoren zu suchen, um die Webseite des Betreibers zu kapern. Selbst wenn der konkrete Angriff bei einer Webseite ins Leere läuft, weil sie das angegriffene Programm gar nicht verwendet, kommen jederzeit andere Schadbots und die Gefahr ist somit, dass irgendwann einer von ihnen eine offene Sicherheitslücke findet, an die der Webseitenbetreiber nicht gedacht hat.
Belastung des Webservers
Sowohl den schadhaften wie auch den übrigen automatisierten Anfragen ist gemein, dass sie den Webserver des Webseitenbetreibers belasten. Denn dieser muss jede Anfrage entgegennehmen, ausführen und ausliefern, was jedesmal ein wenig seiner Rechenzeit erfordert. Gerade bei Bots ist zudem das Problem, dass sie teilweise mehrere Anfragen in kurzer Zeit stellen. Das führt bei kleineren Webseiten schnell dazu, dass die Auslieferung von Webseiten (auch an die menschlichen Besucher) messbar langsamer wird oder sogar komplett ins Stocken kommt. Die Qualität der eigenen Webseite sinkt also durch diese automatisierten Anfragen. Dem kann man zwar teilweise durch Verwendung eines stärkeren Webservers entgegen wirken, was jedoch üblicherweise auch zu höheren Kosten führt.
Gegenmaßnahmen treffen
Situation erkennen
Bevor man gezielte Gegenmaßnahmen ergreifen kann, muss man natürlich wissen, inwieweit die eigenen Webseiten von automatisierten Bots aufgerufen oder gar angegriffen werden. Dazu benutzt man üblicherweise eine der folgenden Methoden.
Logfiles auslesen
Sofern man als Webseitenbetreiber ein Logfile führt, kann man dieses auslesen und analysieren. In dem Logfile vermerkt der Webserver jede einzelne Zugriffsanfrage und wie er darauf reagiert hat. Die meisten Webhoster, die ein gemanagtes Webhosting für ihre Kunden anbieten, führen ein solches Logfile, welches dem Kunden über seine Webseitenoberfläche zur Verfügung steht. Die Struktur eines solchen Logfiles ist für Menschen nicht ganz einfach lesbar, was jedoch hauptsächlich daran liegt, dass es so zahlreiche Informationen liefert. Zur besseren Übersicht kann man versuchen, die Daten in ein Tabellenkalkulationsprogramm zu kopieren und dort auszuwerten.
Zum Teil gibt es auch Programme, die Logfiles automatisch auslesen und darstellen. Insbesondere "Webalizer 2" wird dabei von etlichen Webhostern automatisch zur Verfügung gestellt. Dieses jedoch gibt nur eine grobe zusammengefasste Übersicht, die zwar die allgemeine Lage darstellt, jedoch leider nicht mehr die Einzelzugriffe verfügbar hat.
Loggingscript erstellen
Mit etwas Programmierkenntnis kann man auch ein eigenes Script in einer Webprogrammiersprache erstellen und in die eigene Webseite einbauen. Darin kann man festlegen, welche Informationen über seine Besucher man wissen und eventuell speichern will. Wegen der großen Zahl der Zugriffe, sollte man beim Speichern der Zugriffsstatistiken in einer Datenbank darauf achten, dass das eigene Loggingscript die Webseite nicht noch zusätzlich verlangsamt.
Faustformel verwenden
Wem die oben genannten Methoden nicht zur Verfügung stehen oder zu aufwändig sind, der kann versuchen auf Faustformeln und die Erfahrungen anderer Webseitenbetreiber zu vertrauen. Das Zugriffsmuster auf eine Webseiten ist natürlich von Webseite zu Webseite unterschiedlich. Als grobe Faustformel würde ich sagen, dass das Zugriffsmuster auf eine typische Webseite wie folgt aussieht:
- 10% menschliche Besucher
- 20% Suchmaschinenbots der großen Suchmaschinen
- 30% Sonstige Suchbots
- 40% Schadbots
Mit etwas Suche bei einer Suchmaschine lassen sich sicherlich andere Angaben von Webseitenbetreibern finden.
Inhalte minimieren/deaktivieren
Unerwünschte Zugriffe auf die eigene Webseite sind ein guter Anlaß, die eigenen Inhalte kritisch zu begutachten und zu optimieren. Gefährdete Programme sollte man in jedem Fall gut absichern oder wenn möglich sogar ganz entfernen, denn neben den Angriffen durch Bots könnten sie jederzeit von einem bösartigen menschlichen Besucher angegriffen werden. Darüber hinaus sollten die eigenen Inhalte möglichst schlank sein, da auch menschliche Besucher (insbesondere solche von Mobilgeräten) unter langen Ladezeiten leiden. Wenn einen also ein Bot ärgert, der im Sekundentakt die Bildergalerie mit 150 Bildern aufruft, sollte man sich zuerst fragen, ob eine solch umfangreiche Seite überhaupt generell sinnvoll ist und man sie nicht optimieren und verkleinern könnte.
Bots mit robots.txt aussperren
Die robots.txt-Datei ist eine Methode, Bots zu sagen, dass sie die eigene Webseite nicht durchsuchen sollen. Dabei handelt es sich quasi um eine Art Bitte oder Hausordnung für automatiserte Seitenaufrufer. Wie eine solche Datei erstellt wird, wird in einem eigenen Artikel "Bots mit robots.txt ausperren" beschrieben. Da diese Anweisung ein zwar etablierter jedoch freiwilliger Standard ist, ist diese Methode zu einem großen Teil hilfreich, scheitert jedoch auch bei vielen unerwünschten Suchbots und insbesondere bei Schadbots, die diese Anweisung einfach ignorieren.
Zugriffe per .htaccess sperren
Wesentlich effektiver ist die Zugriffssperre per .htaccess-Datei. Auch hier wird einem eigenen Artikel "Zugriff auf Webseiten mit .htaccess sperren" beschrieben, wie eine solche Datei eingerichtet wird.
Eine .htaccess-Datei ist eine Anweisung an den eigenen Webserver, bestimmte IP-Adressen nicht zu bedienen. Diese Sperre liegt also in der eigenen Kontrolle und verhindert zuverlässig die Auslieferung an bekannte auffällige Adressen. Diese Methode wirkt jedoch nur gegen Zugriffe von IP-Adressen, die man expliziert aufführt. Wenn der gleiche Angreifer eine andere Adresse benutzt, wirkt die Sperre nicht.
Fazit
Maßnahmen gegen automatisierte Aufrufe lassen sich nicht zuverlässig durchführen, sofern man sein Webangebot nicht komplett für unbekannte Besucher sperren will. Jedoch lassen sich umgekehrt recht effektiv unerwünschte Besucher ausfiltern. Die Wirkung hängt dabei vom Arbeitsaufwand und auch der Sperrhärte des Webseitenbetreibers ab. Mit einigen Stunden Aufwand lässt sich der Traffic, der durch Bot-Zugriffe erfolgt, um gut die Hälfte reduzieren, was die eigene Webseite deutlich sicherer und merklich schneller macht.
Folgeartikel
Verwandte Artikel
- Geschwindigkeitsoptimierung von Webseiten
- Ladezeiten von Wikimedia-Wikis verringern
- Ladezeiten von Wordpressblogs minimieren
- Messprogramme für Webseiten
Weitere Artikel: