Zur Navigation

CSP-Header aktivieren

1 Jörg Kruse

Ab JKBB 4.3 ist es möglich, in der Forensoftware HTTP-Header für die Content Security Policy (CSP) zu aktivieren. Erläuterungen zu CSP findet sich auf Wikipedia und SELFHTML:

https://de.wikipedia.org/wiki/Content_Security_Policy

https://wiki.selfhtml.org/wiki/Sicherheit/Content_Security_Policy

CSP-Header lassen sich zwar auch in der .htaccess Datei setzen, die Forensoftware bietet darüber hinaus aber die Möglichkeit, Nonces für direkt eingebundene Scripte zu verwenden.

Eine Aktivierung erfolgt in der Konfigurationsdatei /includes/config.php:

$b_csp = true;

Damit sind nur noch Scripte, Styles, Bilder, Medien etc. erlaubt, die von der eigenene Domain geladen werden. Wird im Adminbereich unter Adminstration -> BBCode/Smilies der Bild-Button aktiviert, werden automatisch auch Bilder von externen Domains erlaubt, bei Aktivierung des Video-Buttons auch Videos von Youtube.

Beim manuellen Einfügen von Inline-Scripten in die Template-Datei /indcludes/output/main.php muss dem jeweiligen Script eine Nonce mitgegeben werden:

<script nonce="<?php echo CSP_NONCE ?>">
/* Inhalt des Scripts */
</script>

Um externe Ressourcen von andere Domains laden zu können, muss in der Konfigurationsdatei /includes/config.php das Array $a_csp_hosts um die erlaubten Hosts erweitert werden, siehe dazu auch Erläuterungen in /includes/config-default.php.

Beispielsweise ist für die Einbindung von Matomo von der externen Subdomain matomo.example.org folgender Code notwendig:

$matomo_host = 'matomo.example.org';
$a_csp_hosts['script'][] = $matomo_host;
$a_csp_hosts['connect'][] = $matomo_host;
$a_csp_hosts['img'][] = $matomo_host;

Da alles, was in der CSP nicht erlaubt wird, vom Browser geblockt wird, ist sorgfältiges Testen erforderlich.

12.12.2023 11:30 | geändert: 12.12.2023 11:39

Nur Mitglieder können in diesem Forum Antworten schreiben.

Login | Registrieren