Bezpieczeństwo PrestaShop: luka PHPUnit i złośliwe oprogramowanie

Seguridad Prestashop: Vulnerabilidad Malware PHPUnit
Niedawno wykryto lukę w zabezpieczeniach sklepów na PrestaShopie 1.6 i 1.7, którą zgłosił Francis Ladeuil. Można ją wykorzystać, by uzyskać dostęp do całego sklepu internetowego i przejąć nad nim kontrolę za pomocą złośliwego oprogramowania, dlatego trzeba potraktować ją z należytą powagą. W Línea Gráfica przygotowaliśmy moduł, który pozwoli Państwu sprawdzić podatność Państwa sklepu i usunąć zagrożenie. Jeśli chcą Państwo dowiedzieć się więcej o tym złośliwym oprogramowaniu, o module i o bezpieczeństwie PrestaShopa, zapraszamy do dalszej lektury.

Napraw lukę

Luka w zabezpieczeniach PrestaShop

Atakujący wykorzystują lukę w PHPUnit do wykonywania dowolnego kodu na serwerach z witrynami opartymi na PrestaShopie i przejmowania pełnej kontroli nad stroną. Podatne są wszystkie wersje PHPUnit wcześniejsze niż 7.5.19 i 8.5.1. Co może się stać, jeśli atakujący dostanie się do Państwa witryny? Może wykraść Państwa dane i dane Państwa klientów, szkodząc wizerunkowi firmy i jej wynikom. Dlatego warto sprawdzić, czy na serwerze FTP sklepu znajduje się katalog o nazwie „phpunit”, bo to właśnie on, jak już wspomnieliśmy, naraża witrynę na ten atak. To biblioteka deweloperska, która nie jest potrzebna do normalnego działania strony, więc jej usunięcie to najlepszy sposób, by zapobiec atakowi.

Moduł PrestaShop do sprawdzania podatności PHPUnit

Aby sprawdzić, czy Państwa witryna jest podatna na te ataki, w Línea Gráfica przygotowaliśmy moduł PrestaShop 1.6 i 1.7 do sprawdzania podatności PHPUnit, który przeanalizuje wszystkie pliki tej biblioteki (phpunit) i pozwoli trwale je usunąć, eliminując potencjalne zagrożenie. Można to zrobić ręcznie, ale przy dużej liczbie modułów jest to bardzo czasochłonne, dlatego warto skorzystać z nowego modułu Línea Gráfica. Jak działa moduł do sprawdzania podatności PHPUnit? Automatycznie skanuje wszystkie możliwe katalogi PrestaShopa oraz wszystkie zainstalowane moduły w poszukiwaniu biblioteki PHPUnit. Po zakończeniu wyświetla listę znalezionych bibliotek i daje możliwość ich usunięcia. Co ważne, to moduł całkowicie darmowy. Jeśli nie zostanie znaleziony żaden moduł zawierający folder „phpunit”, Państwa sklep nie jest podatny na tego typu ataki.

Zainfekowany sklep internetowy

Nawet jeśli przeprowadzimy tę analizę i usuniemy katalogi, które narażają witrynę na atak, sklep mógł już wcześniej zostać zainfekowany. Większość atakujących podrzuca nowe pliki lub modyfikuje istniejące – i właśnie po tym poznamy, czy witryna jest lub była celem ataku. Należy dokładnie sprawdzić, czy atakujący nie zostawił na serwerze żadnych plików. Z artykułu opublikowanego przez PrestaShop na temat tej luki w zabezpieczeniach przytaczamy poniższą listę podejrzanych plików, które może zawierać zainfekowany sklep internetowy:
  • XsamXadoo_Bot.php
  • XsamXadoo_deface.php
  • 0x666.php
  • f.php
  • Xsam_Xadoo.html
W razie wątpliwości należy zmienić hasła wszystkich administratorów sklepu i rozważyć poproszenie klientów o to samo. Wcześniej jednak należy upewnić się za pomocą naszego modułu do sprawdzania podatności PHPUnit, że w sklepie nie ma żadnych zainfekowanych plików, aby uniknąć kolejnego ataku.

Moduły PrestaShop, których dotyczy luka

Według wspomnianego wcześniej artykułu luka dotyczy kilku modułów:
  • Aktualizacja jednym kliknięciem (1-Click Upgrade): wersje 4.0 beta i nowsze
  • Cart Abandonment Pro: wersje 2.0.1 ~ 2.0.2
  • Wyszukiwanie fasetowe (Faceted Search): wersje 2.2.1 ~ 3.0.0
  • Merchant Expertise: wersje 2.1.0 i nowsze
  • PrestaShop Checkout: wersje 1.0.8 ~ 1.0.9
PrestaShop wydał nowe wersje tych modułów, z których całkowicie usunięto bibliotekę związaną z tym zagrożeniem i luką: v4.10.1, v2.0.10, v3.4.1, v2.3.2 i v1.2.9, odpowiednio w kolejności z powyższej listy. Warto jednak pamiętać, że jeśli kiedykolwiek zainstalowano wcześniejsze, podatne wersje, pliki PHPUnit najpewniej nadal znajdują się na serwerze. Trzeba je usunąć, bo sama instalacja zaktualizowanych wersji nie wystarczy.

Działania PrestaShop w zakresie bezpieczeństwa

W związku z tą sytuacją PrestaShop podjął szereg działań dotyczących tej luki. Wszyscy partnerzy zostali poinformowani i powinni byli starannie zabezpieczyć obsługiwane przez siebie sklepy. Ponadto, jak wspomnieliśmy wyżej, moduły, których dotyczyła luka, zostały zaktualizowane i są już bezpieczne. PrestaShop sprawdza wszystkie moduły pod kątem obecności podatnego folderu „phpunit”. Bezpieczeństwo Państwa sklepu jest dla nas najważniejsze – pomagamy ograniczyć skutki i ryzyko ataków złośliwego oprogramowania. Zapraszamy do zapoznania się z pozostałymi modułami PrestaShop oferowanymi przez Línea Gráfica – dzięki nim zagrożenia pozostaną z dala od Państwa witryny. Przy okazji rozwiną Państwo możliwości swojego sklepu internetowego.
Miguel Pineda
Zaktualizowano