SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Die schmutzige Seite
von WordPress
WordCamp Köln 2017
Torsten Landsiedel
Moderator im Supportforum auf WP.org
Support-Mitarbeiter bei Advanced Ads
@zodiac1978 auf Twitter
Wer bin ich?
in WordPress und um WordPress herum
Datenschutz,
Privatsphäre,
Sicherheitsmythen und
UX-Absurditäten
Eine weitere WordPress-Website
Bei der Installation wird nicht nach dem Untertitel gefragt:
Eine weitere WordPress-Website
Uuups.
Passwortgeschützt = sicher?
Verschiedene Beiträge mit identischem Passwort versehen
Nach der Eingabe des Passworts ist jeder Beitrag offen, der mit diesem
Passwort gesichert ist.
Mediathek = nicht-öffentlich?
REST API zeigt alle Autoren, Medien,
Revisionen, ...
https://developer.wordpress.org/rest-api/reference/
Require Authentication aktivieren
https://de.wordpress.org/plugins/rest-api-toolbox/
Mediathek = nicht-öffentlich?
REST API zeigt auch alle alle Seiten und
Beiträge
Schließt dein Coming Soon /
Maintenance-Plugin die REST API?
Permalinks-2
Permalinks mit Zahlen am Ende (Autosave, aber kein Titel)
Permalinks-2
Permalinks mit “-2” am Ende
Alter Beitrag im Papierkorb oder in der
Mediathek mit gleichem Permalink.
Akismet = Spamschutz
BDSG verbietet das Versenden von personenbezogenen
Daten in “unsichere” Länder (hier USA) ohne explizite
Einwilligung
Geht somit nur mit Extra-Plugin.
https://de.wordpress.org/plugins/akismet-privacy-policies/
Oder man nutzt Alternativen ...
admin = Unsicher?
Jein. – Username wird an vielen Stellen „verraten":
● /?author=1 (user-id)
● “Passwort vergessen”-Funktion
● Login-Feedback
● Autoren-Link (sofern im Theme gesetzt)
● Klasse am Autoren-Kommentar
● Body-Klasse auf Autoren-Seite
● …
Vermeiden macht trotzdem Sinn. Aber nicht viel.
https = sicher?
Jein.
Schützt beim Übertragen der Formulardaten im Netzwerk
(z.B. offenes W-LAN bei Konferenz, Flughafen, Café, etc.)
Schützt nicht gegen andere Lücken.
https://perezbox.com/2015/07/https-does-not-secure-your-website/
Kommentarverschachtelung
Ja, ein Edge Case. Trotzdem.
Verschachtelter Kommentar-Thread:
Kommentar A
-> Kommentar C als Antwort auf A
Kommentar B
Feed ohne Verschachtelung:
Kommentar A
Kommentar B
Kommentar C
Kommentarverschachtelung
Mit Beispiel wird es klarer:
Verschachtelter Kommentar-Thread:
“WordCamps sind super!”
-> Antwort: “Finde ich auch!”
“WordCamps sind doof!”
Feed ohne Verschachtelung:
“WordCamps sind super!”
“WordCamps sind doof!”
“Finde ich auch!”
E-Mail wird nicht veröffentlicht?
Hash-Werte verraten per Gravatar-Link die E-Mail-Adresse
deiner Kommentar-Autorinnen & -Autoren.
Probiere es selbst:
http://wordpressexpose.chrisgherbert.com/
WP Importer enthält alle Daten?
Der Standard-WordPress-Importer überträgt keine
Beitragsbilder (“featured images”).
Bilder werden nur übertragen, wenn der “Import-Blog” noch
online ist.
Hat Probleme bei sehr großen Sites.
Strafe fürs Übersetzen!
Übersetzte Plugins werden im lokalisierten Verzeichnis
nicht besser gewertet.
Im Gegenteil sogar. Man wird de facto schlechter
gefunden.
Empfehlung: Suche nur auf wordpress.org (nicht auf
xx.wordpress.org) und nur mit englischen Begriffen
Fremde Server
Google Fonts kann man auch lokal laden
https://die-netzialisten.de/wordpress/google-fonts-ueber-den-eigenen-server-einbinden/
Fehlt die native Browserunterstützung werden Emojis / Twemojis als Bild von
CDNs geladen (MaxCDN, s.w.org)
Lösung: Lokal laden oder Polyfill deaktivieren
https://de.wordpress.org/plugins/wp-local-emoji/
https://de.wordpress.org/plugins/disable-emojis/
https://de.wordpress.org/plugins/emoji-settings/
IP Logging deaktivieren
add_filter('pre_comment_user_ip', __return_zero() );
Oder dieses Plugin installieren:
https://de.wordpress.org/plugins/remove-ip/
Daten löschen
Ausnahmen vom Verbot der Speicherung bestehen aber möglicherweise dann,
wenn die IP-Adresse streng zweckgebunden zur Erkennung, Eingrenzung oder
Beseitigung von Störungen oder Fehlern maximal sieben Tage gespeichert
wird. Nach Ablauf von sieben Tagen müssen jedoch auch die zu diesem Zweck
gespeicherten IP-Adressen grundsätzlich gelöscht oder anonymisiert werden.
https://www.datenschutz-notizen.de/datenschutz-fuer-blogbetreiber-wordpress-rechtskonform-nutzen-4211055/
Nach 7 Tagen aus Datenbank löschen:
UPDATE `wp_comments` SET `comment_author_IP` = ''
Automattic != WordPress?
Gravatar (Dienst von Automattic)
● fest integriert (kann in Einstellungen deaktiviert werden)
Akismet (Dienst von Automattic)
● Standardplugin bei jeder Installation mit
kostenpflichtigen Dienst
(nur für private Blogs kostenfrei)
Danke!
Fragen? Widerspruch? Alternativen?
Los geht’s!

