Atakujący wykorzystują lukę w popularnej zależności wykorzystywanej przez moduły do przejęcia kontroli nad witrynami PrestaShop.
7 stycznia na witrynie build (https://build.prestashop.com/news/critical-security-vulnerability-in-prestashop-modules/) ogłoszono poważną lukę, którą zgłosił Francis Ladeuil.
Zauważono, że osoby atakujące wykorzystują lukę w zabezpieczeniach PHPUnit w celu wykonania dowolnego kodu na serwerach z witrynami PrestaShop.
Problem został rozwiązany w PHPUnit 7.5.19 i 8.5.1. Według naszej wiedzy wszystkie poprzednie wersje są podatne na atak, przynajmniej w przypadku niektórych konfiguracji serwerów.
Jak sprawdzić podatność
Połącz się ze swoim sklepem przez FTP lub dostęp do powłoki i spójrz na katalog „vendor” w głównym folderze prestashop i wewnątrz każdego z modułów:
Jeśli w wyżej wymienionych katalogach znajduje się katalog o nazwie „phpunit”, twój sklep może być narażony na ataki.
PHPUnit
PHPUnit jest biblioteką programistyczną i nie jest potrzebna do normalnego funkcjonowania witryny, więc możesz po prostu usunąć wszystkie wyżej wymienione katalogi „phpunit”. To powinno pomóc zamknąć wektor ataku.
Na serwerze Linux można to zrobić szybko za pomocą następującego wiersza poleceń bash z modułów / folderu sklepu:
find . -type d -name „phpunit” -exec rm -rf {} \;
To polecenie wymaga odpowiednich uprawnień użytkownika.
Możesz także usunąć foldery „phpunit” ręcznie przez FTP.
Pamiętaj, że nawet jeśli wykonasz to czyszczenie, twój sklep mógł zostać już zagrożony.
Według naszej analizy większość atakujących umieszcza nowe pliki w systemie plików lub modyfikuje istniejące pliki, takie jak AdminLoginController.php.
Oto niewyczerpująca lista znanych złośliwych plików, które mogą wskazywać na zaatakowany sklep:
Nazwa pliku
XsamXadoo_Bot.php md5: 0890e346482060a1c7d2ee33c2ee0415 lub b2abcadb37fdf9fb666f10c18a9d30ee
XsamXadoo_deface.php md5: 05fb708c3820d41c95e34f0a243b395e
0x666.php md5: edec4c4185ac2bdb239cdf6e970652e3
f.php md5: 45245b40556d339d498aa0570a919845
Możesz sprawdzić, czy pliki Core PrestaShop zostały zmodyfikowane, patrząc na sekcję „Lista zmienionych plików” u dołu strony „Parametry zaawansowane> Informacje” w Back Office. Ta kontrola może jednak nie wystarczyć, ponieważ w przeciwnym razie Twoja witryna mogła zostać naruszona.
Jeśli Twój sklep został przejęty lub uważasz, że został przejęty:
Uważnie sprawdź, czy osoba atakująca nie pozostawiła żadnych plików na twoim serwerze, np. Ukrytych w środku twoich plików sklepowych i / lub skontaktuj się z ekspertem, aby zrobić to za Ciebie.
Zastanów się, czy nie poprosić wszystkich użytkowników Twojego sklepu (ów) o zmianę hasła, w tym użytkowników back office, ale także kont klientów. Upewnij się, że w Twoim sklepie nie ma jeszcze żadnego skompromitowanego pliku.
Jeśli uważasz, że Twoja witryna została zaatakowana przez hakera, skontaktuj się z ekspertem ds. Bezpieczeństwa.
Moduły PrestaShop
Wpływ na niektóre moduły:
Aktualizacja 1-Click (automatyczna aktualizacja): wersje 4.0 beta i nowsze
Cart Abandonment Pro (pscartabandonmentpro): wersje 2.0.1 ~ 2.0.2
Wyszukiwanie fasetowane (ps_facetedsearch): wersje 2.2.1 ~ 3.0.0
Merchant Expertise (gamification): wersje 2.1.0 i nowsze
PrestaShop Checkout (ps_checkout): wersje 1.0.8 ~ 1.0.9
Wydaliśmy zaktualizowane wersje dla tych modułów, które całkowicie usuwają powiązaną bibliotekę z ich własnych zależności:
Aktualizacja 1-Click: v4.10.1
Cart Abandonment Pro: v2.0.10
Wyszukiwanie fasetowe: v3.4.1
Specjalizacja handlowa: v2.3.2
PrestaShop Checkout: v1.2.9
Pamiętaj, że jeśli w przeszłości instalowałeś wersję tych modułów, pliki PHPUnit mogą nadal być obecne na twoim serwerze. Tylko te nowo wydane wersje zapewniają, że PHPUnit nie będzie już obecny we własnym katalogu dostawców.
Moduły i motywy innych dostawców również mogą być wrażliwe. Spodziewaj się aktualizacji wkrótce.