01 ERR_SSL_VERSION_OR_CIPHER_MISMATCH_TLS 이란?

클라이언트가 브라우저에서 https 접속 시 브라우저에서 아래와 같은 오류가 발생하는 이슈로

해당 문구는 Chrome에서 발생하는 메시지이고, 브라우저 별로 메시지가 상이함


[Internet Explorer]

이 페이지를 표시할 수 없습니다.

[고급] 설정에서 TLS 1.0 TLS 1.1 및 TLS 1.2를 켠 다음 해당 홈페이지에 다시 연결해 보세요.

안전하지 않은 RC4와 같은 암호 그룹을 사용할 수도 있습니다.

 

[Chrome]

“사이트에 보안 연결할 수 없음”

해당 홈페이지에서 지원되지 않는 프로토콜을 사용합니다

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

 

[firefox]

“보안 연결 실패”

해당 홈페이지에 접속하는 중에 오류가 발생했습니다.

SSL_ERROR_NO_CYPHER_OVERLAP

 

02 ERR_SSL_VERSION_OR_CIPHER_MISMATCH 오류 발생 원인

서버에서 낮은 알고리즘만을 이용한 통신 환경 제공 시

클라이언트 측에서 낮은 브라우저 환경으로 인해, 낮은 알고리즘을 통한 통신 환경을 시도할 경우

           - 낮은 브라우저 : Chrome 48 이하, Internet Explorer 11 이하, Microsoft Edge 이하, Firefox 44 이하 ( 정책 적용 버전은 공지 내용과 다를 수도 있음 )

 

           - 낮은 알고리즘 : RC4를 포함한 알고리즘 ( 예: RC4-SHA, RC4-MD5, ECDH-RSA-RC4-SHA 등 )

 

03 RC4 알고리즘의 취약성

 03.1 RC4 암호란?

       - 1987년 Ron Rivest가 설계한 스트림 암호로 1995년부터 SSL의 표준 암호화 프로토콜

 

       - 2011년 BEAST(Browser Exploit Against SSL/TLS) 공격에 취약점 발견

 

       - 2014년 POODLE 공격에 취약점 발견

 

 03.2 BEAST 공격이란?

           - 사용자 브라우저 취약점을 이용하여 중간에서 HTTPS 쿠키를 훔쳐 공격하는 기법

 

 03.3 POODLE 공격이란?

           - TLS 연결을 SSL 3.0으로 낮춰 SSL 3.0 취약점을 이용하여 암호문 해독하는 공격 기법

 

  03.4 현재 RC4 알고리즘 규제 현황

           - Google, Mozilla, Microsoft 등 2016년 초부터 브라우저의 RC4 지원 중단 선언

 

           - 금융보안원 RC4 규제 가이드 발표 ( 하단 출처 참조 )

 

04 ERR_SSL_VERSION_OR_CIPHER_MISMATCH 오류 해결 방안

 → 서버에서 RC4 알고리즘 비활성화

 

[IIS]

RC4알고리즘 000000000으로 Enabled

 

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ Ciphers \ RC4 128/128]

“Enabled”= dword : 00000000

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ Ciphers \ RC4 40/128]

“Enabled”= dword : 00000000

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ Ciphers \ RC4 56/128]

“Enabled”= dword : 00000000

 

[Apache]

RC4 알고리즘 전체 사용 안함

SSLProtocol ALL –SSLv2 –SSLv3 –TLSv1

SSLCipherSuite HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4:!SSLv2:!SSLv3

 

[Tomcat]

ciphers="ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384"

        disableSessionTickets="true"

        honorCipherOrder="false"

        protocols="TLSv1.2, TLSv1.3">

 

[client PC]

사용자의 브라우저에서 높은 수준의 알고리즘으로 접속하도록 설정

인터넷 옵션-고급- SSL 3.0, TLS 1.0 사용 제한하고, TLS 1.1, TLS 1.2를 사용하도록 체크 설정 후 확인

 

05 사이트 확인

https://ssllabs.com 홈페이지에서 도메인 입력 후 프로토콜 사용 여부 확인 가능

 

 

참고 URL : https://blog.naver.com/ucert/221956614604

 

 

 

 

서버 내에서 인증서 설치 확인 및 설치 된 포트의 LISTEN 상태를 확인 해주셔야 합니다.
서버에서 설치 및 포트 확인이 됐다면, 외부에서 설치 된 포트에 대하여 방화벽 오픈 여부를 확인 해주셔야 합니다.
추가적으로 기본 SSL 포트(443) 외의 포트로 설치를 해주셨다면, 다음과 같은 형태로 접속 및 확인을 해주셔야 합니다.
EX) 447 포트로 SSL 인증서를 설치 하셨다면, https://(domain):447 형태로 접속이 필요 합니다.

SSL 인증서 설치 시 CA 인증서(chain root)이 제대로 설치가 되지 않은 경우에 안드로이드 모바일에서 에러가 발생 합니다.
서버에서 CA 인증서를 포함하여 재 작업 후 프로세스 재기동을 해주시면 됩니다.


[ IIS 서버는 재기동 불필요]


cf. 웹 방화벽 장비가 있다고 하시면 장비에 인증서 등록 시 CA 인증서가 누락되어 설치된 것으로 

장비 담당자님께 CA 인증서가 포함 된 형태의 인증서로 재설치 요청을 해주시면 됩니다.


4.1 인증서 불일치 오류


아래 메세지는 요청한 서버의 도메인과 서버의 인증서가 일치하지 않는 다는 에러 메세지입니다.

도메인에 맞는 인증서가 올바르게 설치되었는지 확인해 주시기 바랍니다.

또한 서버내에 다른 인증서가 있을 경우 아래와 같은 에러 메세지가 발생할 수 도 있습니다.

