Hallo zusammen,
leider habe ich keinen Bereich für Sicherheitsthemen gefunden, deshalb hier.
Hat jemand von euch eine CSP und weitere Sicherheitsmechanismen eingerichtet? Gibt es eine speziell auf webEdition zugeschnittene Anleitung? Erfahrungsgemäß (Erfahrungen mit anderen CMS) kommt es da regelmäßig zu Problemen. Da ich webEdition noch nicht so gut kenne, würde ich mich über Feedback freuen.
Danke,
Ruby
Sicherhet: Content Security Policy / XSS
-
- Junior Member
- Beiträge: 18
- Registriert: So 3. Feb 2019, 15:16
-
- Junior Member
- Beiträge: 18
- Registriert: So 3. Feb 2019, 15:16
Re: Sicherhet: Content Security Policy / XSS
Hallo nochmal,
habe die .htaccess für den Start wie folgt manipuliert:
Damit bekomme ich bei Sicherheitstests nun gute Ergebnisse und im Frontend funktioniert soweit noch alles.
Allerdings leidet das Backend, man kommt zwar rein, kann aber nichts mehr machen. Hat jemand Ideen, an welchen Stellen ich die CSP verfeinern muss, damit das Backend wieder läuft? (Die CSP oben ist ja bewusst erst mal sehr einfach gehalten).
Ideal wäre natürlich ein Quick Fix
Herzlichst,
Ruby
habe die .htaccess für den Start wie folgt manipuliert:
Code: Alles auswählen
<IfModule mod_headers.c>
Header set X-Frame-Options "sameorigin"
Header set X-XSS-Protection "1; mode=block"
Header set X-Content-Type-Options "nosniff"
Header set Strict-Transport-Security "max-age=31536000"
Header set Content-Security-Policy "default-src 'self';"
</IfModule>
Allerdings leidet das Backend, man kommt zwar rein, kann aber nichts mehr machen. Hat jemand Ideen, an welchen Stellen ich die CSP verfeinern muss, damit das Backend wieder läuft? (Die CSP oben ist ja bewusst erst mal sehr einfach gehalten).
Ideal wäre natürlich ein Quick Fix
Herzlichst,
Ruby
Re: Sicherhet: Content Security Policy / XSS
Welche Version von WE setzt du denn ein?
Wenn du das CSP setzt, dann mußt du alle Inhaltstypen regulieren. Und wir setzen aktuell noch inline-js ein, was durch das Setzen der CSP primär verboten ist.
Es ist hilfreich die Debug-Konsole des Browsers zu öffnen - die schreiben eigentlich dann alles raus, was sie wg. welcher Einstellung blockieren.
Ich denke du solltest auch
style-src 'self' 'unsafe-inline'
setzen, sonst ist das style-Attribut auch bei allen Elementen raus.
Wenn du das CSP setzt, dann mußt du alle Inhaltstypen regulieren. Und wir setzen aktuell noch inline-js ein, was durch das Setzen der CSP primär verboten ist.
Es ist hilfreich die Debug-Konsole des Browsers zu öffnen - die schreiben eigentlich dann alles raus, was sie wg. welcher Einstellung blockieren.
Ich denke du solltest auch
style-src 'self' 'unsafe-inline'
setzen, sonst ist das style-Attribut auch bei allen Elementen raus.
webEdition-Kern-Entwickler
-
- Junior Member
- Beiträge: 18
- Registriert: So 3. Feb 2019, 15:16
Re: Sicherhet: Content Security Policy / XSS
Hi,
danke für die schnelle Rückmeldung.
Der Einsatz von inline-js schafft ja potentielle Einfallstore. Wie unterbindet ihr daraus entstehende Gefahren?
Viele Grüße,
Ruby
danke für die schnelle Rückmeldung.
Der Einsatz von inline-js schafft ja potentielle Einfallstore. Wie unterbindet ihr daraus entstehende Gefahren?
Viele Grüße,
Ruby
-
- Junior Member
- Beiträge: 18
- Registriert: So 3. Feb 2019, 15:16
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Sicherhet: Content Security Policy / XSS
Hallo Ruby,
Eine relativ einfache Maßnahme ist, das Backend unter einer eigenen (Sub-)Domain zu betreiben. Dann kannst du für Frontend und Backend eigene optimierte CSP-Regel definieren. Zusätzlich ist damit das Backend auch nicht direkt über das Frontend aufrufbar.
HTH,
Sascha
Eine relativ einfache Maßnahme ist, das Backend unter einer eigenen (Sub-)Domain zu betreiben. Dann kannst du für Frontend und Backend eigene optimierte CSP-Regel definieren. Zusätzlich ist damit das Backend auch nicht direkt über das Frontend aufrufbar.
HTH,
Sascha
-
- Junior Member
- Beiträge: 18
- Registriert: So 3. Feb 2019, 15:16
Re: Sicherhet: Content Security Policy / XSS
Hi Sascha,
interessante, wenngleich unkonventionelle Idee.
Gibt es hierfür eine Anleitung?
Danke,
Ruby
interessante, wenngleich unkonventionelle Idee.
Gibt es hierfür eine Anleitung?
Danke,
Ruby
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Sicherhet: Content Security Policy / XSS
Hallo Ruby,
Glaube nicht, dass es dafür eine Anleitung gibt. Ist aber nicht soooo kompliziert.
Hier noch ein paar ergänzende Infos:
Wir verwenden das idR bei Multi-Domain Setups. Dabei wird wE auf der Backend-Domain installiert. Die Sites über die Frontend Domain(s) bereitgestellt. Der Rest ist dann Hosting-Setup und ggf. Setzen von Symlinks.
HTH,
Sascha
Glaube nicht, dass es dafür eine Anleitung gibt. Ist aber nicht soooo kompliziert.
Hier noch ein paar ergänzende Infos:
Wir verwenden das idR bei Multi-Domain Setups. Dabei wird wE auf der Backend-Domain installiert. Die Sites über die Frontend Domain(s) bereitgestellt. Der Rest ist dann Hosting-Setup und ggf. Setzen von Symlinks.
HTH,
Sascha
Re: Sicherhet: Content Security Policy / XSS
... hier mit funktioniert alles soweit (7.04) - Knackpunkt war 'unsafe-eval':
Header set Content-Security-Policy: "default-src 'self' domain.tld; script-src 'self' 'unsafe-inline' 'unsafe-eval' domain.tld; style-src 'self' 'unsafe-inline' domain.tld; img-src 'self' domain.tld; font-src 'self' domain.tld; connect-src 'self' domain.tld;"
Header set X-Content-Security-Policy: "default-src 'self' domain.tld; script-src 'self' 'unsafe-inline' 'unsafe-eval' domain.tld; style-src 'self' 'unsafe-inline' domain.tld; img-src 'self' domain.tld; font-src 'self' domain.tld; connect-src 'self' domain.tld;"
Header set X-WebKit-CSP: "default-src 'self' domain.tld; script-src 'self' 'unsafe-inline' 'unsafe-eval' domain.tld; style-src 'self' 'unsafe-inline' domain.tld; img-src 'self' domain.tld; font-src 'self' domain.tld; connect-src 'self' domain.tld;"
Header set Content-Security-Policy: "default-src 'self' domain.tld; script-src 'self' 'unsafe-inline' 'unsafe-eval' domain.tld; style-src 'self' 'unsafe-inline' domain.tld; img-src 'self' domain.tld; font-src 'self' domain.tld; connect-src 'self' domain.tld;"
Header set X-Content-Security-Policy: "default-src 'self' domain.tld; script-src 'self' 'unsafe-inline' 'unsafe-eval' domain.tld; style-src 'self' 'unsafe-inline' domain.tld; img-src 'self' domain.tld; font-src 'self' domain.tld; connect-src 'self' domain.tld;"
Header set X-WebKit-CSP: "default-src 'self' domain.tld; script-src 'self' 'unsafe-inline' 'unsafe-eval' domain.tld; style-src 'self' 'unsafe-inline' domain.tld; img-src 'self' domain.tld; font-src 'self' domain.tld; connect-src 'self' domain.tld;"
OMOC.interactive https://www.omoc.de/ - webEdition e.V. Gründungsmitglied & Ex Fördermitglied
Re: Sicherhet: Content Security Policy / XSS
Nachtrag: für Captcha-Bilder muss noch "data:" bei img-src gesetzt sein ...
OMOC.interactive https://www.omoc.de/ - webEdition e.V. Gründungsmitglied & Ex Fördermitglied
Re: Sicherhet: Content Security Policy / XSS
ich überlege, ob man das evtl. auch sammeln sollte und auf eine zentrale WE Seite packt. Die Einstellungen werden sich ja sicherlich noch ändern. Wir wollen ja zumindest von dem unsafe-inline-js weg. In WE 8.1 dürfte es eigentlich kein js-eval mehr geben; es sei denn durch eine Lib.
webEdition-Kern-Entwickler
Re: Sicherhet: Content Security Policy / XSS
... macht evtl. Sinn. Ggf. das hier noch dabei, da hätte man soweit alles abgedeckt:
Header set X-Frame-Options SAMEORIGIN
Header always set Feature-Policy "geolocation 'none'; midi 'none'; camera 'none'; usb 'none'; magnetometer 'none'; accelerometer 'none'; vr 'none'; speaker 'none'; ambient-light-sensor 'none'; gyroscope 'none'; microphone 'none'"
Header always set Referrer-Policy "strict-origin"
Header set X-Frame-Options SAMEORIGIN
Header always set Feature-Policy "geolocation 'none'; midi 'none'; camera 'none'; usb 'none'; magnetometer 'none'; accelerometer 'none'; vr 'none'; speaker 'none'; ambient-light-sensor 'none'; gyroscope 'none'; microphone 'none'"
Header always set Referrer-Policy "strict-origin"
OMOC.interactive https://www.omoc.de/ - webEdition e.V. Gründungsmitglied & Ex Fördermitglied
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste