친숙한 형식으로 pcap 파일을 어떻게 읽을 수 있습니까?


139

pcap 파일의 간단한 고양이는 끔찍한 것처럼 보입니다.

$cat tcp_dump.pcap

?ò????YVJ?
          JJ
            ?@@.?E<??@@
?CA??qe?U????иh?
.Ceh?YVJ??
          JJ
            ?@@.?E<??@@
CA??qe?U????еz?
.ChV?YVJ$?JJ
            ?@@.?E<-/@@A?CAͼ?9????F???A&?
.Ck??YVJgeJJ@@.?Ӣ#3E<@3{nͼ?9CA??P?ɝ?F???<K?
?ԛ`.Ck??YVJgeBB
               ?@@.?E4-0@@AFCAͼ?9????F?P?ʀ???
.Ck??ԛ`?YVJ?""@@.?Ӣ#3E?L@3?Iͼ?9CA??P?ʝ?F?????
?ԛ?.Ck?220-rly-da03.mx

기타

나는 그것을 더 예쁘게하려고 노력했다.

sudo tcpdump -ttttnnr tcp_dump.pcap
reading from file tcp_dump.pcap, link-type EN10MB (Ethernet)
2009-07-09 20:57:40.819734 IP 67.23.28.65.49237 > 216.239.113.101.25: S 2535121895:2535121895(0) win 5840 <mss 1460,sackOK,timestamp 776168808 0,nop,wscale 5>
2009-07-09 20:57:43.819905 IP 67.23.28.65.49237 > 216.239.113.101.25: S 2535121895:2535121895(0) win 5840 <mss 1460,sackOK,timestamp 776169558 0,nop,wscale 5>
2009-07-09 20:57:47.248100 IP 67.23.28.65.42385 > 205.188.159.57.25: S 2644526720:2644526720(0) win 5840 <mss 1460,sackOK,timestamp 776170415 0,nop,wscale 5>
2009-07-09 20:57:47.288103 IP 205.188.159.57.25 > 67.23.28.65.42385: S 1358829769:1358829769(0) ack 2644526721 win 5792 <mss 1460,sackOK,timestamp 4292123488 776170415,nop,wscale 2>
2009-07-09 20:57:47.288103 IP 67.23.28.65.42385 > 205.188.159.57.25: . ack 1 win 183 <nop,nop,timestamp 776170425 4292123488>
2009-07-09 20:57:47.368107 IP 205.188.159.57.25 > 67.23.28.65.42385: P 1:481(480) ack 1 win 1448 <nop,nop,timestamp 4292123568 776170425>
2009-07-09 20:57:47.368107 IP 67.23.28.65.42385 > 205.188.159.57.25: . ack 481 win 216 <nop,nop,timestamp 776170445 4292123568>
2009-07-09 20:57:47.368107 IP 67.23.28.65.42385 > 205.188.159.57.25: P 1:18(17) ack 481 win 216 <nop,nop,timestamp 776170445 4292123568>
2009-07-09 20:57:47.404109 IP 205.188.159.57.25 > 67.23.28.65.42385: . ack 18 win 1448 <nop,nop,timestamp 4292123606 776170445>
2009-07-09 20:57:47.404109 IP 205.188.159.57.25 > 67.23.28.65.42385: P 481:536(55) ack 18 win 1448 <nop,nop,timestamp 4292123606 776170445>
2009-07-09 20:57:47.404109 IP 67.23.28.65.42385 > 205.188.159.57.25: P 18:44(26) ack 536 win 216 <nop,nop,timestamp 776170454 4292123606>
2009-07-09 20:57:47.444112 IP 205.188.159.57.25 > 67.23.28.65.42385: P 536:581(45) ack 44 win 1448 <nop,nop,timestamp 4292123644 776170454>
2009-07-09 20:57:47.484114 IP 67.23.28.65.42385 > 205.188.159.57.25: . ack 581 win 216 <nop,nop,timestamp 776170474 4292123644>
2009-07-09 20:57:47.616121 IP 67.23.28.65.42385 > 205.188.159.57.25: P 44:50(6) ack 581 win 216 <nop,nop,timestamp 776170507 4292123644>
2009-07-09 20:57:47.652123 IP 205.188.159.57.25 > 67.23.28.65.42385: P 581:589(8) ack 50 win 1448 <nop,nop,timestamp 4292123855 776170507>
2009-07-09 20:57:47.652123 IP 67.23.28.65.42385 > 205.188.159.57.25: . ack 589 win 216 <nop,nop,timestamp 776170516 4292123855>
2009-07-09 20:57:47.652123 IP 67.23.28.65.42385 > 205.188.159.57.25: P 50:56(6) ack 589 win 216 <nop,nop,timestamp 776170516 4292123855>
2009-07-09 20:57:47.652123 IP 67.23.28.65.42385 > 205.188.159.57.25: F 56:56(0) ack 589 win 216 <nop,nop,timestamp 776170516 4292123855>
2009-07-09 20:57:47.668124 IP 67.23.28.65.49239 > 216.239.113.101.25: S 2642380481:2642380481(0) win 5840 <mss 1460,sackOK,timestamp 776170520 0,nop,wscale 5>
2009-07-09 20:57:47.692126 IP 205.188.159.57.25 > 67.23.28.65.42385: P 589:618(29) ack 57 win 1448 <nop,nop,timestamp 4292123893 776170516>
2009-07-09 20:57:47.692126 IP 67.23.28.65.42385 > 205.188.159.57.25: R 2644526777:2644526777(0) win 0
2009-07-09 20:57:47.692126 IP 205.188.159.57.25 > 67.23.28.65.42385: F 618:618(0) ack 57 win 1448 <nop,nop,timestamp 4292123893 776170516>
2009-07-09 20:57:47.692126 IP 67.23.28.65.42385 > 205.188.159.57.25: R 2644526777:2644526777(0) win 0

