약한 프로토콜(TLS 1.0/1.1)이란? 왜 꺼야 할까
SSLCheck 대시보드에서 "약한 프로토콜"이라는 경고를 보셨다면, 서버가 오래된 보안 통신 방식을 아직 켜두고 있다는 뜻입니다. 정확히 무엇이고 왜 꺼야 하는지 쉽게 정리했습니다.
프로토콜이 뭔가요?
브라우저와 서버가 암호화해서 대화하려면, 먼저 "어떤 방식으로 암호화할지" 규칙을 정해야 합니다. 그 규칙이 바로 TLS 프로토콜입니다. (예전 이름이 SSL이라, 흔히 "SSL"이라고 부르지만 지금 쓰는 건 사실상 모두 TLS입니다.)
TLS에도 버전이 있습니다. 오래된 순서로 TLS 1.0(1999년) → 1.1(2006년) → 1.2(2008년) → 1.3(2018년)입니다. 숫자가 높을수록 최신이고 안전합니다.
"약한 프로토콜"은 TLS 1.0 / 1.1
TLS 1.0과 1.1은 설계된 지 오래되어 알려진 약점이 많습니다. 대표적으로 BEAST, POODLE 같은 공격에 노출될 수 있고, 최신 암호 방식을 지원하지 않습니다. 그래서 보안 업계와 브라우저들이 사용 중단을 권고했습니다.
- 주요 브라우저(크롬·파이어폭스·사파리·엣지)는 2020년부터 TLS 1.0/1.1 지원을 제거했습니다.
- 카드 결제 보안 표준인 PCI DSS는 이미 TLS 1.0 사용을 금지하고 있습니다.
- 서버에 1.0/1.1이 켜져 있으면, 공격자가 일부러 옛 버전으로 끌어내리는 다운그레이드 공격의 빌미가 될 수 있습니다.
켜져 있으면 당장 문제가 생기나요?
대부분의 방문자는 자동으로 TLS 1.2/1.3을 쓰기 때문에 평소엔 티가 안 납니다. 하지만 약한 버전이 "켜져만 있어도" 공격 표면이 됩니다. 또한 보안 점검·심사(PCI, 기업 보안 감사 등)에서 감점 요인이 되고, SSLCheck 같은 도구에서 보안 등급이 떨어집니다.
어떻게 끄나요?
서버 설정에서 허용 프로토콜을 TLS 1.2 이상으로 제한하면 됩니다.
- Nginx:
ssl_protocols TLSv1.2 TLSv1.3; - Apache:
SSLProtocol -all +TLSv1.2 +TLSv1.3 - Cloudflare·로드밸런서 등은 관리 콘솔에서 "최소 TLS 버전"을 1.2로 설정합니다.
설정 후에는 실제로 1.0/1.1이 꺼졌는지 외부에서 확인하는 것이 중요합니다. SSLCheck는 서버가 실제로 응답하는 프로토콜을 점검해, 약한 프로토콜이 다시 켜지면 보안 회귀 알림으로 알려드립니다.
요약
- 약한 프로토콜 = TLS 1.0 / 1.1 (오래되고 취약)
- 최신 브라우저는 이미 안 쓰지만, 켜져 있는 것만으로 공격 표면이 됨
- 서버에서 TLS 1.2 이상으로 제한하고, 적용 여부를 점검하세요