web-dev-qa-db-ja.com

BEAST:IIS6:PCIスキャンの失敗-これらの暗号は大丈夫ですか?

PCIコンプライアンススキャナーであるTrustWaveは、次の暗号のために、BEASTのWin 2003/IIS6サイトに失敗しました。

Cipher Suite: SSLv3 : DES-CBC3-SHA 
Cipher Suite: SSLv3 : RC4-SHA 
Cipher Suite: SSLv3 : RC4-MD5 
Cipher Suite: TLSv1 : DES-CBC3-SHA 
Cipher Suite: TLSv1 : RC4-SHA 
Cipher Suite: TLSv1 : RC4-MD5

私の調査によると、これらはすべて問題ありません。つまり、「強力」であり、BEASTの悪用の影響を受けません。 https://www.ssllabs.com/ssltest/analyze.html を使用してサイトをスキャンすると、次のようなパスになります。

Protocols:
 TLS 1.2    No
 TLS 1.1    No
 TLS 1.0    Yes
 SSL 3.0    Yes
 SSL 2.0    No

Cipher Suites:
 TLS_RSA_WITH_RC4_128_MD5 (0x4)         128 
 TLS_RSA_WITH_RC4_128_SHA (0x5)         128 
 TLS_RSA_WITH_3DES_EDE_CBC_SHA (0xa)    168 

BEAST attack:   Not vulnerable

TrustWaveの調査結果に異議を申し立てる必要がありますか?

4
GlennG

IIS6でCBCの「モード」を無効にするにはどうすればよいですか?

名前にCBCが含まれるすべての暗号を無効にします。 http://support.Microsoft.com/default.aspx?scid=kb;EN-US;2450 は方法を説明しています。 https://www.nartac.com/Products/IISCrypto/Default.aspx は、それを行うためのツールを提供します。

また、その2番目のWebサイトから:

注-Windows Server 2003は、IISが提供するSSL暗号スイートの並べ替えをサポートしていません。ただし、弱いプロトコルと暗号を無効にすることはできます。また、Windows Server 2003にはAES暗号スイートが付属していません。 Microsoftにはこのための修正プログラムがあります。

これは、実際には2つの選択肢しかないことを意味します。

  1. オペレーティングシステムをWindows Server 2008にアップグレードします。これは、Nartacツールによって完全にサポートされていると推測され、Windows Serverの最後の32ビットバージョンであるため、アプリケーションをあまり更新する必要はありません(実際にはそうする必要があります)。

  2. PCIチェックに合格するために、すべてのCBC名前付き暗号を無効にします (そして、捕まったら自分の頭にあるとしても、それが終わったら再び有効にします)

大声で言った?

4
jimbobmcgee

CBCベースの暗号スイートでTLS 1.0を使用している場合、潜在的にBEAST攻撃に対して脆弱です。暗号的にTLS_RSA_WITH_3DES_EDE_CBC_SHA暗号スイートは引き続き問題なく、TLS 1.1およびTLS 1.2では問題は発生しません。 HTTPSを使用したプロトコルに関しては、TLS 1.0のBEASTに関してはそれほど問題ではありません。

(ただし、AESベースの暗号スイートはRFC、NIST、およびNSAで推奨されています)。

TLS 1.0での唯一の真の軽減策は、RC4暗号スイートを優先リストの上位に置くことです。その結果、RC4暗号スイートをサポートしないクライアントは接続できますが、実際にはBEAST攻撃に対して脆弱です。

唯一の真の軽減策は、TLS 1.1またはTLS 1.2をサポートするクライアントとサーバーへの移行です。 TLS 1.2スイートを前に置くことにより、新しいクライアントがRC4よりも安全な暗号スイートを引き続き取得できることを保証します。

SSLHonorCipherOrder On
SSLCipherSuite ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH
3
Paul

BEASTに対して潜在的に脆弱な暗号スイートは、CBCモードでブロック暗号を使用するものです(例:TLS_RSA_WITH_3DES_EDE_CBC_SHA)。さらに、SSLの暗号スイート選択システムは次のように機能します。

  • クライアントは、サポートする用意がある暗号スイートのリストを送信します。
  • サーバーはそのリストから1つの暗号スイートを選択し、それもサポートします。

クライアントが送信したリストは優先順に並べられます。リストの最初のスイートは、クライアントが最も使用したいスイートです。 courteousサーバーはクライアントの設定を尊重する必要があります。 IIS6は「用心深い」と思われ、これは変更できません。

BEASTはclient攻撃です。サーバーがBEASTに対して脆弱であると私たちが言うとき、それは実際にはサーバーがクライアントを保護する機会を持っていることを意味しますが、それはしません。つまり、「脆弱性」は次の場合に発生します。

  • プロトコルバージョンはSSL 3.0またはTLS 1.0です(TLS 1.1+は本質的にBEASTのようなエクスプロイトの影響を受けません)。
  • クライアントは、CBCを使用する暗号スイートのみをアドバタイズします。または、より多くの場合、クライアントはいくつかのCBC暗号スイートfirstを(優先順で)アドバタイズし、RC4ベースのスイートが後にのみ続き、サーバーがnotRC4の使用を強制します(つまり、サーバーが丁寧すぎる)。

実際には、BEASTはかなり複雑な攻撃フレームワークを必要とし、さらに Same Origin Policy の穴を利用する必要がありますブラウザ。現時点では十分な柔軟性がないSOPホールは既知です(BEASTデモはJavascript WebSocketsとJavaで2つのホールを使用し、それ以降は両方とも差し込まれています)ため、脅威は潜在的な可能性のみです。 complianceのBEASTを修正する必要がありますが、実際のセキュリティのためではありません。

IIS6は無礼ではないので、CBCベースの暗号スイートを完全に無効にする必要があります。ポインタについては、@ jimbobmcgeeの回答を参照してください。これには、CBCベースの暗号スイートのonlyを知っているクライアントとの会話を拒否するという副作用がありますが、RC4を実行できないブラウザーは非常にまれです。

2
Thomas Pornin