글쎄요 ... 훨씬 더 예쁘지 만 실제 메시지는 보여주지 않습니다. 실제로 RAW 파일을 보면서 더 많은 정보를 추출 할 수 있습니다. pcap 파일의 모든 내용을 보는 가장 좋은 방법은 무엇입니까?

최신 정보

아래 답변에 감사드립니다. 현재 모습은 다음과 같습니다.

tcpdump -qns 0 -A -r blah.pcap
    20:57:47.368107 IP 205.188.159.57.25 > 67.23.28.65.42385: tcp 480
        0x0000:  4500 0214 834c 4000 3306 f649 cdbc 9f39  E....L@.3..I...9
        0x0010:  4317 1c41 0019 a591 50fe 18ca 9da0 4681  C..A....P.....F.
        0x0020:  8018 05a8 848f 0000 0101 080a ffd4 9bb0  ................
        0x0030:  2e43 6bb9 3232 302d 726c 792d 6461 3033  .Ck.220-rly-da03
        0x0040:  2e6d 782e 616f 6c2e 636f 6d20 4553 4d54  .mx.aol.com.ESMT
        0x0050:  5020 6d61 696c 5f72 656c 6179 5f69 6e2d  P.mail_relay_in-
        0x0060:  6461 3033 2e34 3b20 5468 752c 2030 3920  da03.4;.Thu,.09.
        0x0070:  4a75 6c20 3230 3039 2031 363a 3537 3a34  Jul.2009.16:57:4
        0x0080:  3720 2d30 3430 300d 0a32 3230 2d41 6d65  7.-0400..220-Ame
        0x0090:  7269 6361 204f 6e6c 696e 6520 2841 4f4c  rica.Online.(AOL
        0x00a0:  2920 616e 6420 6974 7320 6166 6669 6c69  ).and.its.affili
        0x00b0:  6174 6564 2063 6f6d 7061 6e69 6573 2064  ated.companies.d

기타

이것은 좋아 보이지만 여전히 오른쪽의 실제 메시지를 읽기가 어렵습니다. 보다 친숙한 방식으로 해당 메시지를 볼 수있는 방법이 있습니까?

최신 정보

이것은 꽤 예뻤습니다 :

tcpick -C -yP -r tcp_dump.pcap

감사!


나는 '문자열'를 사용 PCAP 데이터에서 읽을 수있는 이메일 추출 할 수 있었다
Yaakov Kuperman을

답변:


131

Wireshark가 가장 좋을 수도 있지만 GUI를로드하지 않고 페이로드를보고 싶다면 -X 또는 -A 옵션을 사용할 수 있습니다

tcpdump -qns 0 -X -r serverfault_request.pcap

