Wireshark Packet Capture (TLS Key)

KyungH·2025년 3월 24일

Cyber-Security

목록 보기
29/32

📝TLS 세션 키를 이용한 HTTPS 패킷 분석

HTTPS는 TLS 암호화를 사용하여 통신을 보호하지만, 클라이언트의 TLS 세션 키를 확보하면
트래픽을 복호화할 수 있다.

이번 실습에서는 Chromium 브라우저에서 TLS 세션 키를 저장하고, Wireshark를 이용해 HTTPS 패킷을 복호화하여 로그인 정보를 분석하는 과정을 정리한다.

📌환경 설정

Chromium에서 TLS 세션 키 저장

Chromium 브라우저를 실행할 때 --ssl-key-log-file 옵션을 사용하면
TLS 세션 키를 저장할 수 있다.

chromium --ssl-key-log-file=~/ssl-key.log
명령을 실행하면 ~/ssl-key.log 파일에 TLS 핸드셰이크 시 사용된 세션 키가 기록된다.

Wireshark에서 트래픽 캡처

Wireshark를 실행한 후, randy-chromium.pcapng 파일을 불러온다.
이 파일은 Chromium에서 캡처한 HTTPS 트래픽을 포함하고 있다.

📌Wireshark에서 HTTPS 복호화

TLS Pre-Shared Key 등록

Wireshark 실행 후 randy-chromium.pcapng 파일을 연다.
마우스 좌클릭 → Preferences → Protocols → TLS 경로로 이동한다.

(Pre)-Master-Secret log filename 옵션에 ssl-key.log 파일 경로를 입력한다.

복호화된 트래픽 확인

설정이 완료되면 HTTPS 패킷이 자동으로 복호화되며, Decrypted TLS 탭에서 복호화된 데이터를 확인할 수 있다.

📌로그인 정보 분석

로그인 요청 패킷 찾기

http2.headers.method == "POST" 필터를 사용하여 로그인 요청 패킷을 찾는다.

application/x-www-form-urlencoded 또는 JSON 데이터를 포함한 패킷을 확인한다.

복호화된 패킷 확인

Follow TLS Stream 기능을 이용해 클라이언트와 서버 간의 통신 내용을 확인한다.
로그인 요청에 포함된 username, password 등의 정보를 분석할 수 있다.

Review

WireShark의 사용법을 알기전이라 패킷을 단순 스크롤로 찾아보면서 login이라는 글자를 찾았다
어떤 정보를 검색할때던 그 정보가 매우 많다는 것을 가정한다면 필터링 및 검색기능이 무조건 있어야만 하니
사용법을 모르더라도 다음부터는 이러한 필터링 및 탐색 기술을 최대한 활용해야겠다

References

TryHackMe - Networking Secure Protocols

0개의 댓글