Dringendes Update für PrestaShop
Durch eine Lücke in der PHPUnit ist es möglich, dass Angreifer durch die Module von PrestaShop Kontrolle über den Shop erlangen können. Wie Ihr euch dagegen schützen könnt beleuchten wir in diesem Artikel.
Was ist passiert?
Die Entwickler von PrestaShop haben bekannt gegeben, dass Angreifer eine Lücke in der PHPUnit ausnützen und dadurch jeglichen Code auf dem Server ausführen können. Die Lücken wurden in den Versionen 7.5.19 und 8.5.1 behoben, sollen sich aber nach dem Wissensstand der Entwickler in allen alten Versionen befinden. Somit ist es unerlässlich, dass jeder Nutzer der eine PrestaShop-Installation betreibt seinen Webspace sowie seinen Shop auf eine mögliche Kompromittierung hin überprüft.
Überprüfung der Installation
Die Überprüfung ob man von der Lücke betroffen ist oder nicht geht in der Tat schnell, man muss sich hier zum Glück nicht durch tausende von Dateien durchklicken. Zuerst ruft man via FTP- oder SSH-Zugang seinen Webspace auf und kontrolliert das Verzeichnis «vendor» (/prestashop-verzeichnis/module) sowie alle Modul-Verzeichnisse (/prestashop-verzeichnis/module). Wenn sich in diesen Verzeichnissen jeweils ein Ordner «phpunit» befindet, dann ist deine Shop-Installation möglicherweise verwundbar.
Was ist jetzt zu tun?
Falls sich in den genannten Verzeichnissen jeweils ein Ordner mit «phpunit» befindet, so kann man diese direkt entfernen. Die PHPUnit ist lediglich eine Entwicklungsbibliothek und wird nicht für den Shopbetrieb benötigt. Mit dem Entfernen sollten die Lücken entsprechend gestopft sein und keine Angriffsfläche mehr bieten.
Mittels Konsolen-Zugriff kann man die Suche nach den entsprechenden Verzeichnissen sowie deren Entfernung mit einem einfachen Befehl durchführen:
find . -type d -name phpunit -exec rm -rf {} \;
Wurde mein Shop kompromittiert?
Durch den oberen Schritt wird zwar sicher gestellt, dass es zu keinen zukünftigen Attacken kommen kann – jedoch besteht immer noch die Gefahr, dass die Installation bereits zuvor kompromittiert wurde. Die Anzeichen dafür sind identisch wie bei anderen Kompromittierungen durch Sicherheitslücken in den verwendeten Systemen:
- die Core-Dateien wurden modifiziert mit Fremdcode
erkennt man daran, dass das Bearbeitungsdatum der Datei erst kürzlich aktualisiert wurde – was i.d.R. ja nicht der Fall ist, wenn man nicht selbst ein Update eingespielt - neue Dateien wurden hochgeladen
diese erkennt man ebenfalls am Upload-Datum sowie an den merkwürdig klingenden Dateinamen bspw: 0x666.php
Im Blog-Beitrag der PrestaShop -Entwickler gibt es zusätzlich eine Liste bereits bekannter bösartiger Dateien
In solchen Fällen empfehlen wir PrestaShop neu herunterzuladen und die Core-Dateien auf dem Webspace neu hochzuladen. Sofern Template- oder andere Modulverzeichnisse nicht betroffen sind von einer Kompromittierung, kann man diese natürlich weiterverwenden. Ebenso sollten alle Passwörter (bspw. zur Datenbank) ausgetauscht werden, damit man weiteren Fremdzugriff ausschliessen kann.
Die Lücken in den hauseigenen Modulen von PrestaShop wurden bereits behoben und können aktualisiert werden. Nur die Updates stellen wirklich sicher, dass die Module nicht mehr auf die PHPUnit zurückgreifen. Wenn man Module und/oder Templates von anderen Herstellern verwendet, sollte man ebenso prüfen ob bereits Aktualisierungen vorhanden sind.
Bei Fragen oder Unklarheiten steht Dir unser Support unter https://my.bplaced.net/support gerne zur Verfügung.