TLS 프로토콜 버전 진단 도구

도메인 이름을 입력하면 TLS 1.0~1.3 각 버전에 대한 지원 여부를 진단합니다. 서버에 더 이상 사용되지 않는 구버전이 여전히 활성화되어 있는지 무료로 확인할 수 있습니다.

TLS 버전 진단이란

TLS(Transport Layer Security)는 웹사이트와 브라우저 사이의 통신을 암호화하는 프로토콜로, 현재 1.0, 1.1, 1.2, 1.3의 네 가지 버전이 존재합니다. 이 중 TLS 1.0과 1.1은 BEAST, POODLE 같은 알려진 취약점 때문에 2021년 공식적으로 더 이상 사용되지 않는(deprecated) 프로토콜로 지정되었지만, 서버 설정을 직접 변경하지 않는 한 구버전은 계속 활성화된 상태로 남아 있습니다. 이 도구는 도메인 이름만 입력하면 서버가 실제로 어떤 버전으로 연결을 받아들이는지 외부에서 진단해 줍니다.

진단 원리는 대상 도메인의 443번 포트(HTTPS)에 대해 TLS 1.0부터 1.3까지 각 버전을 명시적으로 지정해 핸드셰이크를 시도하고, 연결이 성립하는지 하나씩 확인하는 방식입니다. 인증서 내용을 확인하는 것이 아니라 서버가 "어떤 프로토콜 버전으로 통신할 의향이 있는지"라는 설정 자체를 대상으로 하므로, PCI DSS(신용카드 업계 보안 표준) 같은 외부 감사에서 요구하는 "더 이상 사용되지 않는 프로토콜 비활성화"를 스스로 점검하는 용도에 적합합니다.

TLS 버전 진단 도구 사용법

  1. 도메인 이름을 입력한다 `example.com`처럼 확인하고 싶은 웹사이트의 도메인 이름을 입력란에 넣습니다. `https://`나 경로는 필요 없습니다.
  2. "진단하기"를 누른다 대상 도메인의 443번 포트에 대해 TLS 1.0부터 1.3까지 네 가지 버전으로 순서대로 핸드셰이크를 시도합니다.
  3. 버전별 지원 상태를 확인한다 결과 표에 각 버전이 "연결 가능"인지 "연결 불가(비활성화됨)"인지 표시되어, 어떤 버전이 활성화되어 있는지 한눈에 알 수 있습니다.
  4. 종합 판정을 확인한다 "양호", "주의", "위험" 중 하나로 표시되어 설정에 문제가 없는지 바로 판단할 수 있습니다.
  5. 문제가 있으면 서버 설정을 점검한다 더 이상 사용되지 않는 버전이 활성화되어 있다면 비활성화를 검토하고, 최신 버전이 지원되지 않는다면 설정 오류를 의심하여 서버 관리자나 호스팅 업체에 문의하세요.

더 잘 활용하기 위한 팁

  • PCI DSS(신용카드 업계 보안 표준)는 2018년부터 TLS 1.0/1.1을 "보안이 불충분한 프로토콜"로 간주하여 비활성화를 의무화하고 있습니다. 결제를 처리하는 사이트는 특히 우선적으로 확인해야 합니다.
  • 인증서의 유효기간과 발급자를 확인하는 SSL 인증서 체커와 달리, 이 도구는 서버가 어떤 버전으로 연결을 수락하는지 프로토콜 자체의 설정을 진단합니다. 두 도구를 함께 사용하면 더 완전한 정보를 얻을 수 있습니다.
  • TLS 1.0/1.1이 활성화되어 있어도 일반적인 접속이 즉시 중단되지는 않지만, 주요 브라우저가 점차 기본적으로 이를 거부하는 방향으로 나아가고 있으므로 미리 비활성화해 두면 향후 호환성 위험을 줄일 수 있습니다.
  • 반대로 TLS 1.2와 1.3이 모두 비활성화되어 있다면 설정 오류일 가능성이 높으며, 최신 브라우저에서 아예 연결하지 못할 수 있으므로 이 경우를 최우선으로 처리해야 합니다.
  • 공유 호스팅이나 CDN을 통해 사이트를 운영하는 경우 TLS 버전 설정은 보통 호스팅 제공업체가 관리하므로, 발견된 문제는 해당 업체의 고객지원팀에 문의하세요.

TLS 버전 진단 활용 사례

서버 이전 후 설정 확인

호스팅 업체를 변경하거나 OS를 업데이트한 직후에는 TLS 설정이 의도치 않게 기본값으로 되돌아가는 경우가 있습니다. 이전 작업의 마지막 확인 단계로 사용할 수 있습니다.

보안 감사·취약점 점검 사전 준비

외부 보안 감사를 받기 전에 구버전 프로토콜이 이미 비활성화되어 있는지 스스로 먼저 확인해 두면 지적 사항을 줄일 수 있습니다.

PCI DSS 준수 자가 점검

결제를 처리하는 사이트는 PCI DSS에 따라 TLS 1.0/1.1 비활성화가 의무화되어 있습니다. 정식 감사를 기다리지 않고 정기적으로 자가 점검하는 용도로 적합합니다.

자사 쇼핑몰·회원제 사이트의 취약점 확인

개인정보나 카드 정보를 다루는 사이트일수록 구버전 프로토콜을 방치하면 신뢰도 문제로 직결됩니다. 정기적으로 확인하는 습관을 들이면 안심할 수 있습니다.

여러 도메인의 설정을 한꺼번에 점검

여러 서브도메인이나 관련 사이트를 운영하는 경우, 이 도구로 하나씩 확인하면 사이트마다 설정이 다른 부분을 발견할 수 있습니다.

TLS 버전 진단 관련 용어집

