2012 HackThePacket 예선 첫 두문제이다.
- 2012_htp_prequal.pcap 파일은 어떤 환경(System Information)에서 캡쳐한 것일까?
- 2012_htp_prequal.pcap 파일은 어떤 도구로 캡쳐한 것일까?
위 두 문제는 급 출제하게 되었지만, 단순히 퀴즈나 게싱으로 내려고 했던것은 아니다. 패킷파일을 저장하여 검증하는 과정에서 재미있는 사실을 알게 되었다. 처음에 검증 과정에서 NetworkMiner와 같은 툴들로 Object들이 너무 쉽게 보이진 않을지 확인해야했다. 그런 경우 더미를 더 추가하여 쉽게 알아보지 않도록 할 예정이었다. (물론 최종적으로, 예선인점을 감안하여 문제가 쉽게 추출할될 수 있게 더미를 포함하지 않았다.)
따라서 문제 파일을 검증하기 위해 와이어샤크로 열어 보기 이전에, NetworkMiner로 열어 보았는데 계속 오류가 나는 것이다. 오류 내용은 아래 그림과 같이, pcap파일은 A1B2C3D4이어야 하는데 A0D0D0A 로 매직넘버가 틀렸다는 것이다.
하지만 와이어샤크로는 매우 잘 열렸다. 파일의 확장자명을 보면 *.pcapng이다. 패킷파일은 *.pcap 또는 *.cap 이 가장 일반적으로 사용하는 확장자 명이다. 와이어샤크에서 저장할 때, 아래와 같은 팝업창이 뜨면서 파일 형식을 지정할 수 있다. 종류는 우리가 생각했던것보다 더 다양하다. 이 중 가장 아래쪽에 보면 Wireshark-pcapng(experimental) (*.pcapng)를 볼 수 있다.
문제를 전달했던, Leo는 도대체 왜 pcapng로 파일을 저장한것일까?
2012년 6월 와이어샤크의 최신 버전 1.8.3 이 릴리즈 되었다. 릴리즈 노트에서 새로운 기능을 잘 살펴보면, 여러 인터페이스를 사용하는 기능 뿐만 아니라 저장할 때, 기본적으로 pcapng 파일 포맷으로 저장된다.
Wireshark, TShark, and their associated utilities now save files using the pcap-ng file format by default. (Your copy of Wireshark might still use the pcap file format if pcap-ng is disabled in your preferences.)
그럼, 왜 기본 파일 포맷을 pcap-ng로 변경했을까? (자세한 내용은 와이어샤크 블로그를 참고해라) 이 파일 포맷은 pcap 보다 복잡하지만 더 유연하다고 한다. 호스트정보, 인터페이스 확장 정보 등을 저장할 수 있다. 아마도 와이어샤크 최신버전에서 멀티 인터페이스를 지원하면서 각 파일마다 시스템 환경 정보를 담고자 함이었던것 같다. 하지만 많은 어플리케이션들이 pcap 파일 포맷만 지원하고 있다. 와이어샤크 측에서는 이런 어플리케이션 개발자들에게 미안하지만 고객들이 불평하기 전에 pcapng 파일 포맷도 지원하도록 개발하라고 말하고 있다.
변경된 파일 포맷 pcapng 를 살짝 살펴보자.(구 버전으로 *.pcapng로 저장하는 것은 또 다르다. 아래 예는 최신 와이어샤크로 *.pcapng로 저장한 것이다.)
사용자의 시스템 정보 뿐만 아니라, 캡쳐할 때 사용된 툴이 무엇인지 네트워크 드라이버 정보까지 들어가 있다.
여기서 Dumpcap 은 네트워크 트래픽 덤프 툴이다. 그리고 Dumpcap의 기본 캡쳐 파일 포맷은 pcap-ng 포맷이다. 와이어샤크에서 캡쳐할 때, 이 툴을 사용하는 것이다.
Dumpcap is a network traffic dump tool. It lets you capture packet data from a live network and write the packets to a file. Dumpcap's default capture file format ispcap-ng format. When the -P option is specified, the output file is written in the libpcap format.
마지막으로 최신 버전에서 필터된 파일만 따로 저장하고 싶을 때, Save나 Save as에는 옵션이 나오지 않는다. "Export specified packets" 메뉴를 이용해야 한다.
깨알같은 와이어샤크의 잔지식...... 재밌죠? ㅋㅋ
'Network' 카테고리의 다른 글
loopback 스니핑 (0) | 2013.04.24 |
---|---|
Mobile Sniffing (0) | 2013.01.21 |
MAC address OUI lookup by python (0) | 2012.09.18 |
rule2alert - 스노트 룰로 패킷 만들기 (0) | 2012.06.14 |
Xplico - Network Forensic Analysis Tool (NFAT) (0) | 2012.06.11 |