6. WORDPRESS SECURITY: AKTUELLE LAGE
RANSOMWARE BEFÄLLT AUCH WEBSERVER
▸ CTB-Locker
„Your personal files are encrypted by CTB-Locker. Your
scripts, documents, photos, databases and other important
files have been encrypted with strongest encryption
algorithm AES-256 and unique key, generated for this site.“
→ Wiederherstellung (bisher) unmöglich
→ Externe Backups regelmäßig erstellen
7. WORDPRESS SECURITY: AKTUELLE LAGE
DER FALL MOSSACK FONSECA
▸ WordPress auf der Hauptseite
▸ Revolution Slider (Version 2.1.7)
Zugriff auf Systemdateien und Zugangsdaten
▸ WP SMTP plugin
Zugangsdaten des Mail-Servers im Klartext gespeichert
→ Gefahr durch veraltete Plug-Ins
→ Regelmäßig Updates und Security-Fixes installieren
→ Nicht mehr gepflegte Plug-Ins ersetzen
https://www.wordfence.com/blog/2016/04/mossack-fonseca-breach-vulnerable-slider-revolution/
9. WORDPRESS SECURITY: AUTOMATISIERTE UPDATES
PROBLEM
▸ WordPress Core und Plug-Ins sollten regelmäßig aktualisiert
werden
▸ Theoretisch kein Problem:
WordPress kann automatisch aktualisieren
▸ Automatische Updates benötigen Schreibrechte für PHP
oder FTP-Zugang
→ keinesfalls Lese- und Schreibrechte für „alle“ (777)
→ keine Absicherung bei Angriffen
11. WORDPRESS SECURITY: AUTOMATISIERTE UPDATES
LÖSUNG
▸ Update-Modus
▸ Rechte Dateien / Ordner (777)
→ PHP kann Dateien / Ordner schreiben und ausführen
▸ Vorgehen
▸ Rechte werden nur für die Zeit der Updates gesetzt
▸ Benutzer können zusätzlich angepasst werden, jedoch
▸ Einschränkungen beim Shared Hosting
▸ PHP-CGI-Prozesse laufen oftmals mit Standardbenutzer
12. WORDPRESS SECURITY: AUTOMATISIERTE UPDATES
UMSETZUNG
▸ Shared-Hosting mit Cronjobs und SSH
▸ all-inkl: ab Premium-Paket
▸ domainfactory: ab Professional-Paket
▸ STRATO: ab PowerWeb Plus
▸ Eigener Server
▸ Cronjobs über crontab
▸ Jobs mit Jenkins (continuous integration)
13. WORDPRESS SECURITY: AUTOMATISIERTE UPDATES
UMSETZUNG
▸ Update-Modus aktivieren
▸ Live-Modus aktivieren
cd /var/www
chmod -R 0777 ./wordpress
cd /var/www
find ./wordpress -type d -exec chmod 755 {} ;
find ./wordpress -type f -exec chmod 444 {} ;
find ./wordpress/wp-content/cache -type f -exec chmod 644 {} ;
find ./wordpress/wp-content/uploads -type f -exec chmod 644 {} ;
15. WORDPRESS SECURITY: AUTOMATISIERTE UPDATES
ÜBER DEN TELLERRAND
▸ Zusätzliche Überprüfung
▸ Tools wie WPScan suchen nach Schwachstellen
http://wpscan.org/
17. WORDPRESS SECURITY: ZUGRIFFSBESCHRÄNKUNG
.HTACCESS-DATEIEN BEI APACHE-WEBSERVER
▸ Ordner-Auflistung deaktivieren
▸ Direktzugriff nur für bestimmte Dateitypen erlauben
Options All -Indexes
Order deny,allow
Deny from all
<Files ~ ".(css|doc|docx|gif|jpe?g|js|odf|pdf|png|rar|rtf|xls|xlsx|⤸
xml|zip)$">
Allow from all
</Files>
18. WORDPRESS SECURITY: ZUGRIFFSBESCHRÄNKUNG
.HTACCESS-DATEIEN BEI APACHE-WEBSERVER
▸ Login nur nach Passworteingabe
▸ Zugriff auf wp-includes Ordner blockieren
<Files wp-login.php>
AuthType Basic
AuthName "Restricted Admin-Area"
AuthUserFile /pfad/zur/.htpasswd
Require valid-user
</Files>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
</IfModule>
19. WORDPRESS SECURITY: ZUGRIFFSBESCHRÄNKUNG
.HTACCESS-DATEIEN BEI APACHE-WEBSERVER
▸ Zugriff auf wp-config.php blockieren
▸ Zugriff auf .htaccess-Dateien blockieren
<files ~ "^.*.([Hh][Tt][Aa])">
Order allow,deny
Deny from all
Satisfy all
</files>
<files wp-config.php>
Order allow,deny
Deny from all
</files>
20. WORDPRESS SECURITY: LEARNINGS
ZUSAMMENFASSUNG
▸ Möglichst wenig (Schreib-) Rechte für Web-Server
▸ Updatebarkeit ist Schutz und Risiko gleichzeitig
▸ Regelmäßig externe Backups erstellen
▸ Dateien: ohne Schreibrechte für Web-Server
▸ Datenbank: komplette Dumps
▸ Veraltete Plug-Ins entfernen / ersetzen
21. WORDPRESS SECURITY
DANKE FÜR DIE AUFMERKSAMKEIT
▸ Daniel Potthast
dp@sblum.de
@d_potthast
▸ Präsentation
! https://sblum.de/wordcamp