Änderungsprotokoll — PrestaWard Captcha
Dieses Changelog fasst Version für Version die Auswirkungen auf Shops und E-Commerce-Teams zusammen.
0.2.7
- Neu: Lokaler Modus pro Formular. Der Newsletter, das Kontaktformular und die Verfügbarkeitsbenachrichtigungen können ausschließlich durch lokale Prüfungen geschützt werden (signierter Zeitstempel, Fangfeld, Mindestversandzeit von 4 Sekunden und Versandlimit), ohne dass ein Skript eines Anbieters geladen werden muss oder Schlüssel erforderlich sind. Jedes Formular behält seinen Modus bei (Deaktiviert, Beobachtung oder Schutz) und wechselt erst in den Schutzmodus, nachdem es den Selbsttest im Beobachtungsmodus bestanden hat. Es ist gegenüber gezielten Bots weniger sicher als ein Anbieter und wird niemals für Zugänge, Registrierungen, Bestellungen, Passwortwiederherstellungen, Backoffice-Funktionen oder Kommentare angeboten. Die Statistiken zeigen, wie viele Übermittlungen jedes Formulars lokal überprüft wurden. Eine Seite, die aus einem seit mehr als sechs Stunden vollständigen Cache bereitgestellt wird, kann die Übermittlung ablehnen; ein Neuladen der Seite behebt dieses Problem.
- Neu: Gesperrte E-Mail-Domains. Eine von Ihnen erstellte Liste (eine Regel pro Zeile, eine exakte Domain oder ein Platzhalter für deren Subdomains, bis zu 100 Regeln) wird auf die Kundenregistrierung – auch während des Kaufvorgangs – sowie auf den Newsletter angewendet. Der Abgleich erfolgt vor der Abfrage beim Provider, und eine übereinstimmende E-Mail wird mit einer neutralen Meldung abgelehnt, die keinen Hinweis auf die Liste gibt. Im Status „Beobachtung“ wird lediglich erfasst, was abgelehnt worden wäre. Weder die E-Mail noch deren Domain werden gespeichert: lediglich ein Zähler und ein Ereignis ohne personenbezogene Daten für jede Ablehnung.
- Neu: Mindestpunktzahl für reCAPTCHA v3 pro Formular. Wenn Sie dieses Feld leer lassen, wird die Gesamtpunktzahl verwendet, sodass sich nichts ändert, bis Sie einen Wert festlegen. Bei einem ungültigen Wert wird wieder die Gesamtpunktzahl verwendet.
- Neu: Design (hell, dunkel oder automatisch) und Größe (normal oder kompakt) des Widgets für reCAPTCHA v2 und Cloudflare Turnstile, auch beim Zugriff auf das Backoffice. Die Standardwerte behalten das aktuelle Erscheinungsbild bei; bei reCAPTCHA v3 und unsichtbarem reCAPTCHA v2 wird kein Widget angezeigt. Bei reCAPTCHA passt sich die Option „Automatisch“ dem Farbschema des Besuchers an.
- Der Zugriff auf das Backoffice nutzt dieselbe lokale Ausweichlösung wie die Kundenformulare, jedoch nur solange der Anbieter nicht verfügbar ist und der Server dies bestätigt. Ein Anbieter, der mit „Überprüfung fehlgeschlagen“ geantwortet hat, wird weiterhin wie gewohnt abgelehnt. Jede Nutzung wird als „Fallback verwendet“ protokolliert; ein Schalter pro Shop deaktiviert diese Funktion, und die vorübergehende Sperre des Betreibers bleibt bestehen. Der Anmeldebildschirm bleibt niemals gesperrt: Das Skript meldet den Fehler an den Server und sendet das Formular anschließend in jedem Fall ab. Während eines Ausfalls ist dieser Zugriff gegenüber einem gezielten Bot anfälliger; es empfiehlt sich, den PrestaWard Authenticator als zweite Sicherheitsbarriere beizubehalten. Die Integrationsfehlerüberwachung hat weiterhin keine Auswirkungen auf das Backoffice.
- Das Dashboard ist in Registerkarten unterteilt („Übersicht“, „Oberflächen“, „Anbieter“ sowie „Statistiken und Protokoll“) und berücksichtigt nur die aktuell geöffnete Registerkarte. Die Registerkarte „Übersicht“ zeigt den Status jedes Anbieters, die erfolgreichen und fehlgeschlagenen Überprüfungen der letzten 24 Stunden, den aktuellen Status jedes Formulars sowie maximal eine Warnzeile an, die zu der Registerkarte führt, auf der das Problem behoben wird. Jede Registerkarte verfügt über eine eigene Schaltfläche „Speichern“ und speichert ausschließlich die dort angezeigten Einstellungen. Das Support-Panel von GO ON Agency verfügt über eine eigene Registerkarte „Support“, die immer an letzter Stelle steht, und der Status von Integrity wird am Ende aller Registerkarten angezeigt.
- Die Registerkarte „Oberflächen“ wurde neu gestaltet: gruppierte Formulartabelle, Auswahlfeld, bei dem der Text nun nicht mehr abgeschnitten wird (zuvor wurde „Desa“ angezeigt), und die Schaltfläche „Speichern“ befindet sich außerhalb der Karte für die vorübergehende Pause, ohne diese zu überlappen. Das Design und die Größe des Widgets lassen sich in einem Abschnitt dieser Registerkarte anpassen.
- Korrektur der Meldung „Aktivierte Formulare, die den Test nicht bestanden haben“: Diese wurde bei sechs Formularen angezeigt, obwohl alle deaktiviert waren. Nun werden nur noch die Formulare gezählt, die sich nicht im Modus „Deaktiviert“ befinden.
- Bei Neuinstallationen sind die E-Mail-Benachrichtigungen zu Störungen deaktiviert, bis Sie eine E-Mail-Adresse angeben, sodass die Konfiguration von Anfang an gespeichert werden kann. Bei aktualisierten Installationen bleiben die Einstellungen erhalten.
- Die E-Mails zu Supportanfragen (offene und gelöste) zeigen das Logo Ihres Shops in der Kopfzeile (mit dem Namen des Shops als Alternativtext) und eine einheitliche Fußzeile mit dem Logo von GO ON Agency sowie der Signatur „PrestaWard by GO ON Agency“, ohne Links oder Kontaktadressen. Das Logo in der Fußzeile ist eine Datei des Moduls selbst, die von Ihrem Shop bereitgestellt wird.
- Es wurde korrigiert, dass im Textkörper der Fehlermeldung interne Codes (z. B. „configuration_test“ oder „opened“) angezeigt wurden: Nun werden das Formular, die Ursache und der Status mit Texten angegeben, die in die neun Sprachen übersetzt sind.
- Behebt einen Fehler, durch den ein Aufruf des Anbieters dazu führte, dass ein Formular im Frontoffice blockiert wurde; die Aufrufe des Anbieters durch das Shop-Skript sind nun ebenso geschützt wie diejenigen für den Zugriff auf das Backoffice.
- Einheitliches Erscheinungsbild des Dashboards in allen vier PrestaWard-Modulen: Abschnittsüberschriften, Formularfelder mit neutralen Rahmen und einheitliche ausklappbare Blöcke, einzeilige Statistiken sowie ein größeres Logo der GO ON Agency in der Kopfzeile. Die Hauptschaltfläche erhält nun eine einheitliche Farbe der Marke ohne Farbverlauf.
- Behebt das Problem, dass in PrestaShop 9 die Registerkarten im Administrationsbereich als unterstrichene Links und die Abschnittsüberschriften in Großbuchstaben angezeigt wurden. Die allgemeinen Stile heben diesen Effekt nur innerhalb des PrestaWard-Panels auf, sodass PrestaShop 1.7 und 8 unverändert wie zuvor dargestellt werden.
- Behebt das Problem, dass in PrestaShop 1.7 das Stylesheet des Moduls beim Registrieren mit der Versionsnummer in der Adresse verworfen wurde. Nun wird die Datei überprüft und ohne Parameter registriert, sodass das neue Erscheinungsbild in den Versionen 1.7, 8 und 9 angezeigt wird.
- Behebt das Problem, dass in PrestaShop 9 die Synchronisierung mit Integrity das Sicherheitstoken mit einer Methode überprüft, die PrestaShop 9 nicht verwendet, wodurch es möglicherweise abgelehnt wird. Die Validierung erfolgt nun über den Dienst von PrestaShop 9; in PrestaShop 1.7 und 8 bleibt die Überprüfung unverändert.
- Wenn die Verbindung zu Integrity derzeit nicht aktualisiert werden kann, zeigt das Dashboard eine einzige Meldung an: Die gespeicherte Verbindung ist weiterhin gültig und der Versuch wird automatisch wiederholt. Die Bezeichnungen aller Registerkarten sind in die neun Sprachen übersetzt.
- Der lokale Modus verfügt über ein eigenes Limit für Übertragungen (1 bis 50 alle 10 Minuten). Bei der Aktualisierung wird das aktuelle Limit aus der Sicherungskopie übernommen, sodass sich nach der Aktualisierung nichts ändert; außerdem bewirkt die Änderung eines der beiden Limits keine Änderung des anderen.
- Behebt das Problem, dass in PrestaShop 9 bei einem abgelehnten Captcha (z. B. aufgrund eines ungültigen Website-Schlüssels unter „Schutz“) lediglich die allgemeine Meldung von PrestaShop bezüglich des Benutzernamens oder des Passworts angezeigt wurde. Das Modul zeigt nun in allen Versionen eine eigene Meldung an; PrestaShop 9 fügt anschließend weiterhin seine allgemeine Zeile hinzu.
- Behebt das Problem, dass die Verbindung zu Integrity im Kontext „Alle Shops“ des Backoffice oder dann beeinträchtigt wurde, wenn ein anderer Shop als der erste den Test der Registrierung bereitstellte. Die Installations-ID wird nun in jedem Kontext als Einheit aus dem globalen Bereich (oder aus dem Shop, in dem sie gespeichert ist) gelesen; bei der Aktualisierung wird eine in einem Shop gespeicherte ID ohne Neugenerierung in den globalen Bereich übertragen, und falls sie nicht gelesen werden kann, bleibt der Status von Integrity unverändert.
- In der Produktkopfzeile werden wieder das Logo von GO ON Agency und der Vermerk „PrestaWard by GO ON Agency“ ohne Links angezeigt.
- Solange Sie einen Anbieter nutzen, wird dessen Token weiterhin genau wie bisher verlangt. Die erkannten Oberflächen, die gespeicherten Einstellungen und der Vertrag mit der Integrity-API bleiben unverändert, und die neuen Möglichkeiten zum Ablehnen oder Überprüfen eines Formulars (lokaler Modus und gesperrte Domains) sind standardmäßig deaktiviert. Das Update nimmt keine Änderungen an Tabellen vor: Es fügt lediglich neue Einstellungen mit Werten hinzu, die das derzeitige Verhalten beibehalten.
0.2.6
- Jedes Formular verfügt in jedem Shop über einen eigenen Modus („Deaktiviert“, „Beobachtung“ oder „Schutz“), anstatt eines einheitlichen Modus für den gesamten Shop mit zusätzlichen Schaltflächen. Auf diese Weise können Sie den Zugriff auf das Backoffice schützen und das Kontaktformular lediglich beobachten. Ein Formular wechselt erst in den Schutzmodus, nachdem es den Selbsttest im Beobachtungsmodus bestanden hat, und das Update behält das aktuelle Verhalten jedes Shops bei.
- Schutz bei Ausfall des Anbieters (Kundenformulare im Schutzmodus): Wenn der Server bestätigt, dass reCAPTCHA oder Turnstile nicht verwendet werden können, wird das Formular nur akzeptiert, wenn es einen signierten Zeitstempel, ein leeres, unsichtbares Honeypot-Feld, einige Sekunden seit dem Laden der Seite und eine normale Übermittlungsrate aufweist. Jede Nutzung wird in den Statistiken erfasst. Diese Funktion ist standardmäßig aktiviert, kann jedoch pro Shop deaktiviert werden, und der Zugriff auf das Backoffice nutzt sie niemals.
- Zu beachtende Änderung: Wenn dieser Schutz aktiviert ist, lässt ein geöffneter Circuit Breaker nicht mehr alle Übermittlungen durch, sondern wendet dieselben lokalen Prüfungen an. Deaktivieren Sie diese Funktion, um das bisherige Verhalten beizubehalten.
- Vorfilter auf dem Server (Schutzmodus): Weist offensichtliche Bots ab, bevor der Anbieter angerufen wird, ausschließlich bei positiven Tests (ausgefülltes Fangfeld, gefälschter Zeitstempel, Absenden schneller, als es ein Mensch tun würde, oder mehr als 30 Absendungen pro Formular und Besucher alle 10 Minuten). Kann pro Shop deaktiviert werden.
- Die neuen Prüfungen speichern keine identifizierbaren Daten: Die Besucher werden in einem anonymen Datensatz mit einem täglich wechselnden Schlüssel zusammengefasst, lediglich in einem Zähler, der nach zwei Tagen gelöscht wird.
- Neues Statistik-Dashboard: zugelassene und blockierte Übermittlungen nach Formular und Tag (7, 14 oder 30 Tage), Trend im Vergleich zum Vorzeitraum, Aktivierungen des Schutzes bei Ausfall des Anbieters, vor dem Anbieter abgelehnte Anfragen, ein Indikator für mögliche Fehlalarme sowie im Beobachtungsmodus die Übermittlungen, die blockiert worden wären. Es enthält weder Adressen noch E-Mails.
- Benutzerdefinierte Formulare: Ein Formular, das nicht automatisch erkannt wird (einseitiger Checkout, Formulare des Themes), kann pro Shop über einen CSS-Selektor einer geschützten Oberfläche zugewiesen werden (bis zu zehn). Das Dashboard weist darauf hin, dass der Schutz nur wirksam ist, wenn das Formular seine Daten an eine Seite übermittelt, die vom Modul überprüft wird.
- Integrationsfehlerüberwachung (Kundenformulare unter „Schutz“): Wenn ein Formular dem Server kein Token mehr übermittelt, während der Anbieter weiterhin funktioniert (aufgrund eines Theme-Updates, benutzerdefinierten JavaScripts oder des Seiten-Caches), wechselt dieses Formular von selbst vorübergehend in den Status „Beobachtung“, und Sie erhalten eine Störmeldung sowie eine E-Mail. Nach 15 Minuten ohne das Problem und drei verifizierten Tokens wird der Schutz wiederhergestellt. Der Zugriff auf das Backoffice ist davon nie beeinträchtigt, und offensichtliche Bots werden weiterhin abgelehnt.
- Das Update erstellt eine kleine Zählertabelle und neue Einstellungen mit sicheren Werten und behält die bestehenden Einstellungen und Ereignisse bei.
- Das Support- und Diagnose-Panel wird – wie bei allen anderen PrestaWard-Modulen – direkt vor dem Abschnitt Integrity platziert und verschwindet im Kontext „Alle Shops“ nicht mehr: Es weist darauf hin, dass ein Shop ausgewählt werden muss.
- Die Synchronisierung mit Integrity erfolgt bei jedem Öffnen des Panels über eine Hintergrundanfrage, die die Seite niemals verlangsamt und höchstens einmal pro Minute und Shop durchgeführt wird.
0.2.5
- Behebt einen Fehler im Anmeldedienst des Backoffice in PrestaShop 1.7. In PrestaShop 9 beschränkt sich die Überprüfung auf das Anmeldeformular des Backoffice und hat keine Auswirkungen auf die Verwaltungs-API.
- Beendet die wiederholten Registrierungsversuche bei Integrity, sobald sich der Registrierungsschlüssel des Shops ändert, und zeigt eine eindeutige Meldung an.
- Erneuert die signierte Integrity-Richtlinie, bevor sie abläuft, und behält die geltende Richtlinie bei, falls eine Verlängerung fehlschlägt.
- Korrigiert den enthaltenen Richtlinien-Schlüssel, damit er unter PHP 7.1 und 7.2 funktioniert.
- Fügt das Support-Panel der GO ON Agency in neun Sprachen hinzu, einschließlich eines herunterladbaren Diagnoseberichts, der keine Kundendaten enthält und nicht automatisch versendet wird. Er wird ausschließlich von einem Mitarbeiter mit Bearbeitungsberechtigung und für einen ausgewählten Shop heruntergeladen.
- Die Aufbewahrungsfrist für technische Protokolle wird nun tatsächlich angewendet (standardmäßig 30 Tage, pro Shop konfigurierbar): Bislang wurden diese unbegrenzt gespeichert. Jeder Shop löscht täglich abgelaufene Protokolle, wobei die Vorfälle davon unberührt bleiben.
- Gibt die Kompatibilität ab PrestaShop 1.7.7.0 an, der ältesten getesteten Version.
0.2.4
- Korrigiert das Absenden des Administrator-Logins mit Turnstile nach dem Lösen des CAPTCHA, wobei die Schaltfläche, die das Absenden ausgelöst hat, beibehalten wird.
- Korrigiert den Test der Registrierung in PrestaShop 9 und verbessert die Diagnose sowie die Wiederholungsversuche von Integrity.
0.2.3
- Nicht veröffentlichte Version, ersetzt durch 0.2.4.
0.2.2
- Verhindert, dass andere JavaScript-Handler des Themes die Übermittlung starten, solange das CAPTCHA noch aussteht.
- Beseitigt endlose Ladezustände und Anfragen, die vor dem Vorliegen eines gültigen Tokens gestellt werden.
- Zeigt das CAPTCHA an, wenn Anmelde- oder Registrierungsformulare geöffnet werden, die beim Laden der Seite ausgeblendet waren.
0.2.1
- Stellt das sichtbare CAPTCHA vor dem ersten Zugriffsversuch im Frontoffice und im Backoffice wieder her.
- Verhindert, dass der Cache nach der Aktualisierung des Moduls ein veraltetes oder falsches CAPTCHA anzeigt.
- Ersetzt das Popup durch eine barrierefreie, gut sichtbare und für Mobilgeräte optimierte Warnmeldung.
- Stellt sicher, dass Fehler im Backoffice auf dem Anmeldebildschirm als einzelner Fehler angezeigt werden, ohne dass leere Seiten erscheinen.
0.2.0
- Fügt Cloudflare Turnstile mit verschlüsselten Anmeldedaten und einer unabhängigen Auswahl nach Oberfläche hinzu.
- Verknüpft jedes Token mit der entsprechenden geschützten Aktion und erneuert die Herausforderung bei wiederholten Übermittlungen.
- Verbessert die Erkennung von Formularen für Anmeldung, Registrierung, Passwortwiederherstellung, Kaufabwicklung, Newsletter und Benachrichtigungen.
- Führt eine vorübergehende, begrenzte und auditierte Betriebspause ein, ohne die signierte Integrity-Richtlinie abzuschwächen.
- Aktualisiert das Dashboard, dessen responsives Design sowie die Übersetzungen in die neun Sprachen.
- Verstärkt die „fail-closed“-Persistenz der zuletzt überprüften Integrity-Richtlinie.
0.1.2
- Unterscheidet automatisierte Spitzen von Betriebsstörungen und vermeidet doppelte Warnmeldungen.
- Schließt Vorfälle mit automatisiertem Datenverkehr nach einer Ruhephase automatisch.
0.1.1
- Verfügbarkeitsprüfungen nach Oberfläche, bevor der Schutz aktiviert werden kann.
- Betriebsstatus, Fehlerprotokoll, Filter, Paginierung und Bereinigung.
- Eingeschränkte Zustandsüberwachung und Integration mit dem „Heartbeat“ von Integrity.
0.1.0
- Erste öffentliche Release-Kandidaten-Version.
- Unabhängiger Schutz pro Oberfläche und Shop.
- Integration mit reCAPTCHA v2 und v3.
- Registrierung, signierte Richtlinie und Heartbeat von PrestaWard Integrity.
- Überprüfung auf Updates und einheitliche visuelle Darstellung im gesamten Ökosystem.
- Kompatibilität mit mehreren Versionen und vollständiger Katalog in neun Sprachen.