14:28:33.800865 IP 10.2.4.243.41997 > 69.59.196.212.80: tcp 1097
        0x0000:  4500 047d b9c4 4000 4006 63b2 0a02 04f3  E..}..@.@.c.....
        0x0010:  453b c4d4 a40d 0050 f0d4 4747 f847 3ad5  E;.....P..GG.G:.
        0x0020:  8018 f8e0 1d74 0000 0101 080a 0425 4e6d  .....t.......%Nm
        0x0030:  0382 68a1 4745 5420 2f71 7565 7374 696f  ..h.GET./questio
        0x0040:  6e73 2048 5454 502f 312e 310d 0a48 6f73  ns.HTTP/1.1..Hos
        0x0050:  743a 2073 6572 7665 7266 6175 6c74 2e63  t:.serverfault.c
        0x0060:  6f6d 0d0a 5573 6572 2d41 6765 6e74 3a20  om..User-Agent:.
        0x0070:  4d6f 7a69 6c6c 612f 352e 3020 2858 3131  Mozilla/5.0.(X11
        0x0080:  3b20 553b 204c 696e 7578 2069 3638 363b  ;.U;.Linux.i686;

tcpdump -qns 0 -A -r serverfault_request.pcap

14:29:33.256929 IP 10.2.4.243.41997 > 69.59.196.212.80: tcp 1097
E..}..@.@.c.
...E;...^M.P..^w.G.......t.....
.%.}..l.GET /questions HTTP/1.1
Host: serverfault.com

통계 읽기 및 가져 오기, 페이로드 추출 등을위한 다른 많은 도구가 있습니다. 데비안 패키지 저장소에서 libpcap에 의존하는 수를 간략하게 살펴보면 다양한 방법으로 캡처를 슬라이스, 주사위,보기 및 조작하는 데 사용할 수있는 50 개 이상의 도구 목록이 제공됩니다.

예를 들어.


4
공감. 혼란스러운 독서는 가능하지만 현장 시나리오에는 유용합니다. ngrep!
Dan Carley

당신이 제공 한 tcpdump 명령이 더 좋지만 여전히 원하는 것을 얻지 못합니다. 나는 그것을 반영하기 위해 내 질문을 업데이트했습니다. wireshark 설치가 작동하지 않아서 설치하지 않고 설치하고 싶지 않습니다. 지금까지 도와 주셔서 감사합니다. 다른 제안이 있으면 알려주세요.
Tony

3
좋아,이 명령은 tcpick으로하는 것처럼 보였습니다. 아마 "tcpick -C -yP -r tcp_dump.pcap"에 추가 한 사람들에게 도움이 될 것입니다
Tony

2
providercorga-다른 사람이 노력하지 않고 답변에 추가 할 수 있으며 포인트를 얻을 수도 있습니다. 그냥 말해.
Cawflands

알았어. 그는 훌륭한 답변을 한 이후 Zoredache에게 신용을주고 싶어했습니다
Tony

29

Wireshark .

당신은 결코 뒤돌아 볼 수 없습니다 :)

또한 원본 캡처의 스냅 샷이 캡처중인 트래픽의 MTU와 일치하거나이를 초과하는지 확인해야합니다. 그렇지 않으면 내용이 잘린 것으로 나타납니다.


또한 -w를 사용하여 이진 덤프를 수행하고 -s 200을 사용하여 패킷 스냅 샷을 연장 할 수 있습니다 (이름 서버 또는 nfs 패킷을보고있는 경우).
Adam Brand

Wireshark는 훌륭하지만 VM에서 제한 리소스로 작업 할 때는 이상적이지 않습니다.
사용자

22

GUI 응용 프로그램 인 wireshark 를 사용 하거나 CLI 대응 인 tshark 를 사용할 수 있습니다 .

또한 여러 시각화 도구를 사용하여 pcap을 시각화 할 수 있습니다.

  • tnv -Network Visualizer 또는 시간 기반 네트워크 Visualizer
  • 잔광 -그래프 생성 프로세스를 용이하게하는 스크립트 모음
  • INAV- 인터랙티브 네트워크 액티브 트래픽 시각화

pcap 파일을 분석하려면 excelent nsm-console을 사용할 수 있습니다 .

마지막으로 pcap을 pcapr.net에 업로드하여 볼 수 있습니다. pcapr.net은 트래픽 캡처를 분석하고 댓글을 달 수있는 일종의 소셜 웹 사이트입니다.


21

tshark -r file.pcap -V wireshark / gui없이 붙어 있으면 매우 유용합니다.



당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.