← 블로그 목록
작성일: 2026-06-02 HTTPSTLSSSL

HTTPS 로그 분석: TLS 버전과 암호화 스위트 점검하기

HTTPS 연결의 보안 수준은 TLS 버전과 암호화 스위트(cipher suite)에 의해 결정됩니다. 약한 암호화는 중간자 공격에 취약하므로, 로그 분석으로 구형 프로토콜 사용 클라이언트를 찾아 대응해야 합니다.


TLS 정보 로깅

Nginx

``nginx log_format ssl '$remote_addr - [$time_local] "$request" $status $ssl_protocol $ssl_cipher'; access_log /var/log/nginx/ssl.log ssl; `

로그 예시:

` 192.0.2.100 - [10/Oct/2024:14:00:00 +0000] "GET / HTTP/1.1" 200 TLSv1.3 TLS_AES_256_GCM_SHA384 `

Apache

`apache LogFormat "%h %l %u %t \"%r\" %>s %b %{SSL_PROTOCOL}x %{SSL_CIPHER}x" ssl CustomLog /var/log/apache2/ssl-access.log ssl `


TLS 버전 분포 분석

`bash awk '{print $(NF-1)}' /var/log/nginx/ssl.log | sort | uniq -c | sort -rn `

출력 예시:

` 45231 TLSv1.3 12341 TLSv1.2 421 TLSv1.1 ← 보안 취약 87 TLSv1.0 ← 매우 취약 `


TLS 버전별 보안 수준


Nginx에서 구형 TLS 차단

`nginx ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; `

재시작:

`bash sudo nginx -t sudo systemctl reload nginx `


약한 암호화 스위트 탐지

안전하지 않은 Cipher

버전상태조치
------------------
TLSv1.3최신, 안전권장
TLSv1.2안전 (현재 표준)허용
TLSv1.1취약 (2021년 폐기)차단 권장
TLSv1.0매우 취약 (2020년 폐기)즉시 차단
SSLv3극히 취약 (POODLE 공격)절대 사용 금지
Cipher위험
--------------
RC4스트림 암호 취약점
DES, 3DES키 길이 부족
MD5해시 충돌 취약
NULL암호화 없음
EXPORT의도적으로 약한 암호

로그에서 약한 Cipher 찾기

`bash grep -iE '(RC4|DES|MD5|NULL|EXPORT)' /var/log/nginx/ssl.log `


Nginx 권장 Cipher Suite

`nginx ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256'; ssl_prefer_server_ciphers on; `


Perfect Forward Secrecy (PFS) 확인

PFS는 개인키 유출 시에도 과거 통신을 보호합니다.

PFS 지원 Cipher:

  • ECDHE-...
  • DHE-...
PFS 미지원:
  • RSA-...

로그에서 PFS 사용률

`bash PFS=$(grep -c 'ECDHE\|DHE' /var/log/nginx/ssl.log) TOTAL=$(wc -l < /var/log/nginx/ssl.log) echo "PFS: $((100 * PFS / TOTAL))%" `


HSTS (HTTP Strict Transport Security)

HTTPS만 사용하도록 브라우저에 강제:

`nginx add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always; `


SSL Labs 테스트

서버 외부에서 테스트:

` https://www.ssllabs.com/ssltest/analyze.html?d=example.com `

A+ 등급을 목표로 하세요.


로그로 혼합 콘텐츠 탐지

HTTPS 페이지에서 HTTP 리소스 로드 시 브라우저 경고 발생:

`bash grep 'http://' /var/log/nginx/access.log | grep -v 'https://' ``


정리

TLS 1.2 이상만 허용하고, ECDHE 기반 PFS 암호화 스위트를 사용하세요. 로그에서 TLSv1.0/1.1, RC4, DES 사용 흔적이 있다면 즉시 차단해야 합니다.