Weitere ähnliche Inhalte

Ähnlich wie Die schmutzige Seite von WordPress

Eigene Themes from Scratch
Eigene Themes from ScratchEigene Themes from Scratch
Eigene Themes from ScratchStefan Fröhlich
 
WordPress - das sind wir alle
WordPress - das sind wir alleWordPress - das sind wir alle
WordPress - das sind wir allefrankstaude
 
Web 2.0 in und für Bibliotheken
Web 2.0 in und für BibliothekenWeb 2.0 in und für Bibliotheken
Web 2.0 in und für BibliothekenChristian Hauschke
 
Wordpress vs. Textpattern
Wordpress vs. TextpatternWordpress vs. Textpattern
Wordpress vs. Textpatternguestcb8462
 
WordPress – das sind wir alle! (BarCamp Nürnberg)
WordPress – das sind wir alle! (BarCamp Nürnberg)WordPress – das sind wir alle! (BarCamp Nürnberg)
WordPress – das sind wir alle! (BarCamp Nürnberg)frankstaude
 
SEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwalten
SEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwaltenSEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwalten
SEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwaltenget on top gmbh
 
WordPress CMS - WebMontag Chemnitz Oktober 2011
WordPress CMS - WebMontag Chemnitz Oktober 2011WordPress CMS - WebMontag Chemnitz Oktober 2011
WordPress CMS - WebMontag Chemnitz Oktober 2011David Decker
 
Das richtige WordPress-Theme finden
Das richtige WordPress-Theme findenDas richtige WordPress-Theme finden
Das richtige WordPress-Theme findenWalter Ebert
 
WordPress absichern - WP Camp 2012 in Berlin
WordPress absichern - WP Camp 2012 in BerlinWordPress absichern - WP Camp 2012 in Berlin
WordPress absichern - WP Camp 2012 in BerlinTorsten Landsiedel
 
Webanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und AdministrationWebanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und AdministrationThomas Siegers
 

Ähnlich wie Die schmutzige Seite von WordPress (10)

Eigene Themes from Scratch
Eigene Themes from ScratchEigene Themes from Scratch
Eigene Themes from Scratch
 
WordPress - das sind wir alle
WordPress - das sind wir alleWordPress - das sind wir alle
WordPress - das sind wir alle
 
Web 2.0 in und für Bibliotheken
Web 2.0 in und für BibliothekenWeb 2.0 in und für Bibliotheken
Web 2.0 in und für Bibliotheken
 
Wordpress vs. Textpattern
Wordpress vs. TextpatternWordpress vs. Textpattern
Wordpress vs. Textpattern
 
