일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- VSCode
- Android
- Java
- Flutter
- Sysinternals
- ebpf
- service
- docker
- nginx-media-server
- macos
- android studio
- aws
- Pod
- kubectl
- Windows10
- deployment
- namespace
- ffmpeg
- RTMP
- Python
- wireshark
- Kubernetes
- Shell script
- HLS
- golang
- configmap
- 행정구역분류
- dart
- aws cli
- spring cloud config
- Today
- Total
woonizzooni
SSL/TLS 패킷 복호화 관련 (nss, libnss ...) 본문
[관련 글]
https://woonizzooni.tistory.com/entry/Wireshark-SSLTLS-패킷-복호화
https://woonizzooni.tistory.com/entry/tcpdump-SSLTLS-패킷-복호화
가장 간편하게(?) 해볼 수 있는 방법은 SSL Key log파일을 이용하는 방법임.
이는 NSS(Network Security Services)에 의해서 이뤄짐. (SSLKEYLOG 환경 변수 사용)
SSLKEYLOGFILE을 지원하는 NSS를 사용하는 application의 경우
이 변수가 설정되어 있을 경우 해당 파일에 SSL Key로그 내용을 기록함.
대표적으로 cURL, Chrome, Firefox 등임.
Network Security Services (NSS) : 서버 클라이언트간 키/인증서 보안 기능 제공하는 라이브러리 세트
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS
https://hg.mozilla.org/projects/nss/
https://github.com/nss-dev/nss
Network Security Services (NSS) is a set of libraries designed to support cross-platform development of security-enabled client and server applications. Applications built with NSS can support SSL v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security standards. |
NSS빌드 옵션을 보면
lib/ssl/Makefile
lib/ssl/sslsock.c
lib/ssl/ssl3con.c
기록되는 로그 형식은 다음과 같음.
NSS Key Log Format.
https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Key_Log_Format
이 SSL key로그파일을 이용해서 패킷내용을 살펴볼 수 있는데,
wireshark의 경우 환경설정에서 이 파일을 키 파일로 등록해서
SSL/TLS패킷을 내용을 inspect해볼 수 있음.
'MISC' 카테고리의 다른 글
gif 파일 크기 줄이기 / gif 해상도 변경하기 (0) | 2019.11.23 |
---|---|
[VSCode] XDebug PHP 디버깅 환경 설정 (1) | 2019.11.12 |
tcpdump SSL/TLS 패킷 복호화 (0) | 2019.10.18 |
"VMware Workstation Pro은 Windows에서 실행할 수 없습니다" (0) | 2019.10.18 |
MacOS 환경에서 vim 환경 설정 (0) | 2019.10.15 |