취약한 HTTPS 점검 관련 정리
웹 애플리케이션을 점검하다보면, HTTPS 관련 점검 항목을 볼 수 있다.
"취약한 HTTPS 프로토콜 이용", "취약한 HTTPS 암호 알고리즘 이용" 등인데, 해당 항목을 점검하는데 유용한 방법 세 가지는 아래와 같다.
1. ssllabs
점검하고자 하는 사이트와 점검자가 인터넷에만 연결되어 있다면 가장 편한 방법일 것이다.
Qualys SSL Labs
Books Bulletproof SSL and TLS is a complete guide to deploying secure servers and web applications. This book, which provides comprehensive coverage of the ever-changing field of SSL/TLS and Web PKI, is intended for IT security professionals, system admini
www.ssllabs.com
ssllabs.com에 접속하여 점검하고자 하는 사이트의 주소를 입력하면 된다.
2. sslyze
python3을 이용하여 커맨드 라인에서 점검을 진핼할 수 있다.
https://github.com/nabla-c0d3/sslyze
GitHub - nabla-c0d3/sslyze: Fast and powerful SSL/TLS scanning library.
Fast and powerful SSL/TLS scanning library. Contribute to nabla-c0d3/sslyze development by creating an account on GitHub.
github.com
설치 방법도 간단하며, 커맨드 라인도 쉽다.
$ pip install —upgrade pip setuptools wheel
$ pip install —upgrade sslyze
$ python -m sslyze www.yahoo.com
3. sslscan
kali 에는 기본적으로 설치되어 있는 툴이지만, pythom3만 있다면 쉽게 설치하고 커맨드 라인에서 쉽게 사용할 수 있다.
https://github.com/DinoTools/pysslscan
GitHub - DinoTools/pysslscan: Framework and command-line tool to scan SSL enabled services
Framework and command-line tool to scan SSL enabled services - GitHub - DinoTools/pysslscan: Framework and command-line tool to scan SSL enabled services
github.com
$ pip install sslscan
$ pysslscan scan --scan=server.ciphers www.test.com --ssl3
$ pysslscan --help
.
그런데 간혹 점검을 진행하다가 위 세 방법에서는 'ssl 3.0 사용', 'rc4 알고리즘 사용' 등 취약하다는 결과를 확인할 수 있지만,
해당 사이트의 담당자로부터 오탐이라는 피드백을 받는 경우가 있다.
예상컨데 서버에서 ssl 3.0은 허용으로 설정해뒀지만, 웹 방화벽 등에서 아래처럼 tls 알고리즘만 허용해서 짤리는 느낌이다.
Allow TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 Allow TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 Allow TLS_RSA_WITH_AES_128_GCM_SHA256 |
SSL 3.0의 경우 크롬이나 파이어 폭스 등에서는 아에 지원조차 안 하지만, 인터넷 익스플로러에서는 SSL 3.0만 사용하여 해당 사이트가 SSL 3.0으로 접속이 가능한지 확인하는 방법이 있다.
"인터넷 익스플로러 > 인터넷 옵션 > 고급"에서 아래와 같이 설정하고, 인터넷 익스플로러를 통해 확인하고자 하는 사이트에 접속하면 된다.