WordPress – das sind wir alle! (BarCamp Nürnberg)
WordPress – das sind wir alle! (BarCamp Nürnberg)WordPress – das sind wir alle! (BarCamp Nürnberg)
WordPress – das sind wir alle! (BarCamp Nürnberg)
 
SEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwalten
SEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwaltenSEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwalten
SEODay 2011 - Seitennetzwerk mit WordPress effizient aufbauen und verwalten
 
WordPress CMS - WebMontag Chemnitz Oktober 2011
WordPress CMS - WebMontag Chemnitz Oktober 2011WordPress CMS - WebMontag Chemnitz Oktober 2011
WordPress CMS - WebMontag Chemnitz Oktober 2011
 
Das richtige WordPress-Theme finden
Das richtige WordPress-Theme findenDas richtige WordPress-Theme finden
Das richtige WordPress-Theme finden
 
WordPress absichern - WP Camp 2012 in Berlin
WordPress absichern - WP Camp 2012 in BerlinWordPress absichern - WP Camp 2012 in Berlin
WordPress absichern - WP Camp 2012 in Berlin
 
Webanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und AdministrationWebanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und Administration
 

Mehr von Torsten Landsiedel

Das Health Check Plugin in der Praxis
Das Health Check Plugin in der PraxisDas Health Check Plugin in der Praxis
Das Health Check Plugin in der PraxisTorsten Landsiedel
 
UX-Probleme mit dem neuen Block-Editor (Gutenberg)
UX-Probleme mit dem neuen Block-Editor (Gutenberg)UX-Probleme mit dem neuen Block-Editor (Gutenberg)
UX-Probleme mit dem neuen Block-Editor (Gutenberg)Torsten Landsiedel
 
Werde Übersetzer! Werde Translation Editor!
Werde Übersetzer!  Werde Translation Editor!Werde Übersetzer!  Werde Translation Editor!
Werde Übersetzer! Werde Translation Editor!Torsten Landsiedel
 
The Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano EditionThe Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano EditionTorsten Landsiedel
 
Umgang mit Frustration im Open-Source-Projekt WordPress
Umgang mit Frustration im Open-Source-Projekt WordPressUmgang mit Frustration im Open-Source-Projekt WordPress
Umgang mit Frustration im Open-Source-Projekt WordPressTorsten Landsiedel
 
Wie ich durch Support und Übersetzung ein (besserer) Entwickler geworden bin
Wie ich durch Support und Übersetzung ein (besserer) Entwickler geworden binWie ich durch Support und Übersetzung ein (besserer) Entwickler geworden bin
Wie ich durch Support und Übersetzung ein (besserer) Entwickler geworden binTorsten Landsiedel
 
Contact Form 7 - Pflicht und Kür
Contact Form 7 - Pflicht und KürContact Form 7 - Pflicht und Kür
Contact Form 7 - Pflicht und KürTorsten Landsiedel
 
Social Media Menüs in WordPress
Social Media Menüs in WordPressSocial Media Menüs in WordPress
Social Media Menüs in WordPressTorsten Landsiedel
 
HTML/CSS-Validierung in Zeiten von HTML5
HTML/CSS-Validierung in Zeiten von HTML5HTML/CSS-Validierung in Zeiten von HTML5
HTML/CSS-Validierung in Zeiten von HTML5Torsten Landsiedel
 
Shortcodes erstellen mit WordPress
Shortcodes erstellen mit WordPressShortcodes erstellen mit WordPress
Shortcodes erstellen mit WordPressTorsten Landsiedel
 
Podcasting mit WordPress.com-Blogs
Podcasting mit WordPress.com-BlogsPodcasting mit WordPress.com-Blogs
Podcasting mit WordPress.com-BlogsTorsten Landsiedel
 

Mehr von Torsten Landsiedel (17)

Das Health Check Plugin in der Praxis
Das Health Check Plugin in der PraxisDas Health Check Plugin in der Praxis
Das Health Check Plugin in der Praxis
 
UX-Probleme mit dem neuen Block-Editor (Gutenberg)
UX-Probleme mit dem neuen Block-Editor (Gutenberg)UX-Probleme mit dem neuen Block-Editor (Gutenberg)
UX-Probleme mit dem neuen Block-Editor (Gutenberg)
 
