Mitigate XSS Attacks with Content Security Policy

As promised, this feature was just enabled by default: CSP Frame Ancestors enabled by default

「いいね!」 10

こんにちは。
現在、ウェブサイトにGoogle AdSenseを設定していますが、「/csp_reports で CSP 違反レポートの収集を有効にする」という設定が見当たらないようです。現在、Discourse をバージョン 2.9.0.beta6 でセルフホストしています。

上記引用部分にあるのは、私が探している設定のスクリーンショットです。


上記は、私の CSP 設定ページで、「/csp_reports で CSP 違反レポートの収集を有効にする」が表示されていません。

何かお手伝いいただけると幸いです!また、AdSense を初めて使用するので、設定が正しくできているかどうかも教えていただけますでしょうか? :eyes:

「いいね!」 3

申し訳ありませんが、以前の返信は古い情報です。約1か月前に content_security_policy_collect_reports が非表示設定になったためです。有効にすることは可能ですが、以下のようにRailsコンソール経由で行う必要があります。

./launcher enter app
...
rails c
...
SiteSetting.content_security_policy_collect_reports = true

これは非常にノイズが多くなるため、この方法はお勧めしません。代わりに、CSPを有効にし、ブラウザコンソールを開いた状態で複数のブラウザ(Chrome、Firefox、Safari)でサイトをナビゲートすることをお勧めします。ほとんどの問題はその方法で見つかるはずです。また、お持ちの設定では、CSPが保護しているほとんどすべてを許可しているような状態なので、レポートを必要とするような状況にはならないはずです。

「いいね!」 6

何か見落としているかもしれませんが、設定UIにこれらの設定が見当たりません。

  • content_security_policy
  • content_security_policy_report_only
  • content_security_policy_collect_reports(これは非表示になっているようです)
  • content_security_policy_script_src

これらはホストインスタンスで利用可能ですか?元の投稿やコメントには、それが制限事項であるという言及は見当たりませんでした。

編集: テーマを通じてセキュリティポリシーを設定しようとしました。

元の投稿で指示されているとおりに機能していないようです。

私が利用しているホストプランでは、テーマやテーマコンポーネント経由であっても、これが許可されていないということでしょうか?

それとも、私が完全に間違ったことをしているだけかもしれません。

「いいね!」 1

デフォルトでは、Discourse は以下のディレクティブを持つ CSP レベル 2 ポリシーを出荷しています。

  • base-uri<base> 要素の URL を制限します

base-uri ヘッダーのデフォルト値を上書きするオプションはありますか?

「いいね!」 1

\u003cbase\u003e 要素は実際にどのような場面で使われますか?

それはDiscourseのプッシュ通知を壊しますか?

そうかもしれません。もっと適切な設定が必要かもしれません。

「いいね!」 1

投稿が新しいトピックに分割されました:「セキュアな画像を使用するための推奨方法は?

こんにちは。

以下の問題の回避方法を教えていただけますか? content_security_policy_script_src に新しい Function() 式を呼び出すスクリプトを追加しましたが、ブラウザのコンソールには以下のエラーが表示されます。unsafe-eval を除外するにはどうすればよいですか?

Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive:

「いいね!」 1

申し訳ありません。もし以下の私の発言が正しければ、以前の投稿は無視してください。上記の投稿から、‘unsafe-eval’ を content_security_policy_script_src に直接設定でき、コンソールに JS エラーが報告されなくなったことがわかります。

「いいね!」 1

content security policy script src のサイト設定を確認してみてはどうでしょうか?

「いいね!」 1

はい。以前の返信で述べたように、「unsafe-eval」は content_security_policy_script_src に直接追加できます。URL のベースまたは完全な URL のみが追加できると思っていました。

「いいね!」 1