diff --git a/src/ContentSecurityPolicy/Violation/Filter/BrowserBugsNoiseDetector.php b/src/ContentSecurityPolicy/Violation/Filter/BrowserBugsNoiseDetector.php index a76fbc49..1f364756 100644 --- a/src/ContentSecurityPolicy/Violation/Filter/BrowserBugsNoiseDetector.php +++ b/src/ContentSecurityPolicy/Violation/Filter/BrowserBugsNoiseDetector.php @@ -55,6 +55,11 @@ public function match(Report $report, Request $request): bool } } + // https://bugzilla.mozilla.org/show_bug.cgi?id=1873553 + if ('view-source' === $report->getSourceFile()) { + return true; + } + // files loaded by safari & firefox extension // should be allowed as in Chrome if ( diff --git a/tests/ContentSecurityPolicy/Violation/FilterTest.php b/tests/ContentSecurityPolicy/Violation/FilterTest.php index f34fc0d4..267e1d0e 100644 --- a/tests/ContentSecurityPolicy/Violation/FilterTest.php +++ b/tests/ContentSecurityPolicy/Violation/FilterTest.php @@ -229,6 +229,11 @@ public function provideVariousCases(): array 'blocked-uri' => 'www.gstatic.com', 'effective-directive' => 'script-src', ]], + [true, new Request(), [ + 'blocked-uri' => 'inline', + 'source-file' => 'view-source', + 'effective-directive' => 'style-src-attr', + ]], ]; } }