ホームページ >ウェブフロントエンド >jsチュートリアル >コンテンツ セキュリティ ポリシー (CSP) は、悪意のあるコードの挿入から Web サイトをどのように保護しますか?

コンテンツ セキュリティ ポリシー (CSP) は、悪意のあるコードの挿入から Web サイトをどのように保護しますか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-09 11:20:02667ブラウズ

How does Content Security Policy (CSP) protect websites from malicious code injections?

コンテンツ セキュリティ ポリシー (CSP) について

「拒否されました」などの開発者コンソールでよく発生するエラーは、コンテンツ セキュリティ ポリシーの影響です。 (CSP) は、信頼できないソースからのリソースのロードを制限するセキュリティ対策です。

CSP の仕組み

CSP を使用すると、リソースのロード元を制御できます。 HTTP ヘッダー Content-Security-Policy のディレクティブを通じて、許可されるソースを定義します。これらの制限を設定することで、XSS 攻撃などの悪意のあるコード インジェクションのリスクを最小限に抑えることができます。

ディレクティブ

一般的なディレクティブには次のものがあります。

  • default-src: のデフォルト ポリシーさまざまなリソースを読み込みます。
  • script-src: JavaScript ファイルの有効なソースを定義します。
  • style-src: CSS ファイルの有効なソースを定義します。
  • img-src: 有効なソースを定義します画像のソース。
  • connect-src: AJAX リクエストまたは WebSocket 接続の有効なターゲットを定義します。

CSP の使用

1.複数のソースを許可する:

content="default-src 'self' https://example.com/js/"

2.複数のディレクティブを定義します:

content="default-src 'self' https://example.com/js/; style-src 'self'"

3.ポートの処理:

content="default-src 'self' https://example.com:123/free/stuff/"

4.異なるプロトコルの処理:

content="default-src 'self'; connect-src ws:; style-src 'self'"

5.許可ファイルプロトコル:

content="default-src filesystem"

6.インラインスタイルとスクリプト:

content="script-src 'unsafe-inline'; style-src 'unsafe-inline'"

7. eval() を許可します:

content="script-src 'unsafe-eval'"

8. 「self」の意味:
「self」は、ポリシーが定義されているファイルと同じスキーム、ホスト、ポートを持つソースを指します。

9.ワイルドカード警告:
content="default-src *" を使用すると、インライン スクリプトや eval() の許可など、特定の危険なアクションが許可されます。真の脆弱性については、次の点を考慮してください。

content="default-src * 'unsafe-inline' 'unsafe-eval'"

リソース

  • content-security-policy.com
  • en.wikipedia.org/wiki/Content_Security_Policy

以上がコンテンツ セキュリティ ポリシー (CSP) は、悪意のあるコードの挿入から Web サイトをどのように保護しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。