Security-testing-http-security

提供:Dev Guides
移動先:案内検索

HTTPセキュリティ

HTTPセキュリティ

HTTPはインターネット経由の通信に使用されるため、アプリケーション開発者、情報プロバイダー、およびユーザーはHTTP/1.1のセキュリティ制限に注意する必要があります。 この説明には、ここで言及した問題に対する決定的な解決策は含まれていませんが、セキュリティリスクを軽減するためのいくつかの提案がなされています。

個人情報の漏洩

HTTPクライアントは、多くの場合、ユーザーの名前、場所、メールアドレス、パスワード、暗号化キーなどの大量の個人情報を所有しています。 したがって、ユーザーとして、HTTPプロトコルを介して他のソースにこの情報が意図せずに漏洩しないように、非常に注意する必要があります。

  • すべての機密情報は、暗号化された形式でサーバー側に保存する必要があります。
  • サーバーの特定のソフトウェアバージョンを明らかにすると、サーバーマシンがセキュリティホールを含むことが知られているソフトウェアに対する攻撃に対してより脆弱になる可能性があります。
  • ネットワークファイアウォールを介してポータルとして機能するプロキシは、ファイアウォールの背後にあるホストを識別するヘッダー情報の転送に関して特別な予防措置を講じる必要があります。
  • [フォーム]フィールドで送信される情報は、ユーザーのプライバシーの利益またはサイトのセキュリティポリシーと競合する可能性があります。 したがって、ユーザーがフィールドのコンテンツを無効化、有効化、および変更できるようにしない限り、送信しないでください。
  • 参照ページが安全なプロトコルで転送された場合、クライアントは安全でないHTTP要求にRefererヘッダーフィールドを含めないでください。
  • HTTPプロトコルを使用するサービスの作成者は、機密データの送信にGETベースのフォームを使用しないでください。これにより、このデータがRequest-URIでエンコードされるためです。

ファイルおよびパス名ベースの攻撃

文書は、サーバー管理者が意図したものだけになるように、HTTP要求によって返される文書に制限する必要があります。

たとえば、UNIX、Microsoft Windows、およびその他のオペレーティングシステムは..を使用します。 現在のレベルより上位のディレクトリレベルを示すパスコンポーネントとして。 そのようなシステムでは、HTTPサーバーは、HTTPサーバーを介してアクセスできるように意図されたリソース以外のリソースへのアクセスを許可する場合、Request-URIでそのような構成を許可しなければなりません。

DNSスプーフィング

HTTPを使用するクライアントは、ドメインネームサービスに大きく依存しているため、一般に、IPアドレスとDNS名の意図的な誤関連付けに基づくセキュリティ攻撃を受けやすくなります。 クライアントは、IP番号/DNS名の関連付けの継続的な有効性を想定する際に注意する必要があります。

HTTPクライアントがパフォーマンスの向上を達成するためにホスト名検索の結果をキャッシュする場合、DNSによって報告されたTTL情報を監視する必要があります。 HTTPクライアントがこの規則を遵守しない場合、以前にアクセスしたサーバーのIPアドレスが変更されると、それらが偽装される可能性があります。

ロケーションヘッダーとなりすまし

単一のサーバーが相互に信頼しない複数の組織をサポートする場合、その組織の制御下で生成される応答のLocationおよびContent-Locationヘッダーの値をチェックして、リソースを無効にしようとしないことを確認する必要があります彼らには権限がありません。

認証資格

既存のHTTPクライアントとユーザーエージェントは通常、認証情報を無期限に保持します。 HTTP/1.1は、サーバーがクライアントにこれらのキャッシュされた資格情報を破棄するよう指示する方法を提供しません。これは大きなセキュリティリスクです。

スクリーンセーバー、アイドルタイムアウト、およびこの問題に固有のセキュリティ問題を軽減する他の方法でパスワード保護を使用することをお勧めします。

プロキシとキャッシュ

HTTPプロキシは中間者であり、中間者攻撃の機会を表します。 プロキシは、セキュリティ関連の情報、個々のユーザーと組織に関する個人情報、およびユーザーとコンテンツプロバイダーに帰属する専有情報にアクセスできます。

プロキシオペレータは、機密情報を含むまたは転送するシステムを保護するため、プロキシが実行されるシステムを保護する必要があります。

キャッシュの内容は悪意のある悪用の魅力的な標的であるため、キャッシュプロキシは追加の潜在的な脆弱性を提供します。 したがって、キャッシュの内容は機密情報として保護する必要があります。