Oh, no! DSGVO.
Oh, no! DSGVO.Oh, no! DSGVO.
Oh, no! DSGVO.
 
WordPress kaputt machen
WordPress kaputt machenWordPress kaputt machen
WordPress kaputt machen
 
Werde Übersetzer! Werde Translation Editor!
Werde Übersetzer!  Werde Translation Editor!Werde Übersetzer!  Werde Translation Editor!
Werde Übersetzer! Werde Translation Editor!
 
The Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano EditionThe Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano Edition
 
Umgang mit Frustration im Open-Source-Projekt WordPress
Umgang mit Frustration im Open-Source-Projekt WordPressUmgang mit Frustration im Open-Source-Projekt WordPress
Umgang mit Frustration im Open-Source-Projekt WordPress
 
The Child Theme Dilemma (EN)
The Child Theme Dilemma (EN)The Child Theme Dilemma (EN)
The Child Theme Dilemma (EN)
 
Wie ich durch Support und Übersetzung ein (besserer) Entwickler geworden bin
Wie ich durch Support und Übersetzung ein (besserer) Entwickler geworden binWie ich durch Support und Übersetzung ein (besserer) Entwickler geworden bin
Wie ich durch Support und Übersetzung ein (besserer) Entwickler geworden bin
 
Das Child-Theme-Dilemma
Das Child-Theme-DilemmaDas Child-Theme-Dilemma
Das Child-Theme-Dilemma
 
Contact Form 7 - Pflicht und Kür
Contact Form 7 - Pflicht und KürContact Form 7 - Pflicht und Kür
Contact Form 7 - Pflicht und Kür
 
Social Media Menüs in WordPress
Social Media Menüs in WordPressSocial Media Menüs in WordPress
Social Media Menüs in WordPress
 
Mitmachen bei WordPress
Mitmachen bei WordPressMitmachen bei WordPress
Mitmachen bei WordPress
 
MetaMeetup
MetaMeetupMetaMeetup
MetaMeetup
 
HTML/CSS-Validierung in Zeiten von HTML5
HTML/CSS-Validierung in Zeiten von HTML5HTML/CSS-Validierung in Zeiten von HTML5
HTML/CSS-Validierung in Zeiten von HTML5
 
Shortcodes erstellen mit WordPress
Shortcodes erstellen mit WordPressShortcodes erstellen mit WordPress
Shortcodes erstellen mit WordPress
 
Podcasting mit WordPress.com-Blogs
Podcasting mit WordPress.com-BlogsPodcasting mit WordPress.com-Blogs
Podcasting mit WordPress.com-Blogs
 

