SSL nego 중 서버가 클라이언트로 인증서(certificate)를 주게 된다.

서버나 클라이언트에서 인증서를 확보하지 않고 패킷 덤프에서 추출하는 방법을 기술한다.


1. wireshark로 SSL 패킷 덤프를 연다.

2. TCP 프로토콜 설정에서 "Allow subdissector to reassemble TCP streams" 옵션을 켠다.

3. SSL handshake 중 "Certificate" 가 포함된 패킷을 연다.

4. packet detail 부분에서 SSL protocol을 확장

5. "Certificate" TLS record 확장

6. "cettificate" handshake protocol 확장

7. certificates list 확장. 첫번째 certificate가 서버의 것이고 뒤에 오는 certificate은 CA 및 root CA의 것이다. certificate chaining 참조

8. 첫번째 certificate에다 오른쪽 클릭.

9. "Export selected packet bytes..." 선택. 

10. 이름 적고 세이브


여기까지 진행하면, DER format의 certificate가 추출된다.


human readable하게 바꾸기 위해서는 openssl 명령을 이용한다.


>> openssl x509 -inform der -in <파일명> -text (-onout)


많이 쓰는 PEM 방식으로 저장하려면,


>>  openssl x509 -inform der -in <파일명> -out <파일명.pem>


참고로 der과 pem은 인코딩 방식이며, 특히 pem은 ascii(base64)로 표현됨. '-- BEGIN' 으로 시작

crt, cer, key 확장자는 각각 다음과 같다.


* crt: certificate의 확장자. der 또는 pem 으로 인코딩 된다.

* cer: crt의 alterate form이며 MS convention. IE에서 인식.

* key: private 또는 public key의 확장자. crt와 마찬가지로 der 또는 pem으로 인코딩 된다.



# ref.


1. https://www.wireshark.org/lists/wireshark-users/201003/msg00080.html ; wireshark로 certificate 추출

2. http://www.sslshopper.com/article-most-common-openssl-commands.html ; der -> pem 변환 방법

3. https://support.ssl.com/Knowledgebase/Article/View/19/0/der-vs-crt-vs-cer-vs-pem-certificates-and-how-to-convert-them ; der, pem 등 인증서 형식 비교

3-1. http://www.gtopia.org/blog/2010/02/der-vs-crt-vs-cer-vs-pem-certificates/ ; 3.의 original

'IT > network' 카테고리의 다른 글

IP broadcast 와 Mac broadcast  (0) 2014.04.03
Dynamic ARP Inspection  (0) 2009.11.23

broadcast : refers to a method of transferring a message to all recipients simultaneously.


wikipedia의 정의에 따르면 위와 같다.

(http://en.wikipedia.org/wiki/Broadcasting_(networking))


매우 간단 명료하다. 그런데, 여기에 IP와 Mac 이란 prefix가 붙는다면?


IP broadcast : subnet에 속한 모든 device들에 전달될 수 있는 주소

Mac broadcast : 특별히 스위치(L2)에게 전달 가능한 모든 포트로 패킷을 전파하게 하는 주소


같은 broadcast이지만, layer에 따라 각각 다른 역할이다.


더 쉽게 풀면, 스위치(L2)와 호스트들이 서로 연결된 상태에서 broadcast 패킷이 각 호스트에 

전달되기 위해서는


1. 먼저 스위치(L2)가 이 패킷이 broadcast 패킷임을 알아차리고, 모든 포트에 flooding하는 동작과

2. 각 포트를 통해 호스트로 전달된 패킷이 broadcast 패킷이므로 자신의 주소가 아니더라도 수신


하는 동작이 연결되어야 한다.


# IP broadcast 중 255.255.255.255는 local broadcast로 자기 subnet을 벗어나지 않는 broadcast이다.


reference는 http://www.lammle.com/discussion/archive/index.php/t-1607.html


끝.


'IT > network' 카테고리의 다른 글

wireshark로 패킷 덤프에서 인증서(certificate) 추출하기  (0) 2014.07.01
Dynamic ARP Inspection  (0) 2009.11.23
트랙백 걸기 한번 힘들다.

http://kr.blog.yahoo.com/buco_juice_hooni/985804

'IT > network' 카테고리의 다른 글

wireshark로 패킷 덤프에서 인증서(certificate) 추출하기  (0) 2014.07.01
IP broadcast 와 Mac broadcast  (0) 2014.04.03

+ Recent posts