コンテンツにスキップ

サーバーのレスポンスヘッダーの変更

Change server response headersルールは、サーバーのレスポンスヘッダーの追加、削除、および値の変更が可能です。

このルールタイプは、アプリケーションのセキュリティを強化する追加レイヤーを構成する目的で、主に次の用途に使用します:

  • 特定のページでクライアントが読み込むことを許可されるリソースを制御するレスポンスヘッダーContent-Security-Policyを追加します。これはXSS攻撃からの防御に役立ちます。

    サーバーがこのヘッダーをデフォルトで返さない場合は、ルールChange server response headersを使用して追加することを推奨します。MDN Web Docsには、取り得るヘッダー値ヘッダーの使用例が記載されています。

    同様に、このルールを使用して、レスポンスヘッダーX-XSS-ProtectionX-Frame-OptionsX-Content-Type-Optionsを追加できます。

  • インストール済みモジュールのバージョン情報を含むNGINXのヘッダーServerやその他のヘッダーを変更します。この種のデータは、攻撃者がインストールされているモジュールのバージョンに存在する脆弱性を特定し、その結果として脆弱性を悪用する目的で利用される可能性があります。

    NGINXのヘッダーServerは、Wallarm node 2.16以降で変更できます。

ルールChange server response headersは、その他のビジネス上および技術上の課題への対応にも使用できます。

ルールの作成と適用

ルールを作成して適用するには、次の手順を実行します。

  1. Proceed to Wallarm Console:

    • RulesAdd rule or your branch → Add rule.
    • Attacks / Incidents → attack/incident → hit → Rule.
    • API Discovery (if enabled) → your endpoint → Create rule.
  2. If request isで、ルールを適用する対象範囲を指定します

  3. Thenで、Change server response headersを選択し、次を設定します:

    • 追加するヘッダー名、または値を置き換える対象のヘッダー名。
    • 指定したヘッダーの新しい値(複数可)。
    • 既存のレスポンスヘッダーを削除するには、Replaceタブで値を空にします。
  4. ルールのコンパイルの完了を待ちます。

例: セキュリティポリシーヘッダーとその値の追加

https://example.com/ のすべてのコンテンツがサイトのオリジンからのみ配信されるようにするには、ルールChange server response headers*を使用して、次のようにレスポンスヘッダーContent-Security-Policy: default-src 'self'を追加できます:

ルール「Change server response headers」の例