이 경우 요청하는 도메인 인증서를 추가로 설정해 주셔야 합니다.



웹접속시 에러메세지

SSL_ERROR_BAD_CERT_DOMAIN, ERR_CERT_COMMON_NAME_INVALID







4.2 인증서 만료 오류


아래 메세지는 SSL 인증서의 기간이 만료되었다는 뜻입니다. 

인증서 오류로 더이상 서버 접속이 어렵게 됩니다.



웹접속시 에러메세지

SEC_ERROR_EXPIRED_CERTIFICATE, ERR_CERT_DATE_INVALID






4.3 PC 날짜 오류


PC의 시간설정이 올바르게 설정되지 않아서 나오는 오류 입니다. 

자동으로 시간 설정 적용후 재접속 하시면 됩니다.

 

웹접속시 에러메세지 

ERR_CERT_DATE_INVALID



 

 

 

4.4 인증기관 신뢰성 문제


인증 기간의 인증서 목록이 없거나 모르는 기관에서 발급한 인증서의 경우 나타나는 오류입니다. 

로컬 인증서 정보가 올바르게 설정되었는지 확인해 주시기 바랍니다.

내부망일 경우에는 서버내 루트인증서가 인증기관(CA)의 인증받기위한 통신이 필요하므로 

인증기관의 URL과 포트를 방화벽에서 open 해주어야 합니다.

(각 인증서제품마다 인증기관의 URL이 다르므로 유서트에 문의 주시면 인증기관URL과 포트를 보내드리겠습니다.)

 

웹접속시 에러메세지 

ERR_CERT_AUTHORITY_INVALID



 

 

4.5 인증서 해지


사용 중인 인증서가 폐지 되어 나타나는 오류로 발급기관에 문의하거나 신규 인증서 발급 후 재설치 해야 합니다.

 

웹접속시 에러메세지 

ERR_CERT_REVOKED





EV(Extended Validation) SSL 인증서를 사용하고
 

웹브라우저인 인터넷 익스플로어와 엣지를 이용하여 접속하면 그린 바가 확인됩니다. 

 

 

 

파이어폭스는 69버전에서는 그린바가 출력되지만 70(beta)버전에서는 출력되지 않습니다. 

 
 

Chrome 69 업데이트부터 새로운 UI 디자인으로 변경 되면서 

보안연결 문구가 사라지고 녹색이었던 자물쇠 모양 아이콘이 회색으로 변경되었습니다.



 


서버에서 인증서를 갱신하고 재시작을 하였음에도 불구하고 웹 페이지에 접속 해 보면 기존 인증서가 보이는 경우에는 아래부분 확인 부탁드립니다.

[인증서 확인]

Linux서버는 인증서가 정상적으로 갱신이 되었는지 서버 내에서 확인이 가능합니다.
openssl s_client -connect localhost:443 | openssl x509 -noout –dates

(*명령어 형식 : openssl s_client -connect [도메인 or IP]:[포트번호] | openssl x509 -noout –date)

Windows 서버는 서버 내에서 웹브라우저로 접속하여 인증서를 확인 합니다

[웹 방화벽 장비 유무 확인]

서버 내에서 명령어로 확인 했을 때 정상적으로 인증서 기간이 교체가 됐다면, 
서버 앞 단에 웹 방화벽 장비 유무를 확인하여 웹방화벽에도 인증서를 설치 해 주셔야 합니다. 
웹 방화벽에 적용할 인증서는 인증서 형식(pem, pfx 등)을 알려주시면 유서트에서 발송 드리겠습니다.

아래 그림처럼 정상적인 자물쇠가 아닌 느낌표가 발생하고 느낌표를 클릭하면

이사이트의 보안 연결(HTTPS)은 완벽하지 않습니다라는 에러 문구가 발생합니다.

 


 

에러가 발생하는 웹페이지에서 개발자도구(F12) - “Console” 를 클릭해보면


“Mixed Content” 에러내용을 확인 할 수 있습니다.

(chrome 브라우저 에서 확인 가능합니다.)


 


“Mixed Content”HTTPS를 통해 접속한 사이트에서 HTTP 통신을 통해 스크립트나 CSS, 이미지, 동영상 자원등을 요청하는 것을 말합니다.
HTTPS로 요청한 자원과 HTTP로 요청한 자원이 섞여 있는 것을의미합니다.

 

더 쉽게 풀어 설명하자면 사이트에 최초 접속은 HTTPS로 잘 하였으나, 그 이후 중간 중간 HTTP 통신을 하고 있는 것이죠.
따라서 해당 사이트는 반만 HTTPS인 것이고 중간 중간 삽입되어 있는 이미지나, 동영상, CSS 등은 HTTP 통신을 하므로 그로 인한 보안 구멍이 생기는 것입니다.

그러므로 해당부분 참고하여 소스부분에서 변경을 해주신다면 정상접속되는 웹페이지를 확인해 볼 수 있습니다.

 


내부망에서 인증기관과의 통신이 되지 않아 에러가 발생하는 것입니다.

혹은 인증서가 인증기관의 리스트에 없거나 공인되지 않은 기관에서 발급한 인증서의 경우에도 “신뢰할 수 없는 인증기관” 에러가 발생합니다.

해결방법은 방화벽에 인증기관 URL과 PORT를 오픈 해주시거나 오류가 나는 PC에 CA 인증서를 설치하는 방법으로 해결이 가능 합니다.

Bad decrypt 은 인증서 파일을 해독하지 못했을 때 에러가 발생 합니다.

 

Private key 인증서의 password를 다시 한번 확인해 주시거나 해당 인증서파일 내용을 확인 해주시기 바랍니다.

기술지원센터

02-512-5495

dev_tech@ucert.co.kr

|

365일 24시간 지원, 유서트