SlideShare ist ein Scribd-Unternehmen logo
Ist deine Webseite wirklich…
…. sicher ?
Nach einer wahren Begebenheit
Martin Wolfert | https://wp-loft.de | WordPress Meetup KA #13
Was macht eine WordPress Seite sicher ?
WordPress Core, Theme und Plugin Updates ?
Sichere Passwörter ?
Kein „admin“ User ?
Uniquer Datenbankprefix ?
Salts in der wp-config ?
Backend-Login via SSL ?
HTTPS und ein A-Ranking bei SSL-Labs ?
Really?
Ein Ausblick ….
… Observatory von Mozilla
The new kid in town
Fangen wir vorne an
Schon seit Monaten hatte ich mit meinem Blog ein A+ Rating bei
SSL Labs. WordPress Core, Theme und Plugins waren gepflegt, der
NGinx getweakt, das Linux auf dem Server zugenagelt.
Fein :), alles OK !
Really?
WTF! Ein „Grade F“ bei Observatory
Ursachen für das „F - Rating“
Keine Content Security Policy (CSP) Header
Kein HSTS bei der SSL Konfiguration
Keine Response Header „X-Header“
X-Content-Type-Options
X-Frame-Options
X-XSS-Protection
Erklärung der „X-Header“
X-Frame-Options: [ SAMEORIGIN / ALLOW-FROM / DENY]



Wird benutzt um dem Browser zu signalisieren, ob eine Webseite in einem
Frame, iFrame oder Objekt gerendert werden soll.
Damit kann man Clickjacking Attacken verhindern, indem der Inhalt einer
Webseite nicht in einer anderen Webseite eingebettet werden kann.
Erklärung der „X-Header“
X-Content-Type-Options: nosniff


Wird benutzt um dem Browser zu signalisieren, der Mitgelieferte MIME-
Type auf jeden Fall respektiert werden soll. Damit wird JavaScript-Code in
Bildern vom Browser ignoriert.
Dieser Header vervollständigt den Schutz vor Cross-Site-Scripting mit
Bilder der Contend Security Policy (CSP)
Erklärung der „X-Header“
X-XSS-Protection: 1; mode=block


Dieser Header wurde geschaffen, um den Cross Site Scripting (XSS) Filter
einzuschalten, der in jedem modernen Browser enthalten ist.

Normalerweise ist dieser Filter bereits per default im Browser aktiviert. Das
Setzen des Headers erzwingt jedoch das Einschalten des Filters.
Content Security Header (CSP)
Die CSP HTTP-Header bilden einen zusätzlichen Sicherheits-Layer. Dieser
Layer hilft Cross Site Scripting (XSS) und andere Code Injections zu
verhindern, indem nur definierte Content Quellen vom Browser geladen
werden.
Quelle: https://www.keycdn.com/blog/http-security-headers/
Content Security Header (CSP)
Jeder der großen Browserhersteller unterstützt CSP HTTP-Header
komplett oder zumindest teilweise.
Quelle: https://www.keycdn.com/blog/http-security-headers/
Mehr Informationen dazu erhält man bei caniuse.com: 

http://caniuse.com/#search=content%20security%20policy
Content Security Header (CSP)
CSP-Header in eine WordPress-Installation einzubinden ist nicht schwer,
aber bedarf großer Sorgfalt. Für meinen Fotoblog (https://
blog.lichttraeumer.de) sieht das wie folgt aus:
Content Security Header (CSP)
content-security-policy:default-src 'self' 'unsafe-inline'; script-src 'self'
'unsafe-inline' 'unsafe-eval' https://www.google-analytics.com https://
www.google.com https://maps.google.com https://maps.googleapis.com
https://piwik.martin-wolfert.de; img-src 'self' data: https://www.google-
analytics.com https://secure.gravatar.com https://csi.gstatic.com https://
stats.g.doubleclick.net https://ps.w.org https://piwik.martin-wolfert.de
https://ajax.googleapis.com https://www.bloggerei.de; font-src 'self' data:
https://fonts.gstatic.com; child-src 'self' https://piwik.martin-wolfert.de;
style-src 'self' 'unsafe-inline' https://ajax.googleapis.com https://
www.google.com https://fonts.googleapis.com; report-uri https://
lichttraeumerblog.report-uri.io/r/default/csp/enforce
„unsafe-inline“ = inline Sourcen wie style attribute, onclick … 

