V9 通信検証の要件
Last-modified: 2020-08-10 (月) 14:20:20
Top/V9 通信検証の要件
管理目標 †
検査対象のアプリケーションが次の高次の要件を満たすことを確認します。
- 送信されるデータの機密性に関係なく、TLSまたは強力な暗号が常に使用されている
- 構成に関する最新の先導的な勧告が、優先アルゴリズムおよび暗号の有効化と順序づけに使用されている
- 脆弱または近い将来廃止予定のアルゴリズムや暗号は、最後の手段として順序付けされている
- 非推奨または既知のセキュアでないアルゴリズムや暗号が無効になっている セキュアなTLS構成に関する業界の主要な勧告は、既存のアルゴリズムや暗号の壊滅的な破綻が原因で頻繁に変更されます。常に最新のバージョンのTLS設定レビューツール(SSLyzeや他のTLSスキャナなど)を使用して、優先順位とアルゴリズム選択を設定してください。設定を定期的にチェックして、セキュアな通信設定が常に存在し有効であることを確認します。
V9.1 通信のセキュリティ要件 †
すべてのクライアント通信は、暗号化された通信経路を介してのみ行われる必要があります。特に、最新のブラウザや検索エンジンでは、TLS1.2以降の使用が必須とされています。オンラインツールを使用して定期的に構成を見直し、最新の先進的な手法が採用されていることを確認する必要があります。
項番 | 説明 | L1 | L2 | L3 | CWE No | タイトル | 概要 |
9.1.1 | 安全なTLSがすべてのクライアント接続に使用されており、安全でないプロトコルや非暗号化プロトコルにフォールバックしない。 (C8) | ✓ | ✓ | ✓ | 319 | 機密情報のクリアテキスト送信 | ソフトウェアは、機密情報またはセキュリティ上重要なデータを、許可されていないアクターが盗聴できる通信チャネルでクリアテキストで送信します。 |
9.1.2 | オンラインまたは最新のTLSテストツールを使用して、強力なアルゴリズム、暗号、プロトコルのみが有効であり、最も強力なアルゴリズムと暗号が優先的に設定されている。 | ✓ | ✓ | ✓ | 326 | 不十分な暗号化強度 | ソフトウェアは、理論的には健全な暗号化スキームを使用して機密データを保存または送信していますが、必要な保護レベルには十分な強度を持っていません。 |
9.1.3 | 古いバージョンのSSLやTLSプロトコル(SSLv2、SSLv3、TLS 1.0、TLS 1.1)、アルゴリズム、暗号および構成が無効になっている。最新バージョンのTLSを優先する暗号スイートに設定する。 | ✓ | ✓ | ✓ | 326 | 不十分な暗号化強度 | ソフトウェアは、理論的には健全な暗号化スキームを使用して機密データを保存または送信していますが、必要な保護レベルには十分な強度を持っていません。 |
V9.2 サーバ通信のセキュリティ要件 †
サーバ通信はHTTPだけではありません。監視システム、管理ツール、リモートアクセスやSSH、ミドルウェア、データベース、メインフレーム、パートナーまたは外部ソースシステムなど、他のシステムとの安全な接続が必要です。「外部は堅牢だが、内部が傍受しやすい」ことを防ぐために、これらの通信はすべて暗号化する必要があります。
項番 | 説明 | L1 | L2 | L3 | CWE No | タイトル | 概要 |
9.2.1 | サーバ接続(外向き、内向きの両方)において、信頼できるTLS証明書が使用されている。内部で生成された証明書または自己署名証明書を使用する場合、サーバは特定の内部認証局や特定の自己署名証明書のみを信頼するように構成し、それ以外の証明書はすべて拒否する。 | ✓ | ✓ | 295 | 不適切な証明書の検証 ソフトウェアが証明書を検証しないか、または誤って検証します。 | 証明書が無効または悪意のあるものである場合、攻撃者がホストとクライアント間の通信経路を妨害することで、信頼されたエンティティになりすますことができる可能性があります。ソフトウェアは、信頼されたホストであると信じて悪意のあるホストに接続したり、信頼されたホストから発信されているかのように見えるなりすましデータを受け入れるようにだまされたりする可能性があります。 | |
9.2.2 | 管理ポート、監視、認証、API、またはWebサービスの呼び出し、データベース、クラウド、サーバレス、メインフレーム、外部やパートナー間の接続など、すべての外向き/内向きの接続にTLSなどの暗号化通信が使用されている。サーバは、安全でないプロトコルや暗号化されていないプロトコルにフォールバックしてはいけない。 | ✓ | ✓ | 319 | 機密情報のクリアテキスト送信 | ソフトウェアは、機密情報またはセキュリティ上重要なデータを、許可されていないアクターが盗聴できる通信チャネルでクリアテキストで送信します。 | |
9.2.3 | センシティブな情報や機能を持つ外部システムとの暗号化接続がすべて認証されている。 | ✓ | ✓ | 287 | 不適切な認証 | アクターが所定のアイデンティティを持っていると主張した場合、ソフトウェアはその主張が正しいことを証明しないか、または不十分に証明します。 | |
9.2.4 | Online Certificate Status Protocol (OCSP) Staplingなど証明書の失効を適切にチェックできる機能を設定し、有効にしている。 | ✓ | ✓ | 299 | 証明書の失効チェックが不適切 | このソフトウェアが証明書の失効ステータスをチェックしなかったり、誤ってチェックしたりすると、危殆化した証明書を使用してしまう可能性があります。 | |
9.2.5 | バックエンドの TLS 通信に関するエラーがログに記録されている。 | ✓ | 544 | 標準化されたエラー処理メカニズムがない | ソフトウェアは、コード全体でエラーを処理するための標準化された方法を使用していないため、一貫性のないエラー処理とその結果としての弱点が発生する可能性があります。 |
参考情報 †
詳しくは以下の情報を参照してください。
- OWASP – TLS Cheat Sheet : https://www.owasp.org/index.php/Transport_Layer_Protection_Cheat_Sheet
- 「認定されたTLSのモード」に関する注記。これまで、ASVSは米国標準FIPS 140-2を参照してきましたが、この米国標準をグローバル標準として適用することは困難であったり、矛盾が生じたり、あるいは混乱を招く可能性があります。要件9.1.3に準拠するためのより良い方法は、https://wiki.mozilla.org/Security/Server_Side_TLS などのガイドを参照したり、https://ssl-config.mozilla.org/ で既知の適切な構成をつくり、sslyzeなどの既存のTSL評価ツールや脆弱性スキャナ、信頼できるオンラインのTLSアセスメントサービスを使用して、望ましいレベルのセキュリティを確保することです。本セクションに準拠しない例としては、旧式または安全性の低い暗号やアルゴリズムの使用、Perfect Forward Secrecy の欠如,旧式または安全性の低いSSLプロトコル、脆弱な推奨暗号などが一般に見られます。