CatalogSearchSpamFilter — Katalogsuche Spam-Filter¶
Extension for Magento 2¶
Bedienungsanleitung¶
CopeX GmbH
Web: https://copex.io
Email: office@copex.io
Inhaltsverzeichnis¶
| Abschnitt | Seite |
|---|---|
| 1 Voraussetzungen | 2 |
| 2 Installation | 2 |
| 3 Konfiguration | 2 |
| 4 Funktionsweise | 4 |
| 5 Fehlerbehandlung | 4 |
1 Voraussetzungen¶
- Magento 2.4 oder höher
- PHP 8.1 oder höher
- Kompatibel mit Luma- und Hyvä-Themes
2 Installation¶
Via Composer¶
composer require copex/module-catalog-search-spam-filter
php bin/magento module:enable CopeX_CatalogSearchSpamFilter
php bin/magento setup:upgrade
php bin/magento cache:flush
3 Konfiguration¶
Die Konfiguration des Moduls finden Sie im Magento 2 Backend unter Shops > Konfiguration > Katalog > Katalog > Katalogsuche Spam-Filter.
3.1 Aktivierung¶
- Aktiv — Aktiviert oder deaktiviert den Spam-Filter. Wenn deaktiviert, werden alle Suchanfragen ohne Filterung weitergeleitet.
3.2 Gesperrte Wörter/Zeichen¶
- Wörter / Zeichen — Eine konfigurierbare Liste von gesperrten Phrasen und Zeichen. Wenn der Suchbegriff eines Kunden einen dieser Einträge enthält, wird der Kunde auf die 404-Seite weitergeleitet und die Suche wird nicht ausgeführt.
Jede Zeile in der Tabelle enthält ein gesperrtes Wort oder eine gesperrte Phrase. Über die Schaltfläche Zeile hinzufügen können neue Einträge ergänzt werden. Nicht mehr benötigte Einträge können über die Schaltfläche Löschen entfernt werden.
Standard-Sperrliste:
Das Modul wird mit einer vordefinierten Liste von häufigen Angriffsvektoren ausgeliefert:
| Gesperrter Begriff | Zweck |
|---|---|
-1 OR |
SQL-Injection-Versuch |
-1' OR |
SQL-Injection-Versuch |
@@ |
SQL-Systemvariablen-Abfrage |
echo |
Code-Ausführungsversuch |
http |
URL-Injection |
perl |
Script-Injection |
nslookup |
DNS-Lookup-Injection |
test', test", test%' |
Anführungszeichen-Angriffe |
text', text", text%' |
Anführungszeichen-Angriffe |
1"" |
Anführungszeichen-Angriffe |
Diese Liste kann vollständig angepasst werden: Einträge können gelöscht oder durch eigene Begriffe ersetzt werden.
4 Funktionsweise¶
4.1 Filterlogik¶
Der Spam-Filter greift bei jeder Suchanfrage im Frontend ein, bevor Magento die Suchergebnisse abruft:
- Der Observer
ControllerActionPredispatchObserverwird auf das Ereigniscontroller_action_predispatchausgelöst. - Wenn der Spam-Filter deaktiviert ist, wird nichts unternommen.
- Wenn die aktuelle Aktion nicht
catalogsearch_result_indexist, wird nichts unternommen. - Der Suchbegriff (
q-Parameter in der URL) wird mit allen konfigurierten gesperrten Phrasen verglichen. - Enthält der Suchbegriff eine gesperrte Phrase, wird die Anfrage auf die 404-Seite weitergeleitet.
Wichtig: Die Filterung erfolgt ausschließlich auf der Storefront. Admin-Suchen und API-Aufrufe werden nicht gefiltert.
4.2 Weiterleitungsverhalten¶
Bei einer gesperrten Suchanfrage wird der Benutzer auf die Magento-Standard-404-Seite (noroute) weitergeleitet. Es wird keine Fehlermeldung angezeigt und keine Benutzerinformation hinterlassen — die Weiterleitung erfolgt transparent.
5 Fehlerbehandlung¶
-
Legitime Suchanfragen werden blockiert — Überprüfen Sie die Sperrliste unter Shops > Konfiguration > Katalog > Katalog > Katalogsuche Spam-Filter > Wörter / Zeichen. Entfernen Sie Einträge, die zu häufig in normalen Suchanfragen Ihrer Kunden vorkommen.
-
Spam-Suchanfragen werden nicht blockiert — Stellen Sie sicher, dass das Modul aktiviert ist und der Cache geleert wurde. Wenn neue Begriffe hinzugefügt wurden, ist ein Cache-Flush erforderlich (
php bin/magento cache:flush). -
Konfigurationsänderungen greifen nicht — Nach Änderungen an der Sperrliste muss der Magento-Cache geleert werden, damit die neuen Einstellungen wirksam werden.
Lizenz¶
Proprietär — CopeX GmbH. Eine Lizenz pro produktiver Magento-Instanz.
