본문 바로가기

인프라/NW

2020년 웹 브라우저 TLS 프로토콜 통신 지원중단(v1.0/v1.1)

2018년 10월경, 웹브라우저를 운영하는 기업(MS/Google/Apple/Etc)으로 부터 TLS 하위버전 지원 중단 관련된 사항에 대한 발표가 있었다. 

하위버전에 대한 중단 사유로 많은 취약점에 의한 이슈로 서비스 중단이라는 결단을 내린 것이다.

지원 만료 기간은 2020년 상반기로 예정이 되었으나 예정과 다르게 앞당겨졌으며, 이로 인하여 얼마 남지 않은 기간동안 많은 기업에서 지원되지 않는 TLS(Transport Layer Security)로 인하여 발생될 서비스 불가 현상을 막기위해 부랴부랴 업그레이드 작업을 진행 중에 있다.

해당 소재로 영향도 범위에 대해서 간략하게 작성하겠다.

TLS 버전업은 단순히 WEB 영역만 영향이 있을 것이라고 생각해서는 안된다. 

#- WEB 설정(특정프로토콜 BlackList방식)

SSLProtocol All -SSLv2 -SSLv3

 

#- WEB TLS 버전업 작업 과정에서 발생된 이슈사항(update:200306)

- https://caingwiz.tistory.com/58

- https://caingwiz.tistory.com/59

경우에 따라서는 WAS 뿐만이 아닌, 전체 플랫폼에 영향을 줄 수 있다는 점을 고려해야한다.

예시로 A라는 플랫폼이 얼마만큼의 Legacy와 연동이 존재하느냐에 따라 각 구간별로 적용유무를 판별하여야 하며,

각 플랫폼별 사용하는 언어/OpenSource 및 Network적으로 통신되는 모든 것에 대한 검토가 필요할 것이다.

또한, JAVA 1.7이후 부터 TLS에 대한 버전 컨트롤이 가능한 옵션이 별도로 존재하며, Openssl 같은경우 1.0.1 이후 부터 지원이 되기에 이를 검토하여 수립하여야 할것이다.

이로인한, Legacy 플랫폼들의 JDK 버전업과 부가적으로 발생되는 지원되지 않는 framework/ OS 버전업 등 각각의 사이드 이펙트가 연쇄적으로 발생할 것에 빠른 대비가 필요할 것이다.

#- JDK1.7 이후, TLSverion 사용 설정(update:200214)

#- JDK1.7 in 7u95이상 and to JDK1.6 in 6u121이상.
-Djdk.tls.client.protocols="TLSv1,TLSv1.1,TLSv1.2"

#- JDK1.7 in 7u95이하 and to JDK1.6 in 6u121이하.
-Dhttps.protocols="TLSv1,TLSv1.1,TLSv1.2"

#- JBOSS TLS Protocol 사용설정옵션(java버전 택1)
- export JAVA_OPTS="-Dhttps.protocols=TLS1,TLSv1.1,TLSv1.2"
- export JAVA_OPTS="-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2"

#-참고사항
- weblogic특정버전 TLS 옵션 적용 시, vendor사 권고사항으로 지정jdk 사용지정필요
- ex) wls10.3 = jdk1.7.0_241

#- WEBLOGIC TLS Protocol 사용 설정옵션
-Dweblogic.security.SSL.protocolVersion=TLS1

#- JDK1.7 익명암호화 Default false이기에 활성화
-Dweblogic.security.SSL.AllowAnonymousCipher=true
-Dweblogic.security.SSL.ignoreHostnameVerification=true

 

#- 크롬 TLS1.0 & TLS1.1 프로토콜 지원 중단(update:200318)

- release 버전 81(desktop, android)

- TLS 1.0 and TLS 1.1 (removed)

 

#- References

(oracle)jdk1.6_docs
(oracle)configure_crypto
(oracle)weblogic_ssl_set
(oracle)weblogic_ssl_descript

(oracle)diagnosing-tls,-ssl,-and-https

(oracle)release-note-jdk1.7

(IBM)암호화 보안 프로토콜: SSL 및 TLS

(ibm)how-do-i-change-default-ssl-protocol-my-java-client-application-will-use
(openssl)change log(TLS)

(한국전자인증)TLS1.0/1.1 중단공지
(digicert)Enabling TLS 1.1 and TLS 1.2 on web browsers
(mozilla)removing-old-versions-of-tls
(microsoft)modernizing-tls-edge-ie11