web-dev-qa-db-ja.com

暗号とNmap scanに関する説明

以下のNmapコマンドを実行して、ホストで使用した暗号スイートの強度をテストしています

nmap -sV --script ssl-enum-ciphers -p 443 <Host>

Nmap doc は、各暗号スイートが接続の強度を示す文字グレード(AからF)で表示され、最小強度で始まる出力行が提供される最も弱い暗号の強度

ホストに対してコマンドを実行すると、次のように出力されました

| ssl-enum-ciphers:
|   TLSv1.0:
|     ciphers:
|       TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA (dh 768) - E
|       TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 768) - C
|       TLS_DHE_RSA_WITH_DES_CBC_SHA (dh 768) - E
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_RC4_128_MD5 (rsa 2048) - C
|       TLS_RSA_WITH_RC4_128_SHA (rsa 2048) - C
|     compressors:
|       NULL
|     cipher preference: client
|     warnings:
|       64-bit block cipher 3DES vulnerable to SWEET32 attack
|       64-bit block cipher DES vulnerable to SWEET32 attack
|       Broken cipher RC4 is deprecated by RFC 7465
|       Ciphersuite uses MD5 for message integrity
|       Key exchange (dh 768) of lower strength than certificate key
|   TLSv1.1:
|     ciphers:
|       TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA (dh 768) - E
|       TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 768) - C
|       TLS_DHE_RSA_WITH_DES_CBC_SHA (dh 768) - E
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_RC4_128_MD5 (rsa 2048) - C
|       TLS_RSA_WITH_RC4_128_SHA (rsa 2048) - C
|     compressors:
|       NULL
|     cipher preference: client
|     warnings:
|       64-bit block cipher 3DES vulnerable to SWEET32 attack
|       64-bit block cipher DES vulnerable to SWEET32 attack
|       Broken cipher RC4 is deprecated by RFC 7465
|       Ciphersuite uses MD5 for message integrity
|       Key exchange (dh 768) of lower strength than certificate key
|   TLSv1.2:
|     ciphers:
|       TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA (dh 768) - E
|       TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 768) - C
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (secp256r1) - A
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_RC4_128_MD5 (rsa 2048) - C
|       TLS_RSA_WITH_RC4_128_SHA (rsa 2048) - C
|     compressors:
|       NULL
|     cipher preference: client
|     warnings:
|       64-bit block cipher 3DES vulnerable to SWEET32 attack
|       Broken cipher RC4 is deprecated by RFC 7465
|       Ciphersuite uses MD5 for message integrity
|       Key exchange (dh 768) of lower strength than certificate key
|_  least strength: E

私の質問

  1. ドキュメントによると、「E」とマークされた暗号は弱い暗号です。別の方法では、「A」とマークされた暗号を強力な暗号と見なすことができますか?
  2. TLS_RSA_WITH_AES_128_CBC_SHAはここでは「A」とマークされていますが、一部のディスカッションでは、WEAKとして言及されていることを確認しました。 SHA1の使用によるものですか?もしそうなら、なぜこれがNMAPで「A」と評価されるのですか?
  3. サーバーに以下の暗号リストを設定しました。

    暗号= "SSL_RSA_WITH_RC4_128_MD5、SSL_RSA_WITH_RC4_128_SHA、SSL_DHE_RSA_WITH_DES_CBC_SHA、SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA、TLS_RSA_WITH_AES_128_CBC_SHA、TLS_DHE_RSA_WITH_AES_128_CBC_SHA、TLS_RSA_WITH_AES_256_CBC_SHA、TLS_DHE_RSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"

しかし、SSL_RSA_WITH_RC4_128などの暗号はNmap出力では使用できません。代わりに、TLS_RSA_WITH_RC4_128のような暗号があります。これの理由は何ですか?暗号でSSLとTLSを交換可能に使用できますか?

  1. サーバーにTLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256を暗号として追加しましたが、Nmap=の結果では利用できませんでした。その理由は何ですか?

PS:サーバーの基盤となるJDKバージョンとしてJDK 1.7を使用しています

3
Prakhash

あなたが尋ねるのに推奨されない方法である複数の無関係な質問を尋ねています、そしてチャンスは、一部がすでにどこかですでに回答されているので、質問が広すぎるか、または重複して閉じられているかもしれません。それでも、いくつかの短い答えを与えるために:

ドキュメントによると、「E」とマークされた暗号は弱い暗号です。別の方法では、「A」とマークされた暗号を強力な暗号と見なすことができますか?

ドキュメントにはっきりと書かれている

スコアリングはQualys SSL Labs SSLサーバー評価ガイドに基づいていますが、プロトコルサポート(TLSバージョン)は考慮されていません。 SSL Labsの評価の。

関連するガイドは簡単に見つけることができます 最初に採点の説明が含まれています 。ただし、「A」は「B」よりも本質的に強いという意味です。

TLS_RSA_WITH_AES_128_CBC_SHAはここでは「A」とマークされていますが、一部のディスカッションでは、WEAKとして言及されていることを確認しました。 SHA1の使用によるものですか?もしそうなら、なぜこれがNMAPで「A」と評価されるのですか?

Nmapスクリプトは2009年のガイドに基づいているためです。TLS_RSA_WITH_AES_128_CBC_SHAは脆弱ではありませんが、RSA鍵交換を使用しているため(フォワードシークレットなし)、おそらくBに格下げされます。しかし、それは弱点にはほど遠く、誰がこれを主張したかはわかりません(他の場所からの意見を引用する場合は、常にリンクを追加してください)。

... SSL_RSA_WITH_RC4_128はNmapの出力では使用できません。代わりに、TLS_RSA_WITH_RC4_128などの暗号があります...

これらは同じです。さまざまな時代やソフトウェア製品に由来する命名規則がいくつかあります。

サーバーにTLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256を暗号として追加しましたが、Nmap=の結果では利用できませんでした。その理由は何ですか?

ご覧のとおり、nmapの出力にはRSA暗号しかありません。これは、RSAキーを持つ証明書を使用しているためです。 ECDSA暗号の場合、ECCキーを含む証明書を使用する必要があります。

5
Steffen Ullrich