TLS
Transport Layer Security의 약자로, 웹사이트와 브라우저 간 통신을 암호화하는 프로토콜입니다. 현재 실제로 사용되는 버전은 1.2와 1.3이며, 브라우저 주소창의 자물쇠 아이콘은 TLS 암호화가 적용되었음을 나타냅니다.
SSL
TLS의 전신에 해당하는 프로토콜입니다. SSL 2.0과 3.0 모두 근본적인 설계 결함을 안고 있어 현재는 TLS로 대체되었지만, "SSL 인증서"처럼 관습적으로 TLS 문맥에서도 이름이 계속 쓰이고 있습니다.
핸드셰이크(Handshake)
클라이언트와 서버가 암호화 통신을 시작하기 전에 진행하는 사전 협상 과정입니다. 사용할 TLS 버전과 암호 스위트를 합의하는 과정으로, 이 도구는 이 협상이 각 버전에서 성립하는지를 확인합니다.
암호 스위트(Cipher Suite)
키 교환, 암호화, 변조 감지에 사용하는 알고리즘의 조합입니다. TLS 버전마다 사용 가능한 암호 스위트가 다르며, TLS 1.3에서는 취약점의 온상이 되기 쉬운 오래된 방식이 사양에서 제외되었습니다.
PCI DSS
신용카드 정보를 다루는 사업자를 위한 보안 표준입니다. 2018년부터 TLS 1.0/1.1을 "보안이 불충분한 프로토콜"로 간주하여 비활성화를 의무화하고 있습니다.
다운그레이드 공격(Downgrade Attack)
통신 도중 더 오래되고 취약한 프로토콜 버전을 사용하도록 유도하는 공격 기법입니다. 더 이상 사용되지 않는 버전이 활성화된 채로 남아 있으면 이런 공격의 발판이 될 수 있습니다.
더 이상 사용되지 않음(Deprecated)
표준으로서 더 이상 공식적으로 사용이 권장되지 않는 상태를 말합니다. TLS 1.0/1.1은 2021년 IETF에 의해 공식적으로 폐기 예정 지정되었지만, 서버 측에서 설정을 변경하지 않는 한 계속 동작합니다.

자주 묻는 질문

1999년에 표준화된 TLS 1.0은 BEAST, POODLE 등의 공격 기법이 악용하는 암호화 알고리즘의 취약점이 있는 오래된 프로토콜입니다. PCI DSS는 2018년 6월 말까지 TLS 1.0/1.1에서의 전환을 의무화했으며, 주요 브라우저들도 점차 지원을 중단하고 있습니다.

이 도구에 도메인 이름을 입력하기만 하면 TLS 1.0~1.3 네 가지 버전 각각에 대해 실제로 핸드셰이크를 시도하여 연결 가능 여부를 목록으로 표시합니다. openssl 같은 명령줄 도구에 대한 전문 지식 없이도 쉽게 확인할 수 있습니다.

2010년대 중반 이전의 매우 오래된 운영체제나 브라우저(예: Windows XP 기본 브라우저)는 접속할 수 없게 될 수 있지만, 현재 주요 브라우저와 운영체제는 모두 TLS 1.2 이상을 지원하므로 실질적인 영향은 대체로 제한적입니다.

2018년에 표준화된 TLS 1.3은 핸드셰이크 속도 향상과 암호 스위트 선택 단순화로 보안성과 성능 면에서 모두 우수합니다. 다만 널리 보급된 TLS 1.2에도 알려진 심각한 취약점은 없으므로, 새 클라이언트는 1.3을, 오래된 클라이언트는 1.2를 사용하도록 둘 다 활성화해 두는 것이 일반적인 방식입니다.

이 도구는 프로토콜 버전 지원 여부만 진단합니다. 인증서의 유효기간, 발급자, SAN 항목 등을 확인하려면 같은 카테고리의 SSL 인증서 체커를 이용하세요.
툴군

여담 ― TLS 버전의 진화와 취약점의 역사

TLS의 전신인 SSL은 1990년대 중반 Netscape사가 개발했지만, SSL 2.0과 3.0 모두 근본적인 설계 결함을 안고 있었습니다. SSL 3.0의 후속으로 1999년에 표준화된 TLS 1.0은 일부 구현에서 CBC 모드 암호의 초기화 벡터 처리에 여전히 결함이 있었고, 이는 2011년 발표된 BEAST 공격으로 실제로 증명되었습니다.

2014년에는 SSL 3.0 자체의 설계 결함을 노린 POODLE 공격이 발표되면서, 구조적으로 유사한 TLS 1.0/1.1에 대한 우려도 빠르게 확산되었습니다. 신용카드 업계 보안 표준인 PCI DSS는 2015년 TLS 1.0의 단계적 금지 방침을 발표하고, 2018년 6월 말을 TLS 1.1 이하 버전으로부터의 완전한 전환 최종 기한으로 정했습니다.

2018년에 표준화된 TLS 1.3은 이러한 과거의 취약점을 반영하여 취약점의 온상이 되기 쉬운 암호 스위트(RC4, CBC 모드 블록 암호 등)를 사양에서 제외하고, 핸드셰이크 왕복 횟수도 줄였습니다. 현재 대부분의 주요 브라우저와 서버 소프트웨어는 TLS 1.3을 기본으로 활성화하고 있으며, TLS 1.0/1.1 지원은 이미 종료한 상태입니다.

그럼에도 여전히 오래된 시스템에 의존할 수밖에 없는 서버가 전 세계에 존재하며, TLS 1.0/1.1이 활성화된 채로 방치되는 경우도 드물지 않습니다. 관리자가 스스로는 알아차리기 어려운 서버 설정 상태를 한눈에 확인할 수 있게 해주는 것이야말로 이러한 진단 도구의 존재 가치라 할 수 있습니다.