Lista zmian — PrestaWard Captcha
Ta lista zmian podsumowuje, wersja po wersji, wpływ aktualizacji na sklepy i zespoły e-commerce.
0.2.7
- Nowość: tryb lokalny dla poszczególnych formularzy. Biuletyn, formularz kontaktowy oraz powiadomienia o dostępności można zabezpieczyć wyłącznie za pomocą lokalnych mechanizmów weryfikacyjnych (podpisany znacznik czasu, pole pułapkowe, minimalny czas wysyłania wynoszący 4 sekundy oraz limit wysyłek), bez konieczności ładowania skryptów od dostawców ani stosowania kluczy. Każdy formularz zachowuje swój tryb (Wyłączony, Obserwacja lub Ochrona) i przechodzi do trybu Ochrona dopiero po pomyślnym przejściu autotestu w trybie Obserwacji. Jest on mniej odporny na ukierunkowane ataki botów niż rozwiązanie dostawcy i nigdy nie jest udostępniany w przypadku dostępu, rejestracji, składania zamówień, odzyskiwania hasła, Back Office ani komentarzy. Statystyki pokazują, ile przesłanych danych z każdego formularza zostało sprawdzonych lokalnie. Strona wyświetlana z pamięci podręcznej, która była pełna przez ponad sześć godzin, może odrzucić przesłanie danych; ponowne załadowanie strony rozwiązuje ten problem.
- Nowość: zablokowane domeny pocztowe. Lista sporządzona przez Państwa (jedna reguła w każdym wierszu, dokładna domena lub symbol wieloznaczny dla jej subdomen, maksymalnie 100 reguł) ma zastosowanie do rejestracji klientów, również podczas procesu zakupu, oraz do newslettera. Sprawdzenie odbywa się przed nawiązaniem połączenia z dostawcą, a wiadomość e-mail, która pasuje do kryteriów, zostaje odrzucona wraz z neutralnym komunikatem, który nie ujawnia treści listy. W sekcji „Obserwacja” rejestrowane są wyłącznie te wiadomości, które zostałyby odrzucone. Nie zapisuje się ani samej wiadomości, ani jej domeny: jedynie licznik oraz zdarzenie bez danych osobowych dla każdego odrzucenia.
- Nowość: minimalna ocena reCAPTCHA v3 dla każdego formularza. Jeśli pozostawi się to pole puste, stosowana jest ocena ogólna, więc nic się nie zmienia, dopóki nie ustali się konkretnej wartości. Wprowadzenie nieprawidłowej wartości powoduje powrót do oceny ogólnej.
- Nowość: motyw (jasny, ciemny lub automatyczny) oraz rozmiar (normalny lub kompaktowy) widżetu reCAPTCHA v2 i Cloudflare Turnstile, również w Back Office. Wartości domyślne zachowują obecny wygląd; reCAPTCHA v3 oraz niewidoczna wersja reCAPTCHA v2 nie wyświetlają widżetu. W przypadku reCAPTCHA opcja „automatyczny” dostosowuje się do schematu kolorów odwiedzającego.
- Dostęp do Back Office korzysta z tego samego lokalnego mechanizmu zapasowego, co formularze klientów, wyłącznie w sytuacji, gdy dostawca jest niedostępny, a serwer to potwierdza. Dostawca, który zwrócił komunikat „weryfikacja nieudana”, jest nadal odrzucany zgodnie z dotychczasową procedurą. Każde użycie jest rejestrowane jako „fallback used”; przełącznik dla danego sklepu wyłącza tę funkcję, a tymczasowe zawieszenie operatora pozostaje aktywne. Ekran logowania nigdy nie zostaje zablokowany: skrypt zgłasza błąd do serwera, a następnie w każdym przypadku wysyła formularz. W przypadku awarii zabezpieczenie to jest mniej skuteczne w obliczu ukierunkowanego ataku botów; zaleca się utrzymanie aplikacji PrestaWard Authenticator jako drugiej bariery. Mechanizm zabezpieczający przed błędami integracji nadal nie ma wpływu na Back Office.
- Panel podzielony jest na zakładki („Podsumowanie”, „Powierzchnie”, „Dostawca” oraz „Statystyki i rejestr”) i uwzględnia wyłącznie aktualnie otwartą zakładkę. W zakładce „Podsumowanie” wyświetlany jest status każdego dostawcy, informacje o pomyślnych i nieudanych weryfikacjach z ostatnich 24 godzin, aktualny status każdego formularza oraz maksymalnie jeden wiersz ostrzeżenia, który przekierowuje do zakładki, w której problem został rozwiązany. Każda zakładka posiada własny przycisk „Zapisz” i zapisuje wyłącznie te ustawienia, które są w niej widoczne. Panel pomocy technicznej GO ON Agency posiada własną zakładkę „Pomoc techniczna”, która zawsze znajduje się jako ostatnia, a status Integrity jest wyświetlany na końcu wszystkich zakładek.
- Zmienia wygląd zakładki „Powierzchnie”: zgrupowano tabelę formularzy, dostosowano selektor tak, aby tekst nie był już ucięty (wcześniej wyświetlał się „Desa”), a przycisk „Zapisz” umieszczono poza kartą tymczasowego wstrzymania, tak aby jej nie nakładał się. Motyw i rozmiar widżetu można dostosować w jednej z sekcji tej zakładki.
- Poprawia komunikat „aktywowane formularze, które nie przeszły testu”: pojawiał się on w przypadku sześciu formularzy, mimo że wszystkie były wyłączone. Obecnie uwzględniane są wyłącznie formularze, które nie znajdują się w trybie „Wyłączony”.
- W nowych instalacjach powiadomienia e-mailowe o incydentach są wyłączone do momentu podania adresu, dzięki czemu konfigurację można zapisać od samego początku. Instalacje, które są aktualizowane, zachowują swoje ustawienia.
- Wiadomości e-mail dotyczące incydentów (otwartych i rozwiązanych) zawierają logo Państwa sklepu w nagłówku (z nazwą sklepu jako tekstem alternatywnym) oraz wspólną stopkę z logo GO ON Agency i podpisem „PrestaWard by GO ON Agency”, bez żadnych linków ani danych kontaktowych. Logo w stopce jest plikiem pochodzącym z samego modułu, udostępnianym z Państwa sklepu.
- Poprawia sytuację, w której treść wiadomości e-mail dotyczącej incydentu zawierała wewnętrzne kody (na przykład „configuration_test” lub „opened”): obecnie podaje się formularz, przyczynę oraz status za pomocą tekstów przetłumaczonych na dziewięć języków.
- Naprawia błąd, w wyniku którego nieprawidłowe wywołanie dostawcy powodowało zablokowanie formularza w interfejsie użytkownika; wywołania dostawcy ze skryptu sklepu są zabezpieczone tak samo jak te związane z dostępem do Back Office.
- Ujednolicony wygląd panelu we wszystkich czterech modułach PrestaWard: nagłówki sekcji, karty formularzy z neutralnymi obramowaniami i wspólne blokami rozwijanymi, statystyki wyświetlane w jednym wierszu oraz większe logo GO ON Agency w nagłówku. Główny przycisk otrzymuje jednolity kolor zgodny z identyfikacją wizualną marki, bez gradientu.
- Koryguje sytuację, w której w PrestaShop 9 motyw panelu administracyjnego wyświetlał zakładki z podkreśleniem jako linki, a tytuły sekcji były pisane wielkimi literami. Wspólne style neutralizują to zjawisko wyłącznie w panelu PrestaWard, dzięki czemu PrestaShop 1.7 i 8 wyglądają tak samo jak dotychczas.
- Naprawia błąd, w wyniku którego w PrestaShop 1.7 arkusz stylów modułu był odrzucany podczas rejestrowania go z numerem wersji w adresie. Obecnie plik jest sprawdzany i rejestrowany bez parametrów, dzięki czemu nowy wygląd pojawia się w wersjach 1.7, 8 i 9.
- Poprawia sytuację, w której w PrestaShop 9 synchronizacja z Integrity sprawdzała token bezpieczeństwa przy użyciu metody, której PrestaShop 9 nie stosuje, co mogło powodować odrzucenie. Obecnie weryfikacja odbywa się za pomocą usługi PrestaShop 9; w PrestaShop 1.7 i 8 sposób sprawdzania pozostaje bez zmian.
- Gdy połączenie z Integrity nie może zostać zaktualizowane w danym momencie, panel wyświetla jeden komunikat: zapisane połączenie pozostaje ważne i zostanie automatycznie ponowione. Etykiety wszystkich zakładek są przetłumaczone na dziewięć języków.
- Tryb lokalny posiada własny limit wysyłek (od 1 do 50 co 10 minut). Aktualizacja kopiuje aktualny limit z mechanizmu zapasowego, więc po aktualizacji nic się nie zmienia, a zmiana jednego z tych dwóch limitów nie powoduje już zmiany drugiego.
- Poprawia sytuację, w której w PrestaShop 9 odrzucony kod CAPTCHA (na przykład z powodu nieprawidłowego klucza serwisu w sekcji „Ochrona”) wyświetlał jedynie ogólny komunikat PrestaShop dotyczący pracownika lub hasła. Moduł wyświetla teraz własny komunikat we wszystkich wersjach; PrestaShop 9 nadal dodaje na końcu swój ogólny komunikat.
- Naprawia problem, w wyniku którego połączenie z Integrity ulegało pogorszeniu w kontekście „wszystkie sklepy” w Back Office lub gdy test rejestracji był obsługiwany przez sklep inny niż pierwszy. Identyfikator instalacji jest teraz odczytywany jako całość z zakresu globalnego (lub ze sklepu, w którym jest zapisany) w dowolnym kontekście; aktualizacja przenosi do zakresu globalnego identyfikator zapisany w sklepie bez jego ponownego generowania, a jeśli nie można go odczytać, stan Integrity pozostaje bez zmian.
- W nagłówku produktu ponownie wyświetla się logo GO ON Agency oraz podpis „PrestaWard by GO ON Agency”, bez linków.
- Dopóki korzystają Państwo z usług danego dostawcy, jego token jest nadal wymagany dokładnie tak samo jak dotychczas. Wykryte interfejsy, zapisane ustawienia oraz umowa z Integrity API pozostają bez zmian, a nowe sposoby odrzucania lub weryfikacji formularza (tryb lokalny i zablokowane domeny) są domyślnie wyłączone. Aktualizacja nie modyfikuje żadnej tabeli: dodaje jedynie nowe ustawienia o wartościach, które zachowują dotychczasowe zachowanie.
0.2.6
- Każdy formularz posiada w każdym sklepie własny tryb („Wyłączony”, „Obserwacja” lub „Ochrona”), zamiast jednego trybu dla całego sklepu z dodatkowymi przełącznikami. W ten sposób można zabezpieczyć dostęp do Back Office i ustawić formularz kontaktowy wyłącznie w trybie „Obserwacja”. Formularz przechodzi w tryb „Ochrona” dopiero po pozytywnym wyniku autotestu w trybie „Obserwacja”, a aktualizacja zachowuje dotychczasowe zachowanie każdego sklepu.
- Mechanizm zapasowy na wypadek awarii dostawcy (formularze klientów w trybie „Ochrona”): jeżeli serwer potwierdzi, że nie można skorzystać z reCAPTCHA lub Turnstile, formularz zostanie zaakceptowany wyłącznie pod warunkiem, że zawiera podpisany znacznik czasu, puste niewidoczne pole kontrolne, upłynęło kilka sekund od załadowania strony oraz zachowana jest normalna częstotliwość wysyłania danych. Każde użycie jest rejestrowane w statystykach. Funkcja ta jest domyślnie włączona, można ją wyłączyć dla poszczególnych sklepów, a Back Office nigdy z niej nie korzysta.
- Zmiana, na którą należy zwrócić uwagę: po włączeniu tej ochrony otwarty wyłącznik nie przepuszcza już wszystkich wysyłek, lecz stosuje te same lokalne weryfikacje. Aby zachować poprzednie zachowanie, można ją wyłączyć.
- Filtr wstępny na serwerze (tryb „Ochrona”): odrzuca oczywiste boty przed nawiązaniem połączenia z dostawcą, wyłącznie na podstawie jednoznacznych dowodów (wypełnione pole-pułapka, sfałszowany znacznik czasu, wysyłanie szybsze niż w przypadku osoby piszącej ręcznie lub ponad 30 wysyłek z jednego formularza na jednego odwiedzającego co 10 minut). Można go wyłączyć dla poszczególnych sklepów.
- Nowe kontrole nie przechowują żadnych danych umożliwiających identyfikację: odwiedzający są grupowani w anonimowej puli z kluczem zmieniającym się każdego dnia, wyłącznie w liczniku, który jest czyszczony po dwóch dniach.
- Nowy panel statystyk: wysyłki dopuszczone i zablokowane według formularza i dnia (7, 14 lub 30 dni), tendencja w porównaniu z poprzednim okresem, użycia mechanizmu zapasowego, żądania odrzucone przed dotarciem do dostawcy, wskaźnik potencjalnych fałszywych alarmów oraz, w trybie „Obserwacja” wysyłki, które zostałyby zablokowane. Nie zawiera adresów ani wiadomości e-mail.
- Formularze niestandardowe: formularz, który nie jest rozpoznawany automatycznie (proces realizacji zamówienia na jednej stronie, formularze motywu), można przypisać dla każdego sklepu do obszaru chronionego za pomocą selektora CSS (maksymalnie dziesięć). Panel ostrzega, że Ochrona działa skutecznie tylko wtedy, gdy formularz wysyła dane na stronę weryfikowaną przez moduł.
- Zabezpieczenie przed awariami integracji (formularze klientów w trybie „Ochrona”): jeśli formularz przestanie przesyłać token do serwera podczas działania dostawcy (z powodu aktualizacji motywu, własnego kodu JavaScript lub pamięci podręcznej strony), formularz samoczynnie przechodzi w tymczasowy tryb „Obserwacja”, a Państwo otrzymują incydent i wiadomość e-mail. System powraca do trybu „Ochrona” po upływie 15 minut bez wystąpienia problemu oraz po zweryfikowaniu trzech tokenów. Dostęp do Back Office nigdy nie jest zakłócany, a oczywiste boty są nadal odrzucane.
- Aktualizacja tworzy niewielką tabelę licznika oraz nowe ustawienia z bezpiecznymi wartościami, a także zachowuje istniejące ustawienia i zdarzenia.
- Panel pomocy technicznej i diagnostyki znajduje się tuż przed sekcją Integrity, podobnie jak w pozostałych modułach PrestaWard, i w kontekście „wszystkie sklepy” nie znika już: wskazuje on, że należy wybrać sklep.
- Synchronizacja z Integrity odbywa się przy każdym otwarciu panelu, za pomocą żądania w tle, które nigdy nie spowalnia działania strony, maksymalnie raz na minutę dla każdego sklepu.
0.2.5
- Naprawia usługę logowania do Back Office w PrestaShop 1.7. W PrestaShop 9 weryfikacja ogranicza się do formularza logowania do Back Office i nie ma wpływu na API administracyjne.
- Przestaje ponawiać próby rejestracji w Integrity po zmianie klucza rejestracyjnego sklepu i wyświetla wyraźny komunikat ostrzegawczy.
- Odnawia podpisaną politykę Integrity przed upływem jej ważności i zachowuje obowiązującą politykę w przypadku niepowodzenia odnowienia.
- Poprawia dołączony klucz polityki, aby działał w PHP 7.1 i 7.2.
- Dodaje panel pomocy technicznej GO ON Agency w dziewięciu językach wraz z raportem diagnostycznym do pobrania, który nie zawiera danych klientów ani nie jest wysyłany automatycznie. Raport ten może pobrać wyłącznie pracownik posiadający uprawnienia do edycji, który wybrał konkretny sklep.
- Rzeczywiście stosowany jest okres przechowywania rejestrów technicznych (domyślnie 30 dni, konfigurowalny dla każdego sklepu): dotychczas były one przechowywane bez ograniczeń. Każdy sklep codziennie usuwa wygasłe rejestry, a nie ma to wpływu na incydenty.
- Deklaruje zgodność z PrestaShop 1.7.7.0, najstarszą przetestowaną wersją.
0.2.4
- Poprawia proces przesyłania danych logowania administratora za pomocą Turnstile po rozwiązaniu CAPTCHA, zachowując przycisk, który zainicjował przesyłanie.
- Poprawia test rejestracji w PrestaShop 9 oraz ulepsza diagnostykę i ponowne próby Integrity.
0.2.3
- Wersja nieopublikowana, zastąpiona wersją 0.2.4.
0.2.2
- Zapobiega sytuacji, w której inne skrypty JavaScript motywu rozpoczynają wysyłanie danych, podczas gdy CAPTCHA pozostaje nadal nierozwiązana.
- Eliminuje niekończące się stany ładowania oraz żądania wysyłane przed uzyskaniem ważnego tokenu.
- Wyświetla CAPTCHA po otwarciu formularzy logowania lub rejestracji, które były ukryte podczas ładowania strony.
0.2.1
- Przywraca widoczny CAPTCHA przed pierwszą próbą logowania w interfejsie użytkownika (Front Office) oraz w panelu administracyjnym (Back Office).
- Zapobiega to wyświetlaniu przez pamięć podręczną starego lub nieprawidłowego CAPTCHA po aktualizacji modułu.
- Zastępuje wyskakujące okienko ostrzeżeniem, które jest dostępne, widoczne i dostosowane do urządzeń mobilnych.
- Pozostawia błędy Back Office na ekranie logowania w postaci pojedynczy komunikat o błędzie, bez pustych stron.
0.2.0
- Dodaje Cloudflare Turnstile z zaszyfrowanymi danymi uwierzytelniającymi oraz niezależnym wyborem według powierzchni.
- Wiąże każdy token z chronioną akcją i odświeża wyzwanie przy powtarzanych wysyłkach.
- Ulepsza wykrywanie formularzy logowania, rejestracji, odzyskiwania hasła, realizacji zamówienia, newsletterów oraz powiadomień.
- Wprowadza tymczasową, ograniczoną i objętą audytem pauzę operacyjną, bez osłabiania podpisanej polityki Integrity.
- Aktualizuje panel, jego responsywny układ oraz tłumaczenia na dziewięć języków.
- Wzmacnia trwałość w trybie „fail-closed” ostatniej zweryfikowanej polityki Integrity.
0.1.2
- Rozróżnia automatyczne fale zdarzeń od awarii operacyjnych i zapobiega powielaniu alertów.
- Automatycznie zamyka incydenty dotyczące ruchu zautomatyzowanego po okresie wyciszenia.
0.1.1
- Sprawdzenie dostępności według powierzchni przed aktywacją funkcji „Ochrona”.
- Stan operacyjny, historia incydentów, filtry, paginacja i czyszczenie.
- Ograniczona telemetria stanu oraz integracja z funkcją „heartbeat” Integrity.
0.1.0
- Pierwsza publiczna wersja kandydacka.
- Niezależna ochrona dla poszczególnych powierzchni i sklepów.
- Integracja z reCAPTCHA v2 i v3.
- Rejestracja, podpisana polityka oraz heartbeat PrestaWard Integrity.
- Sprawdzanie dostępności aktualizacji oraz spójny wygląd ekosystemu.
- Obsługa wielu wersji oraz pełny katalog w dziewięciu językach.