„unsafe-eval“ = unsichere dynamische Funktionen, z.B. JS eval() 

HTTP Strict Transport Security (HSTS)
HSTS ist eine opt-in Security Maßnahme, und wird durch einen speziellen
HTTP Response-Header gesetzt. Diesen Header zu setzen macht nur
Sinn, wenn die Webseite via HTTPS zu erreichen ist. 



In diesem Falle erkennt der Browser den HSTS-Header, und lädt die
aufgerufenen Webseite in der Zukunft (für eine definierte Zeit) nur noch
über HTTPS.
Beispiel: 

Strict-Transport-Security: max-age=31536000; includeSubDomains
Mehr Informationen: 

https://www.owasp.org/index.phpHTTP_Strict_Transport_Security_Cheat_Sheet
Ist es sinnvoll all den Kram umzusetzen?
Meiner Meinung nach Ja, weil Sicherheit im Netz von Größen wie Google,
Mozilla, Akamai, Cisco etc. stark gepusht wird:
Google rankt HTTPS besser als HTTP
Die Internet Security Research Group (ISRG) hat Letsencrypt eingeführt
Google’s Chrome Browser wird ab Januar HTTP Seiten als unsicher
anzeigen
Conclusio
Ich denke, dass „sichere Webseiten“ zukünftig bei Google und Co ein
besseres Ranking erfahren werden.
Mit Tools wie Observatory, oder Securityheaders.io, wird es
Webseitenbetreibern, Freelancer, Agenturen und Admins leicht gemacht,
Schwachstellen aufzuzeigen und zu fixen.
Dadurch wird es einfacher, Kunden den Mehraufwand in Bezug auf
Sicherheit seiner Webpräsenz näherzubringen und dafür auch entlohnt zu
werden.
Links und Quellen
Observatory: https://observatory.mozilla.org/
Security Headers: https://securityheaders.io
Chrome und HTTP/HTTPS: https://security.googleblog.com/2016/09/moving-towards-more-secure-
web.html
Mozilla Security Guidlines: https://wiki.mozilla.org/Security/Guidelines/Web_Security
QWASP https://www.owasp.org/
CSP Header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy
Bildquellen:
unsplash.com, panosozi (via Deviant Art), Free stock photos

Weitere ähnliche Inhalte

Ähnlich wie Ist deine Webseite wirklich Sicher?

PageSpeed Extreme für das große Speed Update 2021
PageSpeed Extreme für das große Speed Update 2021PageSpeed Extreme für das große Speed Update 2021
PageSpeed Extreme für das große Speed Update 2021
SEARCH ONE
 
Webanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und AdministrationWebanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und Administration
Thomas Siegers
 
Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014
Bastian Grimm
 
Node.js
Node.jsNode.js
Die Zukunft der Webstandards - Webinale 31.05.2010
Die Zukunft der Webstandards - Webinale 31.05.2010Die Zukunft der Webstandards - Webinale 31.05.2010
Die Zukunft der Webstandards - Webinale 31.05.2010Patrick Lauke
 
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-AppsAber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Gregor Biswanger
 
Webstandards auf dem Weg zu Standards im Mobilen Bereich
Webstandards auf dem Weg zu Standards im Mobilen BereichWebstandards auf dem Weg zu Standards im Mobilen Bereich
Webstandards auf dem Weg zu Standards im Mobilen BereichPeter Rozek
 
