OpenSSL NULL-SHA 및 NULL-MD5 암호화 활성화

OpenSSL NULL-SHA 및 NULL-MD5 암호화 활성화

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 필드에 NULL 암호를 보내지 않는 것을 볼 수 있습니다.

enable-weak-ssl-ciphers, enable-ssl2및 를 사용하여 OpenSSL을 컴파일하려고 시도했지만 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

TLS1, TLS1.1 또는 TLS1.2에서 NULL 암호화가 지원되는지 확실하지 않습니다.

$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_server그리고openssl s_client다시 컴파일하고 사용한 후OPENSSL_1_0_2

관련 정보