Beschreibung
Schützen Sie Ihren OXID eShop vor Bot-Angriffen, Scraping und automatisierter Überlastung
Automatisierte Bots, Scraper und aggressive Crawler können tausende Requests erzeugen, Serverressourcen beanspruchen, Statistiken verfälschen und Inhalte systematisch auslesen. BotProtection für OXID eShop erkennt typische Merkmale solcher Zugriffe und kann auffällige Anfragen protokollieren, begrenzen, mit einer JavaScript-Challenge prüfen oder abweisen.
BotProtection ist für OXID eShop 6 mit Smarty und OXID eShop 7 mit Twig erhältlich. Beide Modulversionen bieten denselben Funktionsumfang. Lediglich die technische Integration und die mitgelieferten Templates unterscheiden sich. Deshalb muss das jeweils zur eingesetzten OXID-Version passende Paket verwendet werden.
Mehrschichtige Bot-Erkennung
BotProtection kombiniert mehrere unabhängige Schutzmechanismen. Dadurch basiert die Erkennung nicht allein auf einer IP-Adresse oder einem User-Agent. Je nach Konfiguration werden unter anderem Zugriffsraten, Subnetze, Force-SID-Verhalten, Browser-Header, Navigationsmuster, Bot-Signaturen, verdächtige Scan-Requests, Honeypot-Aufrufe und Herkunftsländer ausgewertet.
Das Modul greift früh in die Verarbeitung von Storefront-Aufrufen ein. Erkannte Admin-Aufrufe sowie regulär angemeldete Kunden und Sitzungen mit einem gefüllten Warenkorb werden von den normalen Bot-Prüfungen ausgenommen. Explizite IP- und Länder-Blacklists werden jedoch immer zuerst ausgewertet und behalten Vorrang.
Rate-Limiting für IP-Adressen und komplette Subnetze
Das konfigurierbare IP-Rate-Limiting begrenzt die Anzahl der Requests einer anonymen IP-Adresse innerhalb eines festgelegten Zeitfensters. Zusätzlich kann ein gemeinsames Limit für komplette IPv4-/24- und IPv6-/64-Netze gesetzt werden.
Das Subnetz-Rate-Limiting verbessert den Schutz gegen Angriffe, bei denen ein Bot fortlaufend zwischen verschiedenen Adressen desselben Netzes wechselt. Grenzwerte, Zeitfenster und die Dauer temporärer Sperren lassen sich individuell konfigurieren.
Erweiterte Force-SID-Erkennung
Bots ohne funktionierende Cookie-Verarbeitung erzeugen in OXID häufig Aufrufe mit force_sid. BotProtection kann solche Requests sofort behandeln oder zunächst mehrere Treffer derselben IP-Adresse innerhalb eines definierten Zeitfensters sammeln.
Zusätzlich erkennt das Modul die Wiederverwendung derselben Force-SID über mehrere IP-Adressen. Damit lassen sich auch verteilte Scraper identifizieren, die regelmäßig ihre IP-Adresse wechseln, aber dieselbe Session-ID weiterverwenden.
Notwendige Shopaktionen wie Login, Warenkorb, Vergleichsliste oder bestimmte POST-Aufrufe werden nicht allein aufgrund einer Force-SID abgewiesen. Dadurch verbindet das Modul eine wirksame Erkennung mit einem möglichst geringen Risiko für legitime Kunden.
Verhaltensanalyse und Browser-Fingerprinting
Die Verhaltensanalyse erkennt unter anderem wiederholte Abrufe derselben URL sowie den schnellen Aufruf vieler unterschiedlicher Seiten ohne Referer. Die jeweiligen Schwellwerte und Beobachtungszeiträume sind konfigurierbar.
Das Browser-Fingerprinting prüft typische HTTP-Header wie Accept, Accept-Language und Accept-Encoding. Fehlende oder unplausible Browsermerkmale können abhängig vom Schutzmodus eine JavaScript-Prüfung oder eine Sperre auslösen.
JavaScript-Challenge für verdächtige Besucher
Bei geeigneten verdächtigen Requests kann BotProtection eine JavaScript-Challenge anzeigen. Ein normaler Browser erhält nach erfolgreicher Prüfung ein an IP-Adresse und User-Agent gebundenes Cookie und wird automatisch zur ursprünglich angeforderten Seite zurückgeleitet.
Clients ohne JavaScript- oder Cookie-Unterstützung bestehen diese Prüfung nicht. Optional können auch typische Scan-Requests gezielt durch die Challenge geprüft werden. Dazu gehören beispielsweise anonyme Seitenaufrufe ohne Cookies und Referer mit typischen Merkmalen automatisierter Scanner.
Bot-Signaturen und optionaler Honeypot
Eine integrierte Signaturerkennung identifiziert leere oder bekannte verdächtige User-Agents sowie typische Kennungen von Scrapern, automatisierten Werkzeugen und unerwünschten Crawlern.
Ergänzend steht ein optionales Honeypot-System zur Verfügung. Ruft ein automatisierter Crawler einen entsprechend vorbereiteten, für normale Besucher unsichtbaren Link auf, kann seine IP-Adresse temporär gesperrt werden.
Der Honeypot ist standardmäßig deaktiviert und erfordert die Einbindung eines passenden Links in das Storefront-Template. So behalten Sie die Kontrolle darüber, ob und an welcher Stelle diese zusätzliche Falle eingesetzt wird.
Lokale GeoIP-Datenbank und flexible Länderregeln
Für die Länderermittlung verwendet BotProtection eine mitgelieferte lokale IPv4-/IPv6-GeoIP-Datenbank. Die Abfrage erfolgt direkt im Shop und benötigt während eines Storefront-Requests weder einen externen Netzwerkzugriff noch eine Reverse-DNS-Abfrage.
Der aktive GeoIP-Datenbestand kann im Admin-Dashboard kontrolliert und aktualisiert werden. Neue Daten werden validiert und per SHA-256-Prüfsumme geprüft. Die Aktivierung erfolgt abgesichert, sodass bei einem fehlerhaften Update die vorhandene gültige Datenbank erhalten bleibt.
Mit Länder-Blacklists und einer gemeinsamen Länder-Whitelist können Zugriffe anhand ihrer geografischen Herkunft behandelt werden. Deutschland, Österreich und die Schweiz sind für neue Installationen als DACH-Whitelist vorkonfiguriert.
Sie entscheiden selbst, ob freigegebene Länder alle weiteren Bot-Prüfungen umgehen oder weiterhin regulär geprüft werden. Optional lassen sich alle erkannten Länder außerhalb der Whitelist sperren. Explizite IP- und Länder-Blacklists werden immer zuerst ausgewertet und haben Vorrang vor Whitelists und Suchmaschinen-Ausnahmen.
Schutz legitimer Suchmaschinen und KI-Crawler
BotProtection enthält vorkonfigurierte User-Agent-Einträge für bekannte Suchmaschinen-, Vorschau- und KI-Crawler. Die Suchmaschinen-Verifikation kann deaktiviert, allein auf Basis des User-Agents oder für unterstützte Suchmaschinen wie Google und Bing über eine zusätzliche Reverse- und Forward-DNS-Prüfung ausgeführt werden.
Verifizierte Suchmaschinen können trotz Force-SID zugelassen werden und auf Wunsch die normalen Länderregeln umgehen. IP- und Länder-Blacklists behalten dennoch Vorrang. So bleibt die Erreichbarkeit für legitime Crawler kontrollierbar, ohne jedem beliebig gefälschten Bot-User-Agent automatisch zu vertrauen.
Drei flexibel einsetzbare Schutzmodi
BotProtection bietet drei Betriebsarten:
- Passiv: Erkennt und protokolliert auffällige Requests, ohne neue Challenges, Sperren oder 403-Antworten auszulösen. Dieser Modus eignet sich besonders für die Einführungs- und Analysephase.
- Moderat: Der empfohlene Standardbetrieb verwendet die aktivierten Regeln und konfigurierten Grenzwerte. Verdächtige Browser können per JavaScript-Challenge geprüft werden.
- Aggressiv: Dieser Modus eignet sich für akute Angriffslagen oder besonders strenge Anforderungen. Fehlende Browsermerkmale können hier auch ohne aktivierte Challenge zu einer Sperre führen.
Die Schutzfunktionen und Grenzwerte lassen sich unabhängig vom gewählten Modus detailliert konfigurieren.
Admin-Dashboard mit Schutzberater
Das integrierte Admin-Dashboard zeigt aktuelle Request- und Trefferzahlen, Erkennungsgründe, besonders aktive IP-Adressen, angegriffene URLs, Herkunftsländer und aktive Laufzeitzustände. Temporär gesperrte IP-Adressen lassen sich bei Bedarf direkt im Backend wieder freigeben.
Ein regelbasierter Schutzberater vergleicht die aktuellen Einstellungen mit den vorhandenen Erkennungsdaten. Er weist beispielsweise auf auffällige Force-SID-Aktivitäten, unpassende Länderregeln, fehlende GeoIP-Daten oder mögliche Anpassungen am Rate-Limit hin.
Die Empfehlungen werden mit Begründung, Risiko und Konfidenz dargestellt. Einstellungen werden dabei niemals automatisch geändert. Die Entscheidung und Kontrolle bleiben vollständig beim Shopbetreiber.
Optional informiert eine E-Mail-Benachrichtigung einmal täglich, wenn der konfigurierte Schwellwert erkannter Aktivitäten erreicht wurde.
Modullokaler SQLite-Speicher ohne Tabellen in der Shopdatenbank
Laufzeitdaten, Zähler und erkannte Bot-Aktivitäten werden bevorzugt in einer moduleigenen SQLite-Datenbank im OXID-Logverzeichnis gespeichert. In der eigentlichen OXID-Shopdatenbank werden keine zusätzlichen Tabellen angelegt.
SQLite ermöglicht eine kompakte Speicherung, parallele Lesezugriffe und eine effiziente Auswertung im Dashboard. Falls die PHP-Erweiterung pdo_sqlite nicht verfügbar ist, kann das Modul übergangsweise auf einzelne JSON- und Laufzeitdateien zurückfallen. Für den empfohlenen produktiven Betrieb sollte pdo_sqlite aktiviert sein.
Automatische Datenpflege und Speicherbegrenzung
Abgelaufene Zustände und alte Aktivitätsdaten werden automatisch bereinigt. Aufbewahrungszeitraum, Cleanup-Intervall, Batch-Größe und maximaler Speicherverbrauch sind konfigurierbar. Wird das festgelegte Speicherlimit erreicht, entfernt das Modul bei Bedarf zuerst die ältesten Aktivitätsdaten.
Zusätzlich stehen Shell-Skripte für Analyse und Cleanup zur Verfügung. Sie unterstützen sowohl den SQLite-Speicher als auch den Datei-Fallback und liefern unter anderem Auswertungen zu Erkennungsgründen, IP-Adressen, URLs und Herkunftsländern.
Ihre Vorteile auf einen Blick
- Mehrschichtige Erkennung automatisierter und auffälliger Storefront-Zugriffe
- Rate-Limiting je IP-Adresse sowie für IPv4-/24- und IPv6-/64-Subnetze
- Force-SID-Erkennung inklusive Wiederverwendung über wechselnde IP-Adressen
- Verhaltensanalyse, Browser-Fingerprinting und JavaScript-Challenge
- Zusätzliche JavaScript-Prüfung verdächtiger Scan-Requests
- Bot-Signaturen und optionales Honeypot-System
- IP-, User-Agent- und Länderlisten mit klarer Priorisierung
- Lokale IPv4-/IPv6-GeoIP-Ermittlung ohne externe Abfrage im Storefront-Request
- Kontrollierte Freigaben für legitime Suchmaschinen und KI-Crawler
- Dashboard mit Statistiken, GeoIP-Status und begründeten Schutzempfehlungen
- Modullokaler SQLite-Speicher ohne zusätzliche Tabellen in der Shopdatenbank
- Automatisches Cleanup und konfigurierbares Speicherlimit
- Identischer Funktionsumfang für OXID eShop 6 mit Smarty und OXID eShop 7 mit Twig
Wichtiger Hinweis zum DDoS-Schutz
BotProtection arbeitet innerhalb von PHP und OXID und reduziert unerwünschte Zugriffe auf Anwendungsebene. Das Modul ersetzt keine Firewall, kein CDN beziehungsweise keine Web Application Firewall und keinen netzwerkseitigen DDoS-Schutz des Hosting-Anbieters.
Bereits ausgelastete Netzwerk-, Webserver- oder PHP-Ressourcen können durch ein Shopmodul nicht wieder freigegeben werden. Für einen umfassenden Schutz sollte BotProtection deshalb mit geeigneten Sicherheitsmaßnahmen auf Server-, Netzwerk- oder CDN-Ebene kombiniert werden.
Neue Regeln und Whitelists sollten zunächst im passiven Modus mit realen Kunden-, Checkout-, Zahlungs-, Monitoring- und Suchmaschinenzugriffen getestet werden. Anschließend kann der moderate oder aggressive Schutzmodus entsprechend der tatsächlichen Angriffslage aktiviert werden.
Spezifikation
| Hersteller: | eComStyle |
| Artikel Nr.: | 20097 |
| Verschlüsselung | keine |
Täglich werden tausende Bot-Zugriffe abgewehrt.