web-dev-qa-db-ja.com

新しいTLS暗号化攻撃は新しいTLS 1.3にも影響しますが、ECDHE_RSAも影響を受けますか?

2019年2月9日:出典: 新しいTLS暗号化バスティング攻撃も新しいTLS 1.3に影響します

「世界中の7人の研究者が、今なおTLS接続を暗号化するために使用される最も一般的なRSA構成であるRSA PKCS#1 v1.5を破る別の方法を発見しました。TLSに加えて、この新しいブライチェンバッハー攻撃は、Googleの新しいQUIC暗号化プロトコルも同様です。」

TLS_ECDHE_RSAとDHE_RSAも影響を受けますか?またはTLS_RSAのみですか?そうでない場合は、その理由を説明してください。

Windowsアップデートの例:

fe2.update.Microsoft.com.nsatc.net offered
TLS_ECDHE_RSA_WITH_AES128_GCM_SHA384
x25519

EC Diffie-Hellman Server Params
                Curve Type: named_curve (0x03)
                Named Curve: x25519 (0x001d)
                Pubkey Length: 32
                Pubkey: e3267867db92a040eae6ea57bdb8e042680fa2e95da1e983...
                Signature Algorithm: rsa_pkcs1_sha1 (0x0201)
                Signature Length: 256
9
Tyler

この記事は不十分に書かれています。まず、この時までに、それは古いニュースです:攻撃は2か月前に公表されました。奇妙なことに、これまでこの攻撃に関するスレッドはなかったようですが、 Cryptography Stack Exchangeに1つありました 攻撃のしくみの概要について読むことができます。

この記事が誤解を招く2番目の方法は、この攻撃がTLS 1.3自体に影響を与えないことです。攻撃者が接続をダウングレードした場合、TLS 1.3以前のバージョンをサポートするサーバーに影響します。

「TLS接続の暗号化に使用される最も一般的なRSA構成」も誤解を招くものです。暗号化にRSAを使用するのはonly TLS構成ですが、実際にはRSAを使用するほとんどのTLS構成は、暗号化ではなく署名に使用します。

攻撃はTLS_RSA暗号スイートに対してのみ機能します。つまり、名前にRSAが含まれ、DHEまたはECDHEは含まれない暗号スイートに対してのみ機能します。 RSA復号化を攻撃します。 RSA署名を使用する、またはRSAをまったく使用しない暗号スイートは影響を受けません。

直接攻撃を実行するために、攻撃者は、RSA復号化暗号スイートでTLS≤1.2を使用するように被害者を説得する必要があります。多くの場合、接続の最初の部分(中間者攻撃です)を乗っ取り、クライアントにTLS 1.2(または以前のバージョンの一部)とRSA復号化暗号スイートのみをサポートすることを伝えます。次に、クライアントはサーバーの公開鍵で暗号化された値を送信し、攻撃者はクライアントとの通信を続けるためにその値を復号化する必要があります。通常、値の復号化には秘密鍵が必要ですが、サーバーが攻撃に対して脆弱である場合、攻撃者はRSA復号化暗号スイートを使用してサーバーに多数の接続を作成し、慎重に送信することにより、サーバーをだましてその値を復号化させることができます。選択された暗号文とサーバーの応答の正確なタイミングの観察。

クライアントがRSA復号化暗号スイートの使用を拒否した場合でも、クライアントがTLS 1.3のみをサポートしている場合でも、サーバーが復号化と署名に同じRSA秘密鍵を使用している場合は、依然として脆弱である可能性があります。この変種の攻撃を実行するために、攻撃者は再び中間者であり、RSA署名暗号スイートを使用してクライアントと通信します。ある時点で、攻撃者はサーバーの秘密鍵を使用して値に署名する必要があり、RSA復号化暗号スイートを使用してサーバーに多くの接続を行うことで上記のようにこれを行います。

この攻撃から保護するには、次のいずれかを実行できます。

  • サーバーを最新の状態に保ちます。これは、すべての攻撃から保護するための最良の方法です。
  • サーバーでRSA復号化暗号スイートを無効にします。
  • クライアントのRSA復号化暗号スイートを無効にするandサーバーの復号化と署名に同じRSA秘密鍵を使用しない。