$30 off During Our Annual Pro Sale. View Details »

Die schmutzige Seite von WordPress

Die schmutzige Seite von WordPress

Datenschutz, Privatsphäre, Sicherheitsmythen und UX-Absurditäten in WordPress und um WordPress herum.
Vortrag beim WordCamp Cologne 2017

Torsten Landsiedel

November 18, 2017
Tweet

More Decks by Torsten Landsiedel

Other Decks in Programming

Transcript

  1. Die schmutzige Seite
    von WordPress
    WordCamp Köln 2017

    View Slide

  2. Torsten Landsiedel
    Moderator im Supportforum auf WP.org
    Support-Mitarbeiter bei Advanced Ads
    @zodiac1978 auf Twitter
    Wer bin ich?

    View Slide

  3. in WordPress und um WordPress herum
    Datenschutz,
    Privatsphäre,
    Sicherheitsmythen und
    UX-Absurditäten

    View Slide

  4. Eine weitere WordPress-Website
    Bei der Installation wird nicht nach dem Untertitel gefragt:

    View Slide

  5. Eine weitere WordPress-Website
    Uuups.

    View Slide

  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.

    View Slide

  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/

    View Slide

  8. Mediathek = nicht-öffentlich?
    REST API zeigt auch alle alle Seiten und
    Beiträge
    Schließt dein Coming Soon /
    Maintenance-Plugin die REST API?

    View Slide

  9. Permalinks-2
    Permalinks mit Zahlen am Ende (Autosave, aber kein Titel)

    View Slide

  10. Permalinks-2
    Permalinks mit “-2” am Ende
    Alter Beitrag im Papierkorb oder in der
    Mediathek mit gleichem Permalink.

    View Slide

  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 ...

    View Slide

  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.

    View Slide

  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/

    View Slide

  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

    View Slide

  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!”

    View Slide

  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/

    View Slide

  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.

    View Slide

  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

    View Slide

  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/

    View Slide

  20. IP Logging deaktivieren
    add_filter('pre_comment_user_ip', __return_zero() );
    Oder dieses Plugin installieren:
    https://de.wordpress.org/plugins/remove-ip/

    View Slide

  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` = ''

    View Slide

  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)

    View Slide

  23. Danke!
    Fragen? Widerspruch? Alternativen?
    Los geht’s!

    View Slide