Zawartość artykułu
Jak objawia się ta podatność?
Podatność może występować w wersji 1.6.1.4 lub/i starszej.
Wysyłane są masowe wiadomości z tytułem:
"wiadomość od [no_sync]"
W języku rosyjskim lub też inne tego typu maile.
W logach skrypt, który to wykorzystuje to:
/tools/swift/Swift/Plugin/MailSend.php (linia 160)
Dodatkowo, sklep może generować duże obciążenie pracy procesora, dużą liczbę uruchomionych procesów itp.
Obrazuje to poniższy screenshot:
Może to skutkować wręcz niedostępnością sklepu z uwagi na przekroczenie limitów np. narzuconych przez parametry konta hostingowego. Dodatkowo – administrator może zablokować wysyłkę e-maili z Twojego konta i sklep przestanie wysyłać wiadomości do Twoich klientów. Innym niebezpieczeństwem jest możliwość trafienia Twojego maila / domeny na czarne listy antyspamerskie i Twoje wiadomości – mogą nie docierać do klientów.
Naprawa sytuacji
Aby zaniechać tej sytuacji sprawdź najpierw jaką masz wersję Presta Shop. Dodatkowo upewnij się, że w folderze:
/tools/
Znajduje się folder swift o strukturze:
|-Swift | |-Cache | |-Authenticator | | |-PopB4Smtp | |-Events | |-Message | |-Plugin | | |-Decorator | | |-VerboseSending | |-Log | |-Connection | |-Iterator
Następnie należy wykonać aktualizację Presta Shop do najnowszej wersji.
Uwaga! W zależności od tego jak prawidłowo zaprogramowany jest Twój szablon – aktualizacja może wywołać jego rozsypanie. Przed podjęciem działań upewnij się, że w opcjach modułu do aktualizacji zaznaczona jest opcja „wykonaj kopię bezpieczeństwa bazy i plików”. Ewentualnie wykonaj ją we własnym zakresie, gdy np. masz dużą liczbę zdjęć produktów. Po wykonaniu aktualizacji sprawdź kluczowe kwestie na sklepie jak wyświetlanie się modułów, wysyłanie wiadomości przez formularz kontaktowy, wygląd poszczególnych kroków zamówienia itp.
Wejdź w zakładkę „Moduły” i znajdź moduł:
autoupgrade
Jeśli nie jest on zainstalowany – zainstaluj go. Możesz też pobrać MIRROR jeśli go nie posiadasz. Autorem modułu jest Presta Shop.
Następnie postępuj wg. instrukcji w nich zawartych. Po wykonanej aktualizacji powinieneś uzyskać wersję 1.6.1.18 (stan na czas publikacji tego artykułu), która powinna być odporna na tę podatność.
Uwaga, przed wykonaniem aktualizacji sprawdź jakie masz ustawienie w
Preferencje -> Wydajność -> Tryb debugowania -> Wyłącz wszystkie nadpisywania.
Po aktualizacji – upewnij się że to ustawienie jest takie samo.
Sytuacja po naprawie
Widać to po zużyciu serwera:
Ewidentnie po zastosowaniu aktualizacji – limity zasobów przestały być przekraczane.
Natomiast struktura w/w folderu swift powinna być inna:
|-dependency_maps |-classes | |-Swift | | |-KeyCache | | |-Transport | | | |-Esmtp | | | | |-Auth | | |-Mailer | | |-Plugins | | | |-Loggers | | | |-Decorator | | | |-Reporters | | | |-Pop | | |-Events | | |-StreamFilters | | |-CharacterStream | | |-Encoder | | |-Signers | | |-ByteStream | | |-CharacterReaderFactory | | |-Mime | | | |-ContentEncoder | | | |-Headers | | | |-HeaderEncoder | | |-CharacterReader
Gotowe! Napisz w komentarzu czy Ci to pomogło 🙂
Problem spamu pomimo google recaptcha występuje u mnie też na sklepie w wersji 1.6.1.7, na pewno do 1.6.1.4 podatność występowała?
Ciężko powiedzieć @Damian. U nas po aktualizacji od wersji 1.6.1.4 do 1.6.1.17 – pomogło.
Ja od dziś na nowo mam ten sam problem
Mimo aktualizacji?? Jaką wersję Presta Shop masz zainstalowaną?
1.6.1.17. Jestem na etapie wdrażania najnowszej. Zobaczymy czy .18 pomoże.
Niestey ale .24 nic nie dało
spam dalej sie wysyła.
@tomek sprawa nie jest taka prosta. Może SPAMem zajmuje się złośliwy skrypt na serwerze? Innym wyjściem jest też instalacja mechanizmu captcha przy formularzu kontaktowym
Witam,
Narazie poszedłem w strone geolokalizacji
nie wiem na ile to rozwiazanie jest trwałe, ale narazie pomogło po
zablokowaniu filipin i egiptu
To też jakieś wyjście:)
Witam,
“pomogło po
zablokowaniu filipin i egiptu”
Mam pytanie:
kod w .htaccess do tego jest krótki czy trzeba blokować wszystkie ip z danego kraju ?