취약한 HTTPS 관련 취약점 점검 방법
JANUARY 07, 2019

• 취약한 HTTPS 프로토콜 이용

* (평가항목 설명) 취약한 버전의 암호 프로토콜 사용 시 암호화된 통신 내용이 유출될 수 있어 취약한 버전의 SSL(SSL 2.0, 3.0) 사용 여부를 점검
* (평가 예시 : 취약한 버전의 SSL(SSL 2.0, 3.0) 사용 가능 여부 점검 등)

1. nmap을 이용한 HTTPS 프로토콜 확인
C:\Users> nmap -p [port] --script ssl-enum-ciphers [target_host]
C:\Users> nmap -p 443 --script ssl-enum-ciphers secureroot.co.kr
2. openssl을 이용한 HTTPS 프로토콜 확인
C:\Users> openssl s_client -ssl3 -connect [target_host:port]
C:\Users> openssl s_client -ssl3 -connect secureroot.co.kr:443

• 취약한 HTTPS 암호 알고리즘 이용

* (평가항목 설명) 보안 강도가 낮은 암호 알고리즘을 사용할 경우 암호화된 통신 내용이 유출되는 등의 위협이 존재함에 따라 암호 알고리즘의 보안 강도의 적절성 여부를 점검
* (평가 예시 : 보안 강도가 낮은 암호 알고리즘 사용 여부 점검 등)

1. nmap을 이용한 HTTPS 암호 알고리즘 확인
C:\Users> nmap -p [port] --script ssl-enum-ciphers [target_host]
C:\Users> nmap -p 443 --script ssl-enum-ciphers secureroot.co.kr

이용 가능한 HTTPS 프로토콜 종류, 암호 알고리즘 보안 강도(알파벳으로 표시) 등 확인 가능

• 취약한 HTTPS 컴포넌트 사용

* (평가항목 설명) 취약한 HTTPS 확장 모듈 사용 시 암호화된 정보 노출 등의 위협이 존재함에 따라 이에 대한 취약점 존재 유무 점검
* (평가 예시 : HTTPS 관련 주요 취약점(CVE-2014-0160:Heartbleed, CVE-2014-0224 등)의 존재 여부 점검 등)
* CVE-2014-0160 : OpenSSL의 라이브러리에 버그가 존재하여 서버내 중요 메모리 데이터가 노출될 수 있는 취약점
* CVE-2014-0224 : OpenSSL 통신 상의 CCS(ChangeCipherSpec)메시지 처리과정 중 취약점이 있어 암호화된 정보의 노출 및 변조 가능성이 존재하는 취약점

1. nmap을 이용한 취약한 HTTPS 컴포넌트 사용 여부 확인
* HeartBleed(CVE-2014-0160)
C:\Users> nmap -p [port] --script ssl-heartbleed [target_host]

* CCS-Injection(CVE-2014-0224)
C:\Users> nmap -p [port] --script ssl-ccs-injection [target_host]

* Poodle Attack(CVE-2014-3566)
C:\Users> nmap -p [port] --script ssl-poodle [target_host]

• 취약한 HTTPS 재협상 허용

* (평가항목 설명) 암호화된 통신내용이 노출될 가능성이 존재하는 취약한 방식의 HTTPS 재협상(Renegotiation)을 허용 여부를 점검
* (평가 예시 : SSLTEST 결과 insecure client-initiated renegotiation 값 점검 등(ex. No - 양호, supported - 미흡))

취약한 방식의 HTTPS 재협상 허용을 점검하기 위해 4가지 재협상 방법 중 Client-initiated insecure renegotiation 값을 점검
- Client-initiated secure renegotiation
- Client-initiated insecure renegotiation(CVE-2009-3555)
- Server-initiated secure renegotiation
- Server-initiated insecure renegotiation

1. openssl(0.9.8k 이하)을 이용한 취약한 HTTPS 재협상 허용 여부 확인
C:\Users> openssl s_client -connect [target_host:port]
C:\Users> openssl s_client -connect secureroot.co.kr:443

R
(입력)