Einführung XHTML CSS JS // MM 08-11
Einführung XHTML CSS JS // MM 08-11Einführung XHTML CSS JS // MM 08-11
Einführung XHTML CSS JS // MM 08-11
Noël Bossart
 
Typo3 und Varnish
Typo3 und VarnishTypo3 und Varnish
Typo3 und Varnish
Oliver Thiele
 
SEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-Freaks
SEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-FreaksSEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-Freaks
SEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-Freaks
SEARCH ONE
 
Ladezeiten Verbessern - Css Und JavaScript Komprimieren
Ladezeiten Verbessern - Css Und JavaScript KomprimierenLadezeiten Verbessern - Css Und JavaScript Komprimieren
Ladezeiten Verbessern - Css Und JavaScript Komprimieren
Joomla! User Group Fulda
 
new Html5 features and browser compatibility, Stand der Standardisierung, Übe...
new Html5 features and browser compatibility, Stand der Standardisierung, Übe...new Html5 features and browser compatibility, Stand der Standardisierung, Übe...
new Html5 features and browser compatibility, Stand der Standardisierung, Übe...
Sinan Akalın
 
Mehr Pagespeed geht nicht - SEOkomm 2015
Mehr Pagespeed geht nicht - SEOkomm 2015Mehr Pagespeed geht nicht - SEOkomm 2015
Mehr Pagespeed geht nicht - SEOkomm 2015
Bastian Grimm
 
Frontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 BestellsystemeFrontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 BestellsystemeNico Steiner
 
2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend Architektur2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend Architektur
Nico Steiner
 
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
Carsten Cordes
 
Webinar: Online Security
Webinar: Online SecurityWebinar: Online Security
Webinar: Online Security
kuehlhaus AG
 
DevSecOps .pptx
DevSecOps .pptxDevSecOps .pptx
DevSecOps .pptx
ChristianBauer61
 
Ajax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google SuggestAjax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google Suggest
Bastian Feder
 
In den sicheren Hafen jax2020
In den sicheren Hafen jax2020In den sicheren Hafen jax2020
In den sicheren Hafen jax2020
Stephan Kaps
 

Ähnlich wie Ist deine Webseite wirklich Sicher? (20)

PageSpeed Extreme für das große Speed Update 2021
PageSpeed Extreme für das große Speed Update 2021PageSpeed Extreme für das große Speed Update 2021
PageSpeed Extreme für das große Speed Update 2021
 
Webanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und AdministrationWebanwendungen - Installation, Konfiguration und Administration
Webanwendungen - Installation, Konfiguration und Administration
 
Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014
 
Node.js
Node.jsNode.js
Node.js
 
Die Zukunft der Webstandards - Webinale 31.05.2010
Die Zukunft der Webstandards - Webinale 31.05.2010Die Zukunft der Webstandards - Webinale 31.05.2010
Die Zukunft der Webstandards - Webinale 31.05.2010
 
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-AppsAber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
Aber schnell! Top HTML5 Performance Tipps für Hybrid- und Web-Apps
 
Webstandards auf dem Weg zu Standards im Mobilen Bereich
Webstandards auf dem Weg zu Standards im Mobilen BereichWebstandards auf dem Weg zu Standards im Mobilen Bereich
Webstandards auf dem Weg zu Standards im Mobilen Bereich
 
Einführung XHTML CSS JS // MM 08-11
Einführung XHTML CSS JS // MM 08-11Einführung XHTML CSS JS // MM 08-11
Einführung XHTML CSS JS // MM 08-11
 
Typo3 und Varnish
Typo3 und VarnishTypo3 und Varnish
Typo3 und Varnish
 
SEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-Freaks
SEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-FreaksSEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-Freaks
SEO Day 2016: Perfekte Ladezeiten und SEO-Hosting für Speed-Freaks
 
Ladezeiten Verbessern - Css Und JavaScript Komprimieren
Ladezeiten Verbessern - Css Und JavaScript KomprimierenLadezeiten Verbessern - Css Und JavaScript Komprimieren
Ladezeiten Verbessern - Css Und JavaScript Komprimieren
 
