9/08/2015

TCPDUMP 사용법

1. TCPDUMP 란?

wireshark(ethereal)에서 window에서 winpcap기능이라고 생각하면 되겠다.
ethernet에서 들어온 packet을 libpcap을 이용하여 capture를 한다.
tcpdump는 이를 필터링하여 보여주는 프로그램이다. (option으로 필터링이 가능)

  • TCPDUMP 사용 옵션
        tcpdump [ -AbdDefhHIJKlLnNOpqStuUvxX# ] [ -B buffer_size ]
               [ -c count ]
               [ -C file_size ] [ -G rotate_seconds ] [ -F file ]
               [ -i interface ] [ -j tstamp_type ] [ -m module ] [ -M secret ]
               [ --number ] [ -Q in|out|inout ]
               [ -r file ] [ -V file ] [ -s snaplen ] [ -T type ] [ -w file ]
               [ -W filecount ]
               [ -E spi@ipaddr algo:secret,...  ]
               [ -y datalinktype ] [ -z postrotate-command ] [ -Z user ]
               [ --time-stamp-precision=tstamp_precision ]
               [ --immediate-mode ] [ --version ]
               [ expression ]


  https://linux.die.net/man/8/tcpdump

  • TCPDUMP 사용법 
tcpdump와 각 network interface 정의한 후 ssh server가 지원이 가능하다면, scp or sftp로 쉽게 가져오자

// Target Device
$ tcpdump -i eth0 -w data.pcap  // wireshark로 보기위해 저장 scp or sftp로 전송 
// Host Device 
$ scp or sftp로 data.pcap를 가져와서 wireshark로 분석 

상위에는 모든 Packet을 잡지만, Filter를 적용하여 원하는 packet만 capture 진행

  • Capture 시 필터 사용방법 
$ tcpdump -i eth0 port 80 -w data.pcap  // Filter 적용하여 저장 
$ tcpdump -i eth0 tcp port 8080   //  tcp port 8080만 필터 
$ tcpdump -i eth0 udp port 4433   //  udp port 4433만 필터 
$ tcpdump -i eth0 src port 1080   //  src port 1080만 필터  
$ tcpdump -i eth0 src 192.168.0.11 and dst 192.168.0.22     
$ tcpdump -i eth0 tcp          
$ tcpdump -i eth0 udp  

$ tcpdump -l | tee data.pcap  // 동일하게 data.pcap 저장  
$ tcpdump -l > dat & tail -f dat


  • Capture 된 Packet 분석 
$ tcpdum -r data.pcap  // 저장된 Packet 분석  
$ tcpdum -Xqnr data.pcap  // ASCII 값으로 분석 


  • 자세한 사용법
    http://wiki.pchero21.com/wiki/Tcpdump
    http://itnews.tistory.com/218
    https://www.tcpdump.org/manpages/tcpdump.1.html

  • How to build TCPDUMP on ARM  
    wireshark 처럼 libpcap은 필수 이며, tcpdump를 설치해야함
    http://dark2pee.tistory.com/entry/DM368-tcpdump-compile


1.1 SCP 사용방법 


  • Window 7/10  SCP Batch File 작성 Example

@ECHO OFF
TITLE WINDOW SCP EXAMPLE
ECHO ------------------------------------------------------------------------------------------------------
ECHO ---------------------------      Download         ---------------------------------------------------
ECHO ------------------------------------------------------------------------------------------------------
scp jhlee@192.168.1.10:/home/jhlee/test  .
PAUSE 

상위와 같이 Linux SSH Linux Server 로 접속하여 Window에서 가져오기
or
Window 의 경우  SSH Terminal Program SCP/SFTP를 지원을 해주는 프로그램사용
xshell,teraterm

  https://www.howtogeek.com/66776/how-to-remotely-copy-files-over-ssh-without-entering-your-password/


2. TCPDUMP의 Wireshark 분석

위 설명처럼 *.data를 download를 받아 wireshark를 이용하여 분석하자

아래의 링크예는 -s를 주어 packet의 양을 설정하는데, 귀찮아서 ctrl+c가 편함
   https://www.wireshark.org/docs/wsug_html_chunked/AppToolstcpdump.html


  •    linux에서 tcpdump로 잡은 dhcpd.cap 분석