Habilitar cifras OpenSSL NULL-SHA e NULL-MD5

Habilitar cifras OpenSSL NULL-SHA e NULL-MD5

Estou tentando forçar o OpenSSL para as cifras do usuário NULL-MD5 ou NULL-SHA.

Saída do SSLScan:

Preferred TLSv1.2  0 bits    NULL-SHA                     
Accepted  TLSv1.2  0 bits    NULL-MD5                     
Preferred TLSv1.1  0 bits    NULL-SHA                     
Accepted  TLSv1.1  0 bits    NULL-MD5                     
Preferred TLSv1.0  0 bits    NULL-SHA                     
Accepted  TLSv1.0  0 bits    NULL-MD5      

Eu tentei isso:

openssl s_client -cipher "NULL-SHA" -connect 192.168.1.1:4444

Mas estou sempre recebendo SSL alert number 40erros.

Se eu tentar

openssl s_client -tls1 -cipher "NULL-SHA" -connect 192.168.1.1:4444

Estou recebendo No ciphers enabled for max supported SSL/TLS versionum erro.

Se eu seguir a solicitação no Wireshark, posso ver que ele não está enviando cifras NULL no campo Cipher Suite.

Tentei compilar OpenSSL com enable-weak-ssl-ciphers, enable-ssl2e enable-ssl3, mas isso também não ajudou:

./config --prefix=/opt/openssl-1.0.22 \
--openssldir=/etc/ssl \
shared enable-weak-ssl-ciphers \
-Wl,-rpath=/opt/openssl-1.0.22/lib \
enable-ssl2 enable-ssl3

Não tenho certeza se a cifra NULL é compatível com TLS1, TLS1.1 ou TLS1.2:

$openssl ciphers -v NULL
TLS_AES_256_GCM_SHA384  TLSv1.3 Kx=any      Au=any  Enc=AESGCM(256) Mac=AEAD
TLS_CHACHA20_POLY1305_SHA256 TLSv1.3 Kx=any      Au=any  Enc=CHACHA20/POLY1305(256) Mac=AEAD
TLS_AES_128_GCM_SHA256  TLSv1.3 Kx=any      Au=any  Enc=AESGCM(128) Mac=AEAD
ECDHE-ECDSA-NULL-SHA    TLSv1 Kx=ECDH     Au=ECDSA Enc=None      Mac=SHA1
ECDHE-RSA-NULL-SHA      TLSv1 Kx=ECDH     Au=RSA  Enc=None      Mac=SHA1
AECDH-NULL-SHA          TLSv1 Kx=ECDH     Au=None Enc=None      Mac=SHA1
NULL-SHA256             TLSv1.2 Kx=RSA      Au=RSA  Enc=None      Mac=SHA256
ECDHE-PSK-NULL-SHA384   TLSv1 Kx=ECDHEPSK Au=PSK  Enc=None      Mac=SHA384
ECDHE-PSK-NULL-SHA256   TLSv1 Kx=ECDHEPSK Au=PSK  Enc=None      Mac=SHA256
ECDHE-PSK-NULL-SHA      TLSv1 Kx=ECDHEPSK Au=PSK  Enc=None      Mac=SHA1
RSA-PSK-NULL-SHA384     TLSv1 Kx=RSAPSK   Au=RSA  Enc=None      Mac=SHA384
RSA-PSK-NULL-SHA256     TLSv1 Kx=RSAPSK   Au=RSA  Enc=None      Mac=SHA256
DHE-PSK-NULL-SHA384     TLSv1 Kx=DHEPSK   Au=PSK  Enc=None      Mac=SHA384
DHE-PSK-NULL-SHA256     TLSv1 Kx=DHEPSK   Au=PSK  Enc=None      Mac=SHA256
RSA-PSK-NULL-SHA        SSLv3 Kx=RSAPSK   Au=RSA  Enc=None      Mac=SHA1
DHE-PSK-NULL-SHA        SSLv3 Kx=DHEPSK   Au=PSK  Enc=None      Mac=SHA1
NULL-SHA                SSLv3 Kx=RSA      Au=RSA  Enc=None      Mac=SHA1
NULL-MD5                SSLv3 Kx=RSA      Au=RSA  Enc=None      Mac=MD5 
PSK-NULL-SHA384         TLSv1 Kx=PSK      Au=PSK  Enc=None      Mac=SHA384
PSK-NULL-SHA256         TLSv1 Kx=PSK      Au=PSK  Enc=None      Mac=SHA256
PSK-NULL-SHA            SSLv3 Kx=PSK      Au=PSK  Enc=None      Mac=SHA1

Alguma sugestão sobre o que não está funcionando? Existe uma maneira específica de compilar ou usar parâmetros diferentes em meus comandos para cifras NULL?

Responder1

Eu tive o mesmo problema, mas queria usar o ciphersuiteNULO-SHA256, eu não tentei o seu.

Finalmente consegui fazer uma conexão com as ferramentasopenssl s_servereopenssl s_clientdepois de recompilar e usarOPENSSL_1_0_2

informação relacionada