Die schmutzige Seite von WordPress

  • 1. Die schmutzige Seite von WordPress WordCamp Köln 2017
  • 2. Torsten Landsiedel Moderator im Supportforum auf WP.org Support-Mitarbeiter bei Advanced Ads @zodiac1978 auf Twitter Wer bin ich?
  • 3. in WordPress und um WordPress herum Datenschutz, Privatsphäre, Sicherheitsmythen und UX-Absurditäten
  • 4. Eine weitere WordPress-Website Bei der Installation wird nicht nach dem Untertitel gefragt:
  • 6. Passwortgeschützt = sicher? Verschiedene Beiträge mit identischem Passwort versehen Nach der Eingabe des Passworts ist jeder Beitrag offen, der mit diesem Passwort gesichert ist.
  • 7. Mediathek = nicht-öffentlich? REST API zeigt alle Autoren, Medien, Revisionen, ... https://developer.wordpress.org/rest-api/reference/ Require Authentication aktivieren https://de.wordpress.org/plugins/rest-api-toolbox/
  • 8. Mediathek = nicht-öffentlich? REST API zeigt auch alle alle Seiten und Beiträge Schließt dein Coming Soon / Maintenance-Plugin die REST API?
  • 9. Permalinks-2 Permalinks mit Zahlen am Ende (Autosave, aber kein Titel)
  • 10. Permalinks-2 Permalinks mit “-2” am Ende Alter Beitrag im Papierkorb oder in der Mediathek mit gleichem Permalink.
  • 11. Akismet = Spamschutz BDSG verbietet das Versenden von personenbezogenen Daten in “unsichere” Länder (hier USA) ohne explizite Einwilligung Geht somit nur mit Extra-Plugin. https://de.wordpress.org/plugins/akismet-privacy-policies/ Oder man nutzt Alternativen ...
  • 12. admin = Unsicher? Jein. – Username wird an vielen Stellen „verraten": ● /?author=1 (user-id) ● “Passwort vergessen”-Funktion ● Login-Feedback ● Autoren-Link (sofern im Theme gesetzt) ● Klasse am Autoren-Kommentar ● Body-Klasse auf Autoren-Seite ● … Vermeiden macht trotzdem Sinn. Aber nicht viel.
  • 13. https = sicher? Jein. Schützt beim Übertragen der Formulardaten im Netzwerk (z.B. offenes W-LAN bei Konferenz, Flughafen, Café, etc.) Schützt nicht gegen andere Lücken. https://perezbox.com/2015/07/https-does-not-secure-your-website/
  • 14. Kommentarverschachtelung Ja, ein Edge Case. Trotzdem. Verschachtelter Kommentar-Thread: Kommentar A -> Kommentar C als Antwort auf A Kommentar B Feed ohne Verschachtelung: Kommentar A Kommentar B Kommentar C
  • 15. Kommentarverschachtelung Mit Beispiel wird es klarer: Verschachtelter Kommentar-Thread: “WordCamps sind super!” -> Antwort: “Finde ich auch!” “WordCamps sind doof!” Feed ohne Verschachtelung: “WordCamps sind super!” “WordCamps sind doof!” “Finde ich auch!”
  • 16. E-Mail wird nicht veröffentlicht? Hash-Werte verraten per Gravatar-Link die E-Mail-Adresse deiner Kommentar-Autorinnen & -Autoren. Probiere es selbst: http://wordpressexpose.chrisgherbert.com/
  • 17. WP Importer enthält alle Daten? Der Standard-WordPress-Importer überträgt keine Beitragsbilder (“featured images”). Bilder werden nur übertragen, wenn der “Import-Blog” noch online ist. Hat Probleme bei sehr großen Sites.
  • 18. Strafe fürs Übersetzen! Übersetzte Plugins werden im lokalisierten Verzeichnis nicht besser gewertet. Im Gegenteil sogar. Man wird de facto schlechter gefunden. Empfehlung: Suche nur auf wordpress.org (nicht auf xx.wordpress.org) und nur mit englischen Begriffen
  • 19. Fremde Server Google Fonts kann man auch lokal laden https://die-netzialisten.de/wordpress/google-fonts-ueber-den-eigenen-server-einbinden/ Fehlt die native Browserunterstützung werden Emojis / Twemojis als Bild von CDNs geladen (MaxCDN, s.w.org) Lösung: Lokal laden oder Polyfill deaktivieren https://de.wordpress.org/plugins/wp-local-emoji/ https://de.wordpress.org/plugins/disable-emojis/ https://de.wordpress.org/plugins/emoji-settings/
  • 20. IP Logging deaktivieren add_filter('pre_comment_user_ip', __return_zero() ); Oder dieses Plugin installieren: https://de.wordpress.org/plugins/remove-ip/
  • 21. Daten löschen Ausnahmen vom Verbot der Speicherung bestehen aber möglicherweise dann, wenn die IP-Adresse streng zweckgebunden zur Erkennung, Eingrenzung oder Beseitigung von Störungen oder Fehlern maximal sieben Tage gespeichert wird. Nach Ablauf von sieben Tagen müssen jedoch auch die zu diesem Zweck gespeicherten IP-Adressen grundsätzlich gelöscht oder anonymisiert werden. https://www.datenschutz-notizen.de/datenschutz-fuer-blogbetreiber-wordpress-rechtskonform-nutzen-4211055/ Nach 7 Tagen aus Datenbank löschen: UPDATE `wp_comments` SET `comment_author_IP` = ''
  • 22. Automattic != WordPress? Gravatar (Dienst von Automattic) ● fest integriert (kann in Einstellungen deaktiviert werden) Akismet (Dienst von Automattic) ● Standardplugin bei jeder Installation mit kostenpflichtigen Dienst (nur für private Blogs kostenfrei)