1. Tcpdump란?
tcpdump는 Lawrence Berkley Nation Lab의 Network Rearch Gruop에서 만든 것으로 네트워크의 패킷
을 출력해주는 프로그램이다. 주어진 조건식을 만족하는 네트워크 인터페이스를 거치는 패킷들의
헤더들을 출력해 주는 프로그램이다. 주로 쓰임은 지정된 상대방 호스트로부터 들어오는 패킷을 체크
하는 데 있다.
2. tcpdump의 사용법
(1) 사용법
tcpdump [options] [host]
(2) tcpdump의 결과보기
[root@www root]# tcpdump
01:37:09.744959 203.xxx.xxx.10.4847 > linux.co.kr.ftp: S 2082495566:2082495566(0) win
16384 (DF)
=> (결과설명)
01:37:09.744959 : Timestamp로 보통 '시간.특정한숫자값'형태로 부여된다.
203.xxx.xxx.10.4847 : Source_address.source_port로 소스의 IP주소와 Port번호를 나타낸
다.
> : Traffic direction으로 방향을 나타낸다.
linux.co.kr.ftp : destination_address.destination_port로 도착지 IP주소와 Port번호를
나타낸다.
S : TCP flag로 특정한 표시문자를 일컫는다.
2082495566:2082495566(0) : sequence number이다.
win 16384 : window size이다.
: various options 이다.
(DF) : Don't fragment
3. tcpdump 플래그(flags)
TCP 플래그 | TCPDUMP 플래그 | 플래그의 의미 |
SYN | S | SYN패킷, 접속요청을 할 때 보내는 패킷을 말한다.
TCP접속시에 가장먼저 보내는 패킷이다. |
ACK | ack | ACK패킷, 상대방으로부터 패킷을 받은 뒤에 알려주는
패킷을 말한다. 다른 플래그와 같이 출력되는 경우도
있다. |
FIN | F | 접속종료를 위한 플래그로 이 패킷을 보내는 곳이
현재 접속하고 있는 곳과 접속을 끊고자 할 때 사용한다. |
RESET | R | 이 패킷을 보내는 곳이 현재 접속하고 있는 곳과 즉시
연결을끊고자 할 때 사용한다. |
PUSH | P | 데이터를 즉시 목적지로 보내라는 의미이다. 텔넷과
같이 상호작용이 중요한 프로그램의 경우 빠른 응답
이 중요한다. 이때 사용하는 플래그이다. |
UGENT | URG | 긴급한 데이터는 다른 데이터에 비해 우선순위가
높아야 한다. 예를 들어 ftp로 자료를 받고 있는 도중
[CTRL]+[C] 를 받으면 즉시 자료받기를 중단해야 하는
것처럼 이 때 사용하는 플래그이다. |
Placeholder | . | 패킷이 SYN, FINISH, RESET, PUSH등의 플래그가 없는
경우이 플래그가 세팅된다. 이 플래그는 ACK플래그와
함께 사용되는 경우도 있다. |
4. tcpdump의 옵션
-h: 버전 및 기본 사용법을 보여준다.
-a : Network & Broadcast 주소들을 이름들로 바꾼다.
-c Number : 제시된 수의 패킷을 받은 후 종료한다.
-d : compile된 packet-matching code를 사람이 읽을 수 있도록 바꾸어 표준 출력으로 출력하고,
종료한다.
-dd : packet-matching code를 C program의 일부로 출력한다.
-ddd : packet-matching code를 숫자로 출력한다.
-e : 출력되는 각각의 행에 대해서 link-level 헤더를 출력한다.
-f : 외부의 internet address를 가급적 심볼이 아닌 숫자로 출력한다.(Sun의 yp server와의 사용은
가급적 피한다.)
-F file : filter 표현의 입력으로 파일을 받아들인다. 커맨드라인에 주어진 추가의 표현들은 모두
무시된다.
-i device : 어느 인터페이스를 경유하는 패킷들을 잡을지 지정한다. 지저되지 않으면 시스템의
인터페이스 리스트를 검색하여 가장 낮은 번호를 가진 인터페이스를 선택한다.(이 때
loopback은 제외된다.) 예) tcpdump -i eth0
-l : 표준 출력으로 나가는 데이터들을 line buffering한다. 다른 프로그램에서 tcpdump로부터 데이
터를 받고자 할 때 유용하다. 보통 'tcpdump -l | tee dat' 나 'tcpdump -l < dat & tail -f
dat' 명령으로 연계해서 사용하면 편리하다.
-n : 모든 주소들을 번역하지 않는다(port,host address 등등)
-N : 호스트 이름을 출력할 때, 도메인을 찍지 않는다.
-O : packet-matching code optimizer를 실행하지 않는다. 이 옵션은 optimizer에 있는 버그를 찾을
때나 쓰인다.
-p : 인터페이스를 promiscuous mode로 두지 않는다.
-q : 프로토콜에 대한 정보를 덜 출력한다. 따라서 출력되는 라인이 좀 더 짧아진다.
-r file : 패킷들을 '-w'옵션으로 만들어진 파일로 부터 읽어 들인다. 파일에 "-" 가 사용되면 표준
입력을 통해서 받아들인다.
-s length: 패킷들로부터 추출하는 샘플을 default값인 68Byte외의 값으로 설정할 때 사용한다.(Sun
OS의 NIT에서는 최소가 96Byte이다). 68Byte는 IP,ICMP, TCP, UDP등에 적절한 값이지만
Name Server나 NFS 패킷들의 경우에는 프로토콜의 정보들을 Truncation할 우려가 있다.
이 옵션을 수정할 때는 신중해야만 한다. 이유는 샘플 사이즈를 크게 잡으면 곧 패킷 하
나하나를 처리하는데 시간이 더 걸릴 뿐만아니라 패킷 버퍼의 사이즈도 자연히 작아지게
되어 손실되는 패킷들이 발생할 수 있기 때문이다. 또, 작게 잡으면 그만큼의 정보를 잃
게되는 것이다. 따라서 가급적 캡춰하고자 하는 프로토콜의 헤더 사이즈에 가깝게 잡아
주어야 한다.
-T type : 조건식에 의해 선택된 패킷들을 명시된 형식으로 표시한다. type에는 다음과 같은 것들이
올 수 있다. rpc(Remote Procedure Call), rtp(Real-Time Applications protocol), rtcp
(Real-Time Application control protocal), vat(Visual Audio Tool), wb(distributed
White Board)
-S : TCP sequence번호를 상대적인 번호가 아닌 절대적인 번호로 출력한다.
-t : 출력되는 각각의 라인에 시간을 출력하지 않는다.
-tt : 출력되는 각각의 라인에 형식이 없는 시간들을 출력한다.
-v : 좀 더 많은 정보들을 출력한다.
-vv : '-v'보다 좀 더 많은 정보들을 출력한다.
-vvv : 16진수값 형태로 정보를 보여준다. 보통 -X옵션과 사용되어
-w : 캡춰한 패킷들을 분석해서 출력하는 대신에 그대로 파일에 저장한다.
-x : 각각의 패킷을 헥사코드로 출력한다.
-X : 헥사코드와 ascii형태 모두 출력해준다. 보통 -x 옵션과 같이 사용된다.
-조건식(expression)
옵션의 제일 마지막인 조건식은 어떤 패킷들을 출력할 지를 선택하는 데 쓰인다. 조건식이 주어지지
않는다면 모든 패킷들이 대상이 된다. 조건식들은 하나 또는 여러 개의 primitive들로 구성되어 있고
primitive들은 다시 하나 또는 여러 개의 qualifier들 다음에 오는 하나의 값으로 이루어진다.
*qualifier
type : 주어진 값의 종류가 무엇인지를 나타낸다. 가능한 type들은 'host', 'net', 'port'가 있다.
type이 없는 값들은 type을 host라 가정한다.
dir : id로 부터의 어떤 특정한 전송 방향을 나타낸다. 가능한 방향은 'src', 'dst', 'src or
dst', 'src and dst'이다. 만약 방향이 정해지지 않았다면, src or dst라 가정한다. "For
`null' link layers (i.e. point to point protocols such as slip) the inb ound and out
bound qualifiers can be used to specify a desired direction."
proto : 매칭을 특정 프로토콜에 한해서 수행한다. 가능한 프로토콜들은 ether, fddi, ip, arp,
rarp, decnet, lat, sca, moprc, mopdl, tcp, udp이다. 만약 프로토콜이 명시되지 않았다
면, 해당하는 값의 type에 관련된 모든 프로토콜들이 그 대상이 된다.
*위의 패턴을 따르지 않는 primitive : gateway, broadcast, less, greater, 산술식이 있으며 참고
로 더 정교한 조건식을 사용하려면 'and(&&)','or(||)','not(!)'
을 사용할 수 있다.
*사용가능한 primitive들
dst host HOST
=> packet의 IP destination 항목이 HOST일때 참이 된다.
src host HOST
=> packet의 IP source 항목이 HOST일때 참이 된다.
host HOST
=> IP source, IP destination 항목 중 어느 하나라도 HOST이면 참이다.
ether dst ehost
=> ethernet destination 주소가 ehost일 때 참이다.
ether src ehost
=> ethernet source 주소가 ehost일 때 참이다.
ether host ehost
=> ethernet source, destination 항목들 중 어느 하나라도 ehost이면 참이다.
gateway host
=> 패킷이 host를 게이트웨이로 사용하면 참이다. 이 말의 의미는 ethernet sour ce나 destina
tion 항목은 host이지만, IP source와 destination은 host가 아닐 때를 말한다.
dst net NET
=> 패킷의 IP destination 주소가 NET의 network number를 가지고 있을 때 참이다.
src net NET
=> 패킷의 IP source 주소가 NET의 network number를 가지고 있을 때 참이다.
net NET
=> 패킷의 IP source 주소 혹은 destination 주소가 NET의 network number를 가 지고 있을 때
참이다.
net netmask mask
=> IP 어드레스가 지정된 netmask를 통해서 net과 매칭되면 참이다.
net net/len
=> IP 어드레스가 netmask와 len 비트만큼 매치되면 참이다.
dst port PORT
=> 패킷이 ip/tcp, ip/udp 프로토콜의 패킷이고 destination port의 값이 PORT일 때 참이다.
port는 /etc/services에 명시된 이름일 수도 있고 그냥 숫자일 수도 있다. 만약 이름이 사용
됐다면 port 번호와 프로토콜이 같이 체크될 것이다. 만약 숫자나 불 확실한 이름이 사용됐을
경우에는 port 번호만이 체크될 것이다.
src port PORT
=> 패킷의 source port의 값으로 PORT를 가지면 참이다.
port PORT
=> 패킷의 source, destination port 중에 하나라도 PORT이면 참이다.
less length
=> 패킷이 length보다 짧거나 같으면 참이다.(len <= length)
greater length
=> 패킷이 length보다 짧거나 같으면 참이다.(len >= length)
ip proto protocol
=> 패킷이 지정된 종류의 프로토콜의 ip패킷이면 참이다. Protocol은 icmp, igrp, udp, nd, tcp
중의 하나 혹은 몇 개가 될 수 있다. 주의할 점은 tcp, udp, icmp들은 '\'로 escape되어야
한다.
ehter broadcast
=> 패킷이 ethernet broadcast 패킷이라면 참이다. ehter는 생략 가능하다.
ip broadcast
=> 패킷이 IP broadcast 패킷이라면 참이다.
ether multicast
=> 패킷이 IP multicast 패킷이라면 참이다.
ether proto protocol
=> 패킷이 ether type의 protocol이라면 참이다. protocol은 ip, arp, rarp 중에 하나 혹은 몇
개가 될 수 있다. ip proto protocol에서와 마찬가지로 ip, arp, rarp는 escape 되어야 한다.
decnet src host
=> 만약 DECNET의 source address가 host이면 참이다. 이 어드레스는 '10.123'이 나 DECNET의
host name일 수 있다. DECNET host name은 DECNET에서 돌아가도록 설정된 Ultrix 시스템에서
만 사용 가능하다.
decnet dst host
=> DECNET destination address가 host이면 참이다.
decnet host HOST
=> DECNET source, destination address중의 하나라도 HOST이면 참이다.
ip, arp, rarp, decnet
=> ether proto [ip|arp|rarp|decnet]의 약어
lat, moprc, mopdl
=> ether proto [lat|moprc|mopdl]의 약어
tcp, udp, icmp
=> ip proto [tcp|udp|icmp]의 약어
expr relop expr
=> EXPR
proto [expr:size]의 형식을 띤다. proto, expr, size에 올 수 있는 것들은 다음과 같다.
proto : ether, fddi, ip, arp, rarp, tcp, udp, icmp
expr : indicate Byte offset of packet of proto
size : optional. indicate the size of bytes in field of interest
default is one, and can be two or four
=> RELOP
!=, =, <=, >=, etc.
이 조건식을 사용하기 위해서는 먼저 해당하는 Protocol(proto)의 헤더에 관련된 것들을 자세
히 알아야만 한다. proto에는 대상이 될 프로토콜을 지정한다. expr에는 프로토콜 헤더의 처음
부터의 Byte Offset을 지정하는 식이 들어가게 된다. Size는 Option이며 지정이 안 되어 있을
경우에는 자동으로 1byte를 지칭한다. 따라서 이 조건식을 사용하게 되면 헤더에 포함된 정보
를 Bitmask를 사용하여 직 접 원하는 패킷인지를 가려낼 수 있기 때문에, 보다 정밀한 사용이
가능하게 된다. 5. tcpdump 기본사용예
(1) [root@www root]# tcpdump
=> 현재 서버의 모든 패킷을 보여준다.
(2) [root@www root]# tcpdump port 21
tcpdump: listening on eth0
01:25:43.833276 203.xxx.xxx.100.4828 > xxx.com.ftp: S 1910472596:1910472596(0) win 16384 203.247.40.244.4828: S 4108025962:4108025962(0) ack 1910472597 )
=> 21번 포트로 들어온 패킷만 보여준다.
(3) [root@nanajjang /root]# tcpdump -c 2 host neuro.hannam.ac.kr
Kernel filter, protocol ALL, datagram packet socket
tcpdump: listening on all devices
11:09:44.576419 eth0 B arp who-has 203.247.40.247 tell neuro.hannam.ac.kr
11:09:44.576507 eth0 > arp reply 203.247.40.247 (0:c0:26:1:11:77) is-at 0:c0:26)
=> neuro.hannam.ac.kr의 패킷 2개만 보여준다.
(4) tcpdump -v -e broadcast
=> broadcast 의 정보를 자세히 출력하고 출력되는 각각의 행에 대해서 link-level헤더를 출력
한다.
6. tcpdump로 패스워드 알아내기
(1) 설명: telnet을 이용하여 서버에 접속을 하면 패킷전송시에 암호화하지 않기 때문에 쉽게 내용
을 볼 수 있다. tcpdump를 이용하여 패스워드를 알아낼 수 있다.
(2) 사용예
1) 실행명령
[root@www root]# tcpdump port telnet -l -vvv -x -X >dumpdata & tail -f dumpdata
2) 패킷분석: 패킷의 양이 많으므로 잘 찾아야 한다. 먼저 연결된 포트를 확인한다.
20:38:22.395281 xxx.com.telnet > 210.xxx.xxx.100.35383: P [tcp sum ok] 175:182(7) ack 81 win 5792 (DF) [tos 0x10] (ttl 64, id 59193, len 59)
0x0000 4510 003b e739 4000 4006 ca41 cbf7 28fc E..;.9@.@..A..(.
0x0010 d27b c1c2 0017 8a37 2992 16d8 2041 b972 .{.....7)....A.r
0x0020 8018 16a0 5fec 0000 0101 080a 04d1 f156 ...._..........V
0x0030 0223 7825 6c6f 6769 6e3a 20 .#x%login:.
=> 서버(xxx.com)에서 클라이언트(210.xxx.xxx.100에게 'login'이라는 것을 보여줌을 알 수
있다. 또한 연결된 클라이언트의 포트번호가 35383임을 알 수 있다. 이 포트번호를 확인해
야 패킷을 찾아갈 수 있다.
---중략---
20:38:23.979306 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 81:82(1) ack 182 win 5840 (DF) [tos 0x10] (ttl 56, id 49475, len 53)
0x0000 4510 0035 c143 4000 3806 f83d d27b c1c2 E..5.C@.8..=.{..
0x0010 cbf7 28fc 8a37 0017 2041 b972 2992 16df ..(..7...A.r)...
0x0020 8018 16d0 5130 0000 0101 080a 0223 78c3 ....Q0.......#x.
0x0030 04d1 f156 70 ...Vp
=> 클라이언트에서 서버로 전송하는 부분만을 확인하면 된다. P 다음에 존재하는 81:82와 ack
다음에 182라는 번호를 꼭 확인한다. 다음 패킷번호는 82:83이 되고 ack 183번이 되므로 ack
183이라는 부분을 찾아가면 된다. 여기서 클라이언트에서 서버로 전송한 글자는 맨 마지막에
표시된다. 즉 'p'이다.
---중략---
20:38:24.162490 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 82:83(1) ack 183 win 5840 (DF) [tos 0x10] (ttl 56, id 49477, len 53)
0x0000 4510 0035 c145 4000 3806 f83b d27b c1c2 E..5.E@.8..;.{..
0x0010 cbf7 28fc 8a37 0017 2041 b973 2992 16e0 ..(..7...A.s)...
0x0020 8018 16d0 4ef0 0000 0101 080a 0223 78d6 ....N........#x.
0x0030 04d1 f481 6f ....o
---중략---
20:38:24.322785 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 83:84(1) ack 184 win 5840 (DF) [tos 0x10] (ttl 56, id 49479, len 53)
0x0000 4510 0035 c147 4000 3806 f839 d27b c1c2 E..5.G@.8..9.{..
0x0010 cbf7 28fc 8a37 0017 2041 b974 2992 16e1 ..(..7...A.t)...
0x0020 8018 16d0 4a80 0000 0101 080a 0223 78e6 ....J........#x.
0x0030 04d1 f4df 73 ....s
---중략---
20:38:24.445142 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 84:85(1) ack 185 win 5840 (DF) [tos 0x10] (ttl 56, id 49481, len 53)
0x0000 4510 0035 c149 4000 3806 f837 d27b c1c2 E..5.I@.8..7.{..
0x0010 cbf7 28fc 8a37 0017 2041 b975 2992 16e2 ..(..7...A.u)...
0x0020 8018 16d0 5820 0000 0101 080a 0223 78f2 ....X........#x.
0x0030 04d1 f531 65 ...1e
---중략---
20:38:24.532360 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 85:86(1) ack 186 win 5840 (DF) [tos 0x10] (ttl 56, id 49483, len 53)
0x0000 4510 0035 c14b 4000 3806 f835 d27b c1c2 E..5.K@.8..5.{..
0x0010 cbf7 28fc 8a37 0017 2041 b976 2992 16e3 ..(..7...A.v)...
0x0020 8018 16d0 53d6 0000 0101 080a 0223 78fb ....S........#x.
0x0030 04d1 f570 69 ...pi
---중략---
20:38:24.624350 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 86:87(1) ack 187 win 5840 (DF) [tos 0x10] (ttl 56, id 49485, len 53)
0x0000 4510 0035 c14d 4000 3806 f833 d27b c1c2 E..5.M@.8..3.{..
0x0010 cbf7 28fc 8a37 0017 2041 b977 2992 16e4 ..(..7...A.w)...
0x0020 8018 16d0 4e9f 0000 0101 080a 0223 7904 ....N........#y.
0x0030 04d1 f59c 6e ....n
---중략---
=> posein이라는 글자를 알 수 있다. 즉 사용자 ID가 posein이다.
20:38:24.932380 xxx.com.telnet > 210.xxx.xxx.100.35383: P [tcp sum ok] 190:200(10) ack 89 win 5792 (DF) [tos 0x10] (ttl 64, id 59201, len 62)
0x0000 4510 003e e741 4000 4006 ca36 cbf7 28fc E..>.A@.@..6..(.
0x0010 d27b c1c2 0017 8a37 2992 16e7 2041 b97a .{.....7)....A.z
0x0020 8018 16a0 d40b 0000 0101 080a 04d1 f669 ...............i
0x0030 0223 7923 5061 7373 776f 7264 3a20 .#y#Password:.
=> 서버에서 클라이언트에서 Password라는 글을 보내어 출력시킨다.
---중략---
20:38:25.300524 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 89:90(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49490, len 53)
0x0000 4510 0035 c152 4000 3806 f82e d27b c1c2 E..5.R@.8....{..
0x0010 cbf7 28fc 8a37 0017 2041 b97a 2992 16f1 ..(..7...A.z)...
0x0020 8018 16d0 557f 0000 0101 080a 0223 7947 ....U........#yG
0x0030 04d1 f669 66 ...ip
---중략---
20:38:25.454778 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 90:91(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49491, len 53)
0x0000 4510 0035 c153 4000 3806 f82d d27b c1c2 E..5.S@.8..-.{..
0x0010 cbf7 28fc 8a37 0017 2041 b97b 2992 16f1 ..(..7...A.{)...
0x0020 8018 16d0 489e 0000 0101 080a 0223 7957 ....H........#yW
0x0030 04d1 f739 72 ...9a
---중략---
20:38:25.659340 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 91:92(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49492, len 53)
0x0000 4510 0035 c154 4000 3806 f82c d27b c1c2 E..5.T@.8..,.{..
0x0010 cbf7 28fc 8a37 0017 2041 b97c 2992 16f1 ..(..7...A.|)...
0x0020 8018 16d0 554e 0000 0101 080a 0223 796b ....UN.......#yk
0x0030 04d1 f774 65 ...ts
---중략---
20:38:25.777475 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 92:93(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49493, len 53)
0x0000 4510 0035 c155 4000 3806 f82b d27b c1c2 E..5.U@.8..+.{..
0x0010 cbf7 28fc 8a37 0017 2041 b97d 2992 16f1 ..(..7...A.})...
0x0020 8018 16d0 54d8 0000 0101 080a 0223 7977 ....T........#yw
0x0030 04d1 f7dd 65 ....s
---중략---
20:38:26.049208 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 93:94(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49494, len 53)
0x0000 4510 0035 c156 4000 3806 f82a d27b c1c2 E..5.V@.8..*.{..
0x0010 cbf7 28fc 8a37 0017 2041 b97e 2992 16f1 ..(..7...A.~)...
0x0020 8018 16d0 887f 0000 0101 080a 0223 7992 .............#y.
0x0030 04d1 f81a 31 ....w
---중략---
20:38:26.243634 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 94:95(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49495, len 53)
0x0000 4510 0035 c157 4000 3806 f829 d27b c1c2 E..5.W@.8..).{..
0x0010 cbf7 28fc 8a37 0017 2041 b97f 2992 16f1 ..(..7...A..)...
0x0020 8018 16d0 86df 0000 0101 080a 0223 79a6 .............#y.
0x0030 04d1 f8a5 32 ....o
---중략---
20:38:26.442302 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 95:96(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49496, len 53)
0x0000 4510 0035 c158 4000 3806 f828 d27b c1c2 E..5.X@.8..(.{..
0x0010 cbf7 28fc 8a37 0017 2041 b980 2992 16f1 ..(..7...A..)...
0x0020 8018 16d0 8768 0000 0101 080a 0223 79b9 .....h.......#y.
0x0030 04d1 f908 31 ....r
---중략---
20:38:26.540930 210.xxx.xxx.100.35383 > xxx.com.telnet: P [tcp sum ok] 96:97(1) ack 200 win 5840 (DF) [tos 0x10] (ttl 56, id 49497, len 53)
0x0000 4510 0035 c159 4000 3806 f827 d27b c1c2 E..5.Y@.8..'.{..
0x0010 cbf7 28fc 8a37 0017 2041 b981 2992 16f1 ..(..7...A..)...
0x0020 8018 16d0 80f7 0000 0101 080a 0223 79c3 .............#y.
0x0030 04d1 f96e 37 ...nd
---이하생략---
=> 패스워드가 password라는 것을 알 수 있다.출처 : http://twins.tomeii.com/entry/TCPDUMP-%EC%82%AC%EC%9A%A9%EB%B2%95%EB%B0%B1%EC%97%85