Content-Security-Policy ヘッダー
Content-Security-Policy ヘッダー
Content Security Policy (CSP) は、クロスサイト スクリプティング (XSS) などのデータ挿入攻撃から保護するために、最新のブラウザーで使用されているセキュリティ標準です。CSP ではホワイトリストを使用して、安全にロードできるリソースを判定し、検証されていないソースは無視します。また、セキュリティポリシーを回避しようとする試行も記録します。このポリシーを利用するには、1 つ以上のディレクティブが設定された Content-Security-Policy HTTP ヘッダーがサーバーに必要です。各ディレクティブは特定のリソース型に対応します。ディレクティブは、リソースに対するルールを宣言することでセキュリティポリシーを定義します。ブラウザー用に CSP を設定するには、次のコードを web.config ファイルに追加します。Content-Security-Policy ヘッダーの詳細については、こちらの Web サイトを参照してください。
ABBYY FlexiCapture をサードパーティ システムと統合する必要があり、他のホストへのアクセスが必要な場合は、それらを web.config ファイルに指定してください。セキュリティ構成設定を変更するたびに、必ずソフトウェアが正しく動作することを確認してください。
HTTP Strict-Transport-Security ヘッダー
HTTP Strict-Transport-Security ヘッダー
HTTP Strict-Transport-Security (HSTS) は、ブラウザーと Web サイトの間のすべての通信を、SSL プロトコルを使用した安全な接続に限定する Web サイト保護の仕組みです。HSTS が設定された Web サーバーには、HTTPS のみを使用し、HTTP の使用を禁止するようブラウザーに指示する情報が含まれます。HSTS は主に、リクエストとレスポンスを傍受する攻撃、たとえば MITM (Man-In-The-Middle) 攻撃を防ぐために使用されます。このセキュリティポリシーを使用するには、URL アドレス書き換えルールを使用して、HTTP 応答に Strict-Transport-Security (STS) ヘッダーを追加する必要があります。これは、不要な HTTP リクエストを防ぎ、すべての HTTP トラフィックを HTTPS にリダイレクトするために必要です (ルールで定義されたロジックに基づきます)。ルールを設定するには、URL Rewrite モジュールをインストールする必要があります。詳細については、Microsoft の Web サイトを参照してください。ブラウザー用に HSTS を設定するには、次のコードを web.config ファイルに追加します。HSTS の詳細については、Microsoft の Web サイトを参照してください。
max-age ディレクティブは、ルールが適用される期間 (秒単位) を指定します。上記のコード スニペットで指定されている値は 1 年に相当します。
X-Powered-By および X-AspNet-Version ヘッダー
X-Powered-By および X-AspNet-Version ヘッダー
Web サーバーのセキュリティ強化に不可欠な HTTP ヘッダーのほかに、省略可能なヘッダーもあります。こうした省略可能なヘッダーは標準で規定されていないことが多く、使用すると各 HTTP 要求で生成されるトラフィック量が増えるため、悪意のある攻撃を実行しやすくなります。以下は、そのような省略可能なヘッダーの 2 つの例です:IIS 構成から X-AspNet-Version ヘッダーを削除するには、次のコードを web.config ファイルに貼り付けます:
- X-Powered-By は、Web サーバーで使用されているさまざまなテクノロジーに関する情報を含む HTTP ヘッダーです。
- X-AspNet-Version は、Web サーバー上でアプリケーションのデプロイに使用されている ASP.NET のバージョンに関する情報を含む HTTP ヘッダーです。
X-XSS-Protection ヘッダー
X-XSS-Protection ヘッダー
X-XSS-Protection は、クロスサイト スクリプティング攻撃を防ぐためにブラウザーで使用される HTTP ヘッダーです。このヘッダーは XSS フィルターを有効にすることで機能し、ブラウザーで開かれた Web ページに悪意のあるサードパーティ製コードを挿入しようとする不正な試みを遮断します。X-XSS-Protection は、次のブラウザーと互換性があります: Internet Explorer 8+、Chrome、Safari。ただし、最近のほとんどのブラウザーでは、より厳格なセキュリティ ポリシー (例: Content-Security-Policy) が使用されているため、このヘッダーが必要になるのは、CSP をサポートしていない古いブラウザーを使用している場合のみです。ブラウザーで X-XSS-Protection ヘッダーを有効にするには、次のコードを web.config ファイルにコピーします:
X-Content-Type-Options ヘッダー
X-Content-Type-Options ヘッダー
X-Content-Type-Options は、MIME (Multipurpose Internet Mail Extensions) の脆弱性を悪用する攻撃を防ぐためにブラウザーで使用される HTTP ヘッダーです。MIME は、インターネット接続を介して送信されるコンテンツに関するインターネット標準です。Web サーバーによって配信されるすべてのファイルは、それぞれのファイルの MIME 型に応じた方法でブラウザーに処理されます。ブラウザーは、Content-Type レスポンスを使用するか、またはリソースの内容を検査することによってリソース型を判定するため、攻撃者が HTML ファイルを別の型のファイルに見せかけることが可能になります。このヘッダーで使用できるディレクティブは nosniff のみです。これは、Web サーバーで指定された MIME 型のみを使用するようブラウザーに指示します。ブラウザーで X-Content-Type-Options ヘッダーを有効にするには、次のコードを web.config ファイルに貼り付けます:
Server ヘッダー
Server ヘッダー
Server Header は、送信元サーバーが request を処理するために使用したアプリケーションに関する情報 (例: アプリケーションのバージョン番号) を含むレスポンス ヘッダーです。この種の情報が第三者に知られることは、セキュリティ上の脅威となります。そのため、Server Header の内容を削除することをお勧めします。Server Header の内容を削除するには、次のコードを web.config ファイルに追加します:IIS 10.0、Windows Server 2016 以降を使用している場合は、代わりに次のコードを使用します:
上記の設定には、URL Rewrite モジュールがインストールされている必要があります。詳細については、Microsoft のドキュメントを参照してください。
X-Frame-Options ヘッダー
X-Frame-Options ヘッダー
既定では、ABBYY FlexiCapture Web Stations は iFrame を介して他社の Web サイトに埋め込むことができます。ただし、framesniffing が確認された場合は、コンテンツがクロスドメインの iFrame でホストされるのを防ぐために、次の操作を行ってください。
- 左側の Connections ペインで Sites フォルダーを展開し、保護するサイトを選択します。
- 中央の機能一覧で HTTP Response Headers アイコンをダブルクリックします。
- 右側の 操作 ペインで Add をクリックします。
- 開いたダイアログで、Name フィールドに X-Frame-Options と入力し、Value フィールドに SAMEORIGIN または DENY と入力します。
Slow HTTP POST の脆弱性
Slow HTTP POST の脆弱性
Slow HTTP POST の脆弱性は、Slowloris HTTP 攻撃とも呼ばれる低速 HTTP サービス拒否 (DoS) 攻撃の一種です。低速 HTTP POST 攻撃では、攻撃者は HTTP POST リクエストで大量のデータを送信すると宣言し、その後、そのデータを非常に低速で送信します。顧客側で Slow HTTP POST の脆弱性に対処するには、Application Server がインストールされているマシンの IIS 構成で Web Limits を設定する必要があります。制限は、次のパラメーターに対して設定する必要があります。
- ConnectionTimeout
- MinFileBytesPerSec.
HTTP ではなく HTTPS を使用する
HTTP ではなく HTTPS を使用する
HTTP プロトコルにはデータを暗号化するためのセキュリティ機構がありませんが、HTTPS では SSL または TLS のデジタル証明書によって、サーバーとクライアント間の通信を保護できます。ユーザーのブラウザーと Web サーバー間のすべてのトラフィックが、HTTPS を使用した暗号化チャネル経由で強制されるようにしてください。HTTP は既定でポート 80 を使用します。HTTP の使用を防ぐため、このポートを閉じてください。
最新の TLS バージョンと強力な暗号を使用する
最新の TLS バージョンと強力な暗号を使用する
TLSv1.1 は脆弱な暗号化プロトコルと見なされています。攻撃者はこのプロトコルの弱点を悪用して、保護された通信を盗み見たり、メッセージを悪意を持って改ざんしたりする可能性があります。常に利用可能な限り最新の TLS バージョンを使用し、強力な暗号のみを使用することをお勧めします (適切な暗号の一覧は https://wiki.mozilla.org/Security/Server_Side_TLS を参照してください) 。グループ ポリシーを使用して SSL Cipher を構成するには、次の手順を実行します。
- コマンド プロンプトで gpedit.msc と入力します。Group Policy Object Editor が表示されます。
- Computer Configuration、Administrative Templates、Network の順に展開し、SSL Configuration Settings をクリックします。
- SSL Configuration Settings で、SSL Cipher Suite Order 設定をクリックします。
- SSL Cipher Suite Order ペインで、ペインの一番下までスクロールします。
- How to modify this setting というラベルの手順に従います。
分散型サービス拒否(DDoS)攻撃からの保護
分散型サービス拒否(DDoS)攻撃からの保護
分散型サービス拒否 (DDoS) 攻撃では、HTTPリクエストによってアプリケーションに過大な負荷をかけ、トラフィック量を大幅に増加させることで、正規のユーザーがアプリケーションにアクセスできない状態を引き起こします。この種の攻撃は、正当なトラフィックと悪意のあるトラフィックを見分けるのが難しいことが多いため、検出が容易ではありません。WebサーバーをDDoS攻撃から保護するには、一定時間内のリクエスト数、または同時リクエスト数が許容値を超えた場合に、IISサーバーがアプリケーションへのアクセスをブロックするよう設定することをお勧めします。上記のように IIS で DDoS 保護を設定するには、次の手順に従います。
- IIS Manager を起動します。
- ツリービューで Web サイトを選択し、サイトのホームページで IP Address and Domain Restrictions アイコンをダブルクリックします。
- 操作 ペインで Edit Dynamic Restriction Settings をクリックします。
- 表示されたダイアログで、使用する方法を選択します: Deny IP Address based on the number of concurrent requests または Deny IP Address based on the number of requests over a period of time。
- OK をクリックします。
- IIS Manager を起動します。
- ツリービューで Web サイトを選択し、サイトのホームページで IP Address and Domain Restrictions アイコンをダブルクリックします。
- 操作 ペインで Edit Dynamic Restriction Settings をクリックします。
- 表示されたダイアログで、Deny Action Type ドロップダウンリストから目的の操作の種類を選択します。
- OK をクリックします。
- IIS Manager を起動します。
- ツリービューで Web サイトを選択し、サイトのホームページで IP Address and Domain Restrictions アイコンをダブルクリックします。
- 操作 ペインで Edit Feature Settings をクリックします。
- Edit IP and Domain Restriction Settings ダイアログで、Enable Proxy Mode を選択します。
- OK をクリックします。
大量のトラフィックを処理するためにプロキシ モードを使用すると、システム パフォーマンスに影響し、正規のユーザーがアプリケーションにアクセスしにくくなる可能性があります。
