Я пытаюсь заставить OpenSSL использовать шифры NULL-MD5 или NULL-SHA.
Вывод 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
Я попробовал это:
openssl s_client -cipher "NULL-SHA" -connect 192.168.1.1:4444
Но я постоянно получаю сообщение SSL alert number 40
об ошибке.
Если я попробую
openssl s_client -tls1 -cipher "NULL-SHA" -connect 192.168.1.1:4444
Я получаю сообщение No ciphers enabled for max supported SSL/TLS version
об ошибке.
Если я отслеживаю запрос в Wireshark, то вижу, что он не отправляет пустые шифры в поле Cipher Suite.
Я пробовал скомпилировать OpenSSL с помощью enable-weak-ssl-ciphers
, enable-ssl2
и enable-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
Я не уверен, поддерживается ли шифр NULL в TLS1, TLS1.1 или 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
Есть предложения, что не работает? Есть ли какой-то конкретный способ, которым мне нужно скомпилировать или использовать другие параметры в моих командах для NULL-шифров?
решение1
У меня была та же проблема, но я хотел использовать набор шифровNULL-SHA256, я ваш не пробовал.
Мне наконец удалось установить связь с инструментамиopenssl s_сервериopenssl s_clientпосле перекомпиляции и использованияОТКРЫТИЕSL_1_0_2