패킷파일이 큰 경우 Editcap 과 tcpslice 를 이용하여 패킷을 분할하는 방법에 대해서 알아보았는데, 추가로 다른 유용한 툴 한가지를 더 소개하고자 한다. 펄(Perl)로 만들어진 것으로, 사용법도 간단하고 오히려 쉽게 사용할 수 있는 부분이 있는거 같아 유용할 것이다.
파일은 다음의 경로에서 받을 수 있다.
일단, pcap-util 을 실행해 보면 옵션은 크게 split, time, filter 로 나뉘어져 있다.
tmp# ./pcap-util
This utility will take a pcap file from a packet capture program like tcpdump
and split it into smaller parts to aid analysis. There are three options.
1. You can split the file into several smaller ones of x bytes in length
2. You can extract packets that fall within a specified time period
3. You can extract packets that match a libpcap filter string.
Split into smaller files
------------------------
./pcap-util split <infile> <outfile prefix> <size in MB>
Extract packets from time period
--------------------------------
./pcap-util time <infile> <outfile> <Start time> <End time>
Extract packets using libpcap filter language
---------------------------------------------
./pcap-util filter <infile> <outfile> "libpcap filter string"
** Time format should be YYYY-MM-DD:hh:mm:ss **
/tmp# ./pcap-util split rigel.pcap output.pcap 1 Writing file output.pcap.0.tcpdump Writing file output.pcap.1.tcpdump Writing file output.pcap.2.tcpdump Writing file output.pcap.3.tcpdump Writing file output.pcap.4.tcpdump Writing file output.pcap.5.tcpdump Writing file output.pcap.6.tcpdump Writing file output.pcap.7.tcpdump Writing file output.pcap.8.tcpdump ====> Done <==== /tmp# ls -l total 93368 -rw-r--r-- 1 root root 1023460 2010-01-19 08:54 output.pcap.0.tcpdump -rw-r--r-- 1 root root 1023472 2010-01-19 08:54 output.pcap.1.tcpdump -rw-r--r-- 1 root root 1023490 2010-01-19 08:54 output.pcap.2.tcpdump -rw-r--r-- 1 root root 1023466 2010-01-19 08:54 output.pcap.3.tcpdump -rw-r--r-- 1 root root 1023498 2010-01-19 08:54 output.pcap.4.tcpdump -rw-r--r-- 1 root root 1023676 2010-01-19 08:54 output.pcap.5.tcpdump -rw-r--r-- 1 root root 1023570 2010-01-19 08:54 output.pcap.6.tcpdump -rw-r--r-- 1 root root 1023559 2010-01-19 08:54 output.pcap.7.tcpdump -rw-r--r-- 1 root root 83061 2010-01-19 08:54 output.pcap.8.tcpdump -rwxr-xr-x 1 root root 8736 2009-08-30 18:16 pcap-util -rw-r--r-- 1 root root 8271060 2010-01-18 09:25 rigel.pcap타임은 "YYYY-MM-DD:hh:mm:ss" 와 같은 포맷으로 시간을 지정하여 사용하면 된다. filter 는 걸러진 파일에 대해서만 추출하여 저장한다. 아래 예제는 cl.exe.pcap 에서 TCP 이며 목적지 포트가 80 번 인것을 대상으로 output.pcap 에 저장하고 있다.
/tmp# ./pcap-util filter cl.exe.pcap output.pcap "tcp and dst port 80" Writing packets matching "tcp and dst port 80" to output.pcap ====> Done <==== /tmp# ls -l total 88948 -rw-r--r-- 1 root root 2334504 2010-01-19 09:01 cl.exe.pcap -rw-r--r-- 1 root root 1442126 2010-01-19 09:02 output.pcapcl.exe.pcap 이 2.3 메가 정도 였는데, 80 번포트로 걸러낸 것은 1.4 메가 정도 나온다. 이 외에 유용한 것이 있으면 알려주세요.
댓글 없음:
댓글 쓰기