7. FlyHigh all rights reserved 7
Cipher Suite
ClientHello
지원하는 TLS version
Random number
Cipher suite 목록
[session ID]
ServerHello
결정된 TLS version
Random number
선택한 Cipher suite
[session ID]
8. FlyHigh all rights reserved 8
Cipher Suite
안전한 Cipher Suite
Value Description DTLS-OK Reference
0x00,0x9E TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 Y [RFC5288]
0x00,0x9F TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 Y [RFC5288]
0x00,0xA2 TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 Y [RFC5288]
0x00,0xA3 TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 Y [RFC5288]
0xC0,0x2B TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 Y [RFC5289]
0xC0,0x2C TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 Y [RFC5289]
0xC0,0x2F TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 Y [RFC5289]
0xC0,0x30 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 Y [RFC5289]
0xC0,0xA2 TLS_DHE_RSA_WITH_AES_128_CCM_8 Y [RFC6655]
0xC0,0xA3 TLS_DHE_RSA_WITH_AES_256_CCM_8 Y [RFC6655]
0xC0,0xAC TLS_ECDHE_ECDSA_WITH_AES_128_CCM Y [RFC7251]
0xC0,0xAD TLS_ECDHE_ECDSA_WITH_AES_256_CCM Y [RFC7251]
0xC0,0xAE TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 Y [RFC7251]
0xC0,0xAF TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8 Y [RFC7251]
9. FlyHigh all rights reserved 9
Cipher Suite
구조
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
키교환 암호 모드 무결성
순방향 비밀성
(Forward Secrecy)
앞 알고리즘명의
뒤에 ‘E’가 붙은
놈만
현실적으로
AES만 안전
GCM/CCM만
안전
SHA256 이상만
안전
없으면 SHA
없으면 CBC없으면 3DES
RC4
TLS_DHE_DSS_WITH_AES_128_CBC_SHA
TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
IE 7,8
(Windows XP)
10. FlyHigh all rights reserved 10
Cipher Suite
내 브라우저는? https://www.ssllabs.com/ssltest/viewMyClient.html
12. FlyHigh all rights reserved 12
인증
Algorithm
SHA1은 더 이상 써서는 안 되는 …
인증서와 Cipher Suite에서 SHA1은 사용하면 안됨
특히 인증서는 조금만 공들이면 위조 가능
대신 SHA256은 XP SP2이하에서는 지원 안됨
그런데 어차피 XP에서 지원되지 않는
AES256을 쓰면서 SHA1을 사용하는 것은
납득불가
15. FlyHigh all rights reserved 15
HTTPS에 대한 공격
SSL Strip/SSL Proxy과 방어
Strict-Transport-Security: max-age=15768000 ; includeSubDomains
HPKP(HTTP Public Key Pinning)
16. FlyHigh all rights reserved 16
HTTPS에 대한 공격
주요 공격 패턴
암호취약점 : CBC, Padding Oracle, MD5, 3DES, RC4, DH512
프로토콜 취약점 : Downgrade, non-HSTS, …
제품 취약점 : protocol handling, decoding 오류,
17. FlyHigh all rights reserved 17
HTTPS에 대한 공격
주요 취약점
취약점 내용 대상
취약한 키 유도 MD5 ~SSL 3.0
Cipher Suite Downgrade handshake ~SSL 3.0
POODLE Attack CBC + Downgrade SSL 3.0
RC4 Attack SSL/TLS
Truncation attack 로그아웃 차단 SSL/TLS
FREAK attack
Logjam attack
OpenSSL
512-bit DH
무기수출통제정책
SSL/TLS
Heartbleed bug
BERserk attack
OpenSSL
일부 제품의 ASN.1
decoding 오류
SSL/TLS
Timing attacks on
padding
Padding Oracle Attack ~TLS 1.1
AES_GCM만 안전
https://en.wikipedia.org/wiki/Arms_Export_Control_Act
18. FlyHigh all rights reserved 18
HTTPS 성능과 Mixed Contents
30~40%는 느려진다. 특히 CPU의 부하가 크다
가속장비 사용 : 컨텐츠 관리 …
Image를 http로 처리 : 모든 브라우저에서 허용함, iFrame 랩핑
의도하지 않은 정보유출
http://www.securitee.org/files/mixedinc_isc2013.pdf
19. FlyHigh all rights reserved 19
HTTPS 성능과 Mixed Contents
보안을 위해서 하는 것이면 조금 더 주의하자
의도하지 않은 정보유출
HSTS는 별 효과 없음. iFrame랩핑 금지(경고가 뜨지 않기도 함)
CSP(Content Security Policy) : 원하지 않는 컨테츠 유입 차단