13

関数SSL_CTX_set_cipher_listを使用して、SSL接続でサポートされている暗号を設定しています。弱い暗号を無効にするためにSSL_CTX_set_cipher_listに渡す引数。

合格してみましたALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH

しかし、それは機能していないようです。

まだ有効になっている次の弱い暗号レポートを検出するための私のツール

** SSLv3:DES-CBC-SHA-有効-弱い56ビット**

** TLSv1:DES-CBC-SHA-有効-弱い56ビット**

** SSLv2:RC4-MD5-有効-弱い128ビット**
** SSLv2:RC2-CBC-MD5-有効-弱い128ビット**
** SSLv2:RC4-64-MD5-有効-弱い64ビット**
** SSLv2:DES-CBC-MD5-有効-弱い56ビット**
** SSLv2:EXP-RC4-MD5-有効-弱い40ビット**
** SSLv2:EXP-RC2-CBC-MD5-有効-弱い40ビット**
** SSLv2:DES-CBC3-MD5-有効-弱い168ビット**

上記の暗号を無効にするためにSSL_CTX_set_cipher_listに渡す引数は何ですか?

4

2 に答える 2

12

HIGH:!DSS:!aNULL@STRENGTHが機能するはずです。

openssl ciphers -v 'HIGH:!DSS:!aNULL@STRENGTH'は、次の暗号のリストを出力します。

DHE-RSA-AES256-SHA      SSLv3 Kx=DH       Au=RSA  Enc=AES(256)  Mac=SHA1
AES256-SHA              SSLv3 Kx=RSA      Au=RSA  Enc=AES(256)  Mac=SHA1
EDH-RSA-DES-CBC3-SHA    SSLv3 Kx=DH       Au=RSA  Enc=3DES(168) Mac=SHA1
DES-CBC3-SHA            SSLv3 Kx=RSA      Au=RSA  Enc=3DES(168) Mac=SHA1
DES-CBC3-MD5            SSLv2 Kx=RSA      Au=RSA  Enc=3DES(168) Mac=MD5
DHE-RSA-AES128-SHA      SSLv3 Kx=DH       Au=RSA  Enc=AES(128)  Mac=SHA1
AES128-SHA              SSLv3 Kx=RSA      Au=RSA  Enc=AES(128)  Mac=SHA1

OpenSSL 暗号文字列とその意味の完全なリストについては、http ://www.openssl.org/docs/apps/ciphers.html をご覧ください。

于 2010-09-23T11:20:11.140 に答える
2

弱い暗号を無効にするために SSL_CTX_set_cipher_list に渡す引数

それは、あなたが使用しているウィークの定義が誰であるかによって異なります。2015 年には、HIGH:!aNULL最新のブラウザーが に含まれる暗号の一部を拒否するため、効率的に移行する必要がありますHIGH。MD5 や RC4 を許可すると、廃止された暗号化の警告が表示されます。

HIGH:!aNULL:!MD5:!RC4

呼び出しは次のようになります。

rc = SSL_CTX_set_cipher_list(ctx, "HIGH:!aNULL:!MD5:!RC4");
ASSERT(rc >= 1);

また、SSLv2、SSLv3、およびおそらく圧縮を無効にする必要があります。あなたはそれを次のようにします:

const long flags = SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_COMPRESSION;
SSL_CTX_set_options(ctx, flags);

SSL_CTX_set_optionsは値を返さないため、呼び出しが成功することを確認するためのテストは何もありません。

于 2015-09-16T00:44:44.633 に答える