Themenkomponente ungültiger Wert für "Content Security Policy erweitern"

Symptome: Nach dem Update auf 3.4 gab das gesamte Forum „Ups“ aus. Zu allem Überfluss blieben die Protokolle dazu völlig stumm.

Es gab eine Themenkomponente mit „extend security policy“ mit dem Wert script-src: 'unsafe-eval' https://redacted.example.com

Dies brachte das gesamte Forum zum Absturz, da im Action Dispatcher eine Ausnahme ausgelöst wurde, weil sich ein Leerzeichen im Wert befand.

ActionDispatch::ContentSecurityPolicy::InvalidDirectiveError (Ungültige Content Security Policy script-src: \\\"'unsafe-eval' https://redacted.example.com\\\". Direktivenwerte dürfen keine Leerzeichen enthalten
 oder Semikolons. Bitte verwenden Sie stattdessen mehrere Argumente oder andere Direktivenmethoden.)

Oh, ich habe das Wichtigste vergessen. Der sichere Modus funktionierte nicht!!

5 „Gefällt mir“

Ich werde das weiter untersuchen und mich bei Ihnen melden. Welche Discourse-Version hatte Ihr Forum vor dem Upgrade auf 3.4?

1 „Gefällt mir“

Es war am 3.3.3.

Hallo @michaeld, ich habe einen Fix in das neueste main mit FIX: invalid CSP directive sources should allow site to boot with valid CSP directives by tyb-talks · Pull Request #31256 · discourse/discourse · GitHub integriert. Dieser ist jetzt auch in tests-passed und stable verfügbar.

Diese Verhaltensänderung bei der Handhabung von CSP-Direktiven entstand aus einem zurückportierten Sicherheitspatch in Rails – ich gehe im PR näher darauf ein. :slight_smile: Discourse wird solche Werte nun filtern, bevor die CSP erstellt wird.

Was den Safe Mode betrifft, da er nur die JavaScript-Seite deaktiviert, hätte er hier nicht geholfen, da diese Daten serverseitig verarbeitet werden.

5 „Gefällt mir“

Dieses Thema wurde 3 Tage nach der letzten Antwort automatisch geschlossen. Neue Antworten sind nicht mehr möglich.