new Html5 features and browser compatibility, Stand der Standardisierung, Übe...
new Html5 features and browser compatibility, Stand der Standardisierung, Übe...new Html5 features and browser compatibility, Stand der Standardisierung, Übe...
new Html5 features and browser compatibility, Stand der Standardisierung, Übe...
 
Mehr Pagespeed geht nicht - SEOkomm 2015
Mehr Pagespeed geht nicht - SEOkomm 2015Mehr Pagespeed geht nicht - SEOkomm 2015
Mehr Pagespeed geht nicht - SEOkomm 2015
 
Frontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 BestellsystemeFrontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 Bestellsysteme
 
2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend Architektur2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend Architektur
 
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!IT-Sicherheit und agile Entwicklung – geht das? Sicher!
IT-Sicherheit und agile Entwicklung – geht das? Sicher!
 
Webinar: Online Security
Webinar: Online SecurityWebinar: Online Security
Webinar: Online Security
 
DevSecOps .pptx
DevSecOps .pptxDevSecOps .pptx
DevSecOps .pptx
 
Ajax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google SuggestAjax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google Suggest
 
In den sicheren Hafen jax2020
In den sicheren Hafen jax2020In den sicheren Hafen jax2020
In den sicheren Hafen jax2020
 

Ist deine Webseite wirklich Sicher?

  • 1. Ist deine Webseite wirklich… …. sicher ? Nach einer wahren Begebenheit Martin Wolfert | https://wp-loft.de | WordPress Meetup KA #13
  • 2. Was macht eine WordPress Seite sicher ? WordPress Core, Theme und Plugin Updates ? Sichere Passwörter ? Kein „admin“ User ? Uniquer Datenbankprefix ? Salts in der wp-config ? Backend-Login via SSL ? HTTPS und ein A-Ranking bei SSL-Labs ?
  • 5. … Observatory von Mozilla The new kid in town
  • 6. Fangen wir vorne an Schon seit Monaten hatte ich mit meinem Blog ein A+ Rating bei SSL Labs. WordPress Core, Theme und Plugins waren gepflegt, der NGinx getweakt, das Linux auf dem Server zugenagelt.
  • 9. WTF! Ein „Grade F“ bei Observatory
  • 10. Ursachen für das „F - Rating“ Keine Content Security Policy (CSP) Header Kein HSTS bei der SSL Konfiguration Keine Response Header „X-Header“ X-Content-Type-Options X-Frame-Options X-XSS-Protection
  • 11. Erklärung der „X-Header“ X-Frame-Options: [ SAMEORIGIN / ALLOW-FROM / DENY]
 
 Wird benutzt um dem Browser zu signalisieren, ob eine Webseite in einem Frame, iFrame oder Objekt gerendert werden soll. Damit kann man Clickjacking Attacken verhindern, indem der Inhalt einer Webseite nicht in einer anderen Webseite eingebettet werden kann.
  • 12. Erklärung der „X-Header“ X-Content-Type-Options: nosniff 
 Wird benutzt um dem Browser zu signalisieren, der Mitgelieferte MIME- Type auf jeden Fall respektiert werden soll. Damit wird JavaScript-Code in Bildern vom Browser ignoriert. Dieser Header vervollständigt den Schutz vor Cross-Site-Scripting mit Bilder der Contend Security Policy (CSP)
  • 13. Erklärung der „X-Header“ X-XSS-Protection: 1; mode=block 
 Dieser Header wurde geschaffen, um den Cross Site Scripting (XSS) Filter einzuschalten, der in jedem modernen Browser enthalten ist.
 Normalerweise ist dieser Filter bereits per default im Browser aktiviert. Das Setzen des Headers erzwingt jedoch das Einschalten des Filters.
  • 14. Content Security Header (CSP) Die CSP HTTP-Header bilden einen zusätzlichen Sicherheits-Layer. Dieser Layer hilft Cross Site Scripting (XSS) und andere Code Injections zu verhindern, indem nur definierte Content Quellen vom Browser geladen werden. Quelle: https://www.keycdn.com/blog/http-security-headers/
  • 15. Content Security Header (CSP) Jeder der großen Browserhersteller unterstützt CSP HTTP-Header komplett oder zumindest teilweise. Quelle: https://www.keycdn.com/blog/http-security-headers/ Mehr Informationen dazu erhält man bei caniuse.com: 
 http://caniuse.com/#search=content%20security%20policy
  • 16. Content Security Header (CSP) CSP-Header in eine WordPress-Installation einzubinden ist nicht schwer, aber bedarf großer Sorgfalt. Für meinen Fotoblog (https:// blog.lichttraeumer.de) sieht das wie folgt aus:
  • 17. Content Security Header (CSP) content-security-policy:default-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.google-analytics.com https:// www.google.com https://maps.google.com https://maps.googleapis.com https://piwik.martin-wolfert.de; img-src 'self' data: https://www.google- analytics.com https://secure.gravatar.com https://csi.gstatic.com https:// stats.g.doubleclick.net https://ps.w.org https://piwik.martin-wolfert.de https://ajax.googleapis.com https://www.bloggerei.de; font-src 'self' data: https://fonts.gstatic.com; child-src 'self' https://piwik.martin-wolfert.de; style-src 'self' 'unsafe-inline' https://ajax.googleapis.com https:// www.google.com https://fonts.googleapis.com; report-uri https:// lichttraeumerblog.report-uri.io/r/default/csp/enforce „unsafe-inline“ = inline Sourcen wie style attribute, onclick … 
 „unsafe-eval“ = unsichere dynamische Funktionen, z.B. JS eval() 

  • 18. HTTP Strict Transport Security (HSTS) HSTS ist eine opt-in Security Maßnahme, und wird durch einen speziellen HTTP Response-Header gesetzt. Diesen Header zu setzen macht nur Sinn, wenn die Webseite via HTTPS zu erreichen ist. 
 
 In diesem Falle erkennt der Browser den HSTS-Header, und lädt die aufgerufenen Webseite in der Zukunft (für eine definierte Zeit) nur noch über HTTPS. Beispiel: 
 Strict-Transport-Security: max-age=31536000; includeSubDomains Mehr Informationen: 
 https://www.owasp.org/index.phpHTTP_Strict_Transport_Security_Cheat_Sheet
  • 19. Ist es sinnvoll all den Kram umzusetzen? Meiner Meinung nach Ja, weil Sicherheit im Netz von Größen wie Google, Mozilla, Akamai, Cisco etc. stark gepusht wird: Google rankt HTTPS besser als HTTP Die Internet Security Research Group (ISRG) hat Letsencrypt eingeführt Google’s Chrome Browser wird ab Januar HTTP Seiten als unsicher anzeigen
  • 20. Conclusio Ich denke, dass „sichere Webseiten“ zukünftig bei Google und Co ein besseres Ranking erfahren werden. Mit Tools wie Observatory, oder Securityheaders.io, wird es Webseitenbetreibern, Freelancer, Agenturen und Admins leicht gemacht, Schwachstellen aufzuzeigen und zu fixen. Dadurch wird es einfacher, Kunden den Mehraufwand in Bezug auf Sicherheit seiner Webpräsenz näherzubringen und dafür auch entlohnt zu werden.
  • 21.
  • 22. Links und Quellen Observatory: https://observatory.mozilla.org/ Security Headers: https://securityheaders.io Chrome und HTTP/HTTPS: https://security.googleblog.com/2016/09/moving-towards-more-secure- web.html Mozilla Security Guidlines: https://wiki.mozilla.org/Security/Guidelines/Web_Security QWASP https://www.owasp.org/ CSP Header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy Bildquellen: unsplash.com, panosozi (via Deviant Art), Free stock photos