Habilite los cifrados OpenSSL NULL-SHA y NULL-MD5

Habilite los cifrados OpenSSL NULL-SHA y NULL-MD5

Estoy intentando forzar a OpenSSL a utilizar cifrados NULL-MD5 o NULL-SHA.

Salida de 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      

Probé esto:

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

Pero siempre recibo SSL alert number 40un error.

si lo intento

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

Recibo No ciphers enabled for max supported SSL/TLS versionun error.

Si sigo la solicitud en Wireshark, puedo ver que no envía cifrados NULL en el campo Cipher Suite.

Intenté compilar OpenSSL con y enable-weak-ssl-ciphers, pero eso tampoco ayudó:enable-ssl2enable-ssl3

./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

No estoy seguro de si el cifrado NULL es compatible con TLS1, TLS1.1 o 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

¿Alguna sugerencia sobre lo que no funciona? ¿Existe alguna forma específica de compilar o utilizar diferentes parámetros en mis comandos para cifrados NULL?

Respuesta1

Tuve el mismo problema, pero quería usar el conjunto de cifrado.NULL-SHA256, No probé el tuyo.

Finalmente logré establecer una conexión con las herramientas.servidor_s_opensslyopenssl s_clientdespués de recompilar y usarOPENSSL_1_0_2

información relacionada