디스토피아
서버의 TLS 버전 확인 방법 본문
반응형
HTTPS, SSL/TLS 보안 프로토콜 개념 이해하기
○ HTTPS( HTTP over SSL/TLS, HTTP Secure )
HTTPS는 HTTP의 보안 강화된 버전으로, 일반 텍스트 대신 SSL/TLS 보안 프로토콜을 사용하여 소켓 통신 중 세션 데이터를 암호화함으로써 데이터의 적절한 보호를 보장합니다. 이로 인해 중간자 공격(Man-in-the-middle attack) 등의 보안 위협으로부터 데이터를 안전하게 보호할 수 있습니다.
HTTP( HyperText Transfer Protocol )는 하이퍼텍스트 문서를 전송하기 위해 사용되는 프로토콜이며, 클라이언트와 서버 간의 통신에서 사용자 비밀번호나 계좌번호와 같은 개인 정보를 암호화하여 스니핑 공격에 대응할 수 있도록 보안 기능을 강화한 것이 바로 HTTPS입니다. 이를 통해 보안성이 높아진 웹 통신이 가능해집니다.
○ TLS( Transport Layer Security )
SSL( Secure Sockets Layer ) 3.0 표준을 기반으로 설계된 상위 버전으로, 네트워크 상에서 데이터를 안전하게 전송하기 위한 보안 프로토콜입니다. TLS는 Handshake 과정에서 클라이언트와 서버 간의 인증과 암호화를 수행하여 전송계층 종단 간 보안과 데이터 무결성을 확보합니다.
○ TLS 보안 프로토콜 버전 정보
프로토콜 | 연도 | 비고 |
TLS 1.0 | 1999 | SSL 3.0 표준을 바탕으로 설계된 상위 버전으로 보안 취약점 해결 |
TLS 1.1 | 2006 | 암호 블록 체인 공격에 대한 방어와 IANA 등록 파라메터의 지원이 추가 |
TLS 1.2 | 2008 | 보안에 취약한 SHA-1 알고리즘 대신 SHA-2를 사용하도록 변경 |
TLS 1.3 | 2018 | 인증서 암호화 및 Handshake 과정 간소화로 인한 성능(속도) 향상 |
○ TLS 통신 과정( TLS Handshake )
OpenSSL을 이용한 확인
- openssl s_client를 이용하여 tls 버전 별로 negotiation 테스트 및 지원 여부를 알 수 있다.
- s_client tls protocol 관련 args
usage: s_client args
...
-ssl3 - just use SSLv3
-tls1_2 - just use TLSv1.2
-tls1_1 - just use TLSv1.1
-tls1 - just use TLSv1
-dtls1 - just use DTLSv1
...
- TLS 1.2
- 아래와 같이 지원 가능 결과 출력
> openssl s_client -connect ploz.tistory.com:443 -tls1_2
...
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : ECDHE-RSA-AES256-GCM-SHA384
Session-ID: 403084C8121618CBD56187DE3BEF0B061716A63A49393F22C65FEC8C3FEC390A
Session-ID-ctx:
Master-Key: F518D796C51DD14879387848D58D622A3B21C8AB66CC2C9C9A223FED9428CA0F09096BE64BD52499393F558190AE4AC5
Key-Arg : None
Krb5 Principal: None
PSK identity: None
PSK identity hint: None
TLS session ticket lifetime hint: 300 (seconds)
TLS session ticket:
...
- SSLv3
- 아래와 같이 지원 않는 결과 출력
> openssl s_client -connect ploz.tistory.com:443 -ssl3
CONNECTED(00000003)
140178768439184:error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:s3_pkt.c:1493:SSL alert number 40
140178768439184:error:1409E0E5:SSL routines:ssl3_write_bytes:ssl handshake failure:s3_pkt.c:659:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 0 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : SSLv3
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
Key-Arg : None
Krb5 Principal: None
PSK identity: None
PSK identity hint: None
Start Time: 1652325409
Timeout : 7200 (sec)
Verify return code: 0 (ok)
---
WEB 사이트에서 확인
- 결과값 중 아래내용으로 지원여부를 알수 있다.
반응형
'정보·기타 > it' 카테고리의 다른 글
엑셀(Excel) 데이터를 JSON으로 변경하기 (0) | 2024.05.30 |
---|---|
리눅스 기본 명령어 1 ( pwd / su / ls / df / du / chmod / chown / mkdir / mv / rm / cd / cp / touch / cat ) (1) | 2023.12.04 |
윈도우10 화면멈춤현상 해결법 tiworker.exe 사용종료 (1) | 2023.11.22 |
Scale Up / Scale Out / Scale In / AWS Auto Scaling (0) | 2023.01.15 |
DBMS 별 버전 정보 확인 명령어 (0) | 2023.01.15 |
Comments