Spätestens seit dieser Meldung sollten sich auch Webserverbetreiber präventiv mit Krypto-Trojanern und deren Bekämpfung auseinandersetzen. Ich stelle mir das so vor, dass hier mögliche Angriffsszenarios aufgezeigt werden und wie man sich davor schützen kann. Was mir auf die Schnelle eingefallen ist, ist das hier:
Apache und PHP absichern
Der Apache ist der bekannteste und beliebteste Webserver in der Linux-Welt. Hier einige Dinge, die man beachten sollte:
Dateisystem schützen: man sollte niemandem erlauben generisch auf das Dateisystem zuzugreifen. Im Apache 2.2 gab es dazu die Datei /etc/apache2/conf.d/security, im Apache 2.4 wäre das Äquivalent /etc/apache2/conf-enabled/security.conf:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
# Apache 2.2 <Directory /> AllowOverride None Options -ExecCgi -Indexes -Includes Order Deny,Allow Deny from all </Directory> # Apache 2.4 <Directory /> AllowOverride None Options -ExecCGI -Indexes -Includes Require all denied </Directory>
mehrere Seiten trennen: In der Standardkonfiguration läuft PHP als Apache-Modul, dass heißt für jeden VHost wird PHP mit dem gleichen Benutzer (www-data) ausgeführt. Das führt dazu, dass man auf einem Webserver nur eine Anwendung kompromittieren muss, um alle Seiten lahm legen zu können. Das kann man verhindern, indem man PHP als FastCGI laufen lässt (Anleitung), oder andere Methoden nutzt (beispielsweise php-fpm).
Wordpress
Wordpress wird in dem Artikel als mögliches Einfallstor genannt. Da das System laut Studien 25% des Webs ausmacht, sollte man es so gut wie möglich schützen. Das heißt:
wp-config.php: Schreibrechte entziehen
wp-content/uploads/: Ausführungsrechte für PHP entziehen (RemoveHandler)
Für weitere Hinweise bin nicht nur ich dankbar 😉