지난 포스트에서 정부의 HTTPS SNI 필드 감청에 관련되어 HTTPS와 SNI필드 영역에 대해서 포스트 했다.
정부의 HTTPS SNI 필드 감청에 대해.. #1 - 고찰
이번 포스트에서는 와이어샤크를 통한 SNI 필드 감청을 실습해보겠다.
PC : Windows 10
도구 : Wireshark for windows
망 : 내부 개인 네트워크
https://www.wireshark.org/download.html
위 wireshark 페이지에서 OS에 맞는 설치 파일을 다운받아 설치한다.
Wireshark는 위와 같이 구성되어있다.
네트워크 인터페이스를 리스트로 보여주고 어디서에서 패킷 트래픽이 발생하는지를 시계열 그래프로 보여준다.
현재 이더넷 인터페이스를 통해 인터넷을 사용하고 있으므로 이더넷을 클릭해주고 왼쪽 위의 상어 지느러미를 클릭해 감청을 시작해보겠다.
현재 이더넷을 통해 내 컴퓨터를 거쳐가는 모든 트래픽이 계속 리스트업 된다.
Source필드는 통신의 시작 IP 주소이고 Destination은 통신의 도착 IP 주소이다.
실습을 쉽게 하기 위해 Source IP를 현재 와이어샤크를 이용하고 있는 IP로 맞춰주고,
SNI 필드를 보기 위해 ssl handshake 과정 중 SNI필드가 포함된 패킷을 필터링하였다.
이 상태에서 웹브라우저를 하나 열고 'www.naver.com'을 주소창에 입력해 접속해보겠다.
필터링된 패킷 리스트 중에서 아무거나 클릭하여 패킷을 들여다보면 위 사진과 같이 Server name Indication extension에 요청한 도메인 사이트의 server name이 나오게 된다.
아래에 16진수로 된 패킷에서도 'www.naver.com'이 보인다.
python의 ettercap라이브러리를 이용해서 MITM이나 ARP 스푸핑 등의 환경을 만들고 패킷을 중간에 가로채서 SNI필드를 수집하는 방법 등으로 응용해서 실습해 볼 수도 있을 것 같다.
피드백은 언제든지 환영입니다.
정부의 HTTPS SNI 필드 감청에 대해.. #1 - 고찰 (0) | 2019.07.14 |
---|