tcpdump를 실행하면 패킷 내용이 해석되지 않습니다.

tcpdump를 실행하면 패킷 내용이 해석되지 않습니다.

tcpdump내용을 해석하지 않고 패킷의 16진수 덤프를 수행하려면 어떤 옵션을 사용해야 합니까 ? 레이어를 설명하기 위해 실행하거나 tcpdump -e -v -x유사한 시도를 시도하지만 원하지 않습니다.

내가 원하는 것 tshark:

% sudo tshark -xxx -i eth0
...

답변1

내가 찾을 수 있는 가장 가까운 두 가지 솔루션은 다음과 같습니다.

  1. 디코딩을 제거하기 위한 후처리입니다.

    tcpdump -nXX -i eth0 | sed $'s/^[^ \t].*//'
    

    형식이 조금 다르기 때문에 완벽하지는 않습니다.

    tshark
    0000  52 54 00 12 35 02 08 00 27 0f db b3 08 00 45 00   RT..5...'.....E.
    0010  00 54 2a 4d 40 00 40 01 e9 43 0a 00 02 0f 0a 0f   .T*M@[email protected]......
    0020  10 fb 08 00 ab 06 1e b5 00 01 00 3f ab 57 00 00   ...........?.W..
    
    tcpdump
    0x0000:  0008 9bbd ab8a 001d aadd cb68 0800 4500  ...........h..E.
    0x0010:  0028 3ec8 4000 7e06 a075 0a0a 0510 0a0f  .(>.@.~..u......
    0x0020:  046a cb6a 0016 7049 a307 5eaf 8afb 5010  .j.j..pI..^...P.
    
  2. 데이터 파일을 작성하고 이를 사용하여 tshark해석합니다(아마도 다른 시스템에서).

    tcpdump -w /tmp/capture.dat -i eth0
    tshark -r /tmp/capture.dat -xxx
    

    여기서는 tshark캡처 파일로 작업하고 있으므로 출력은 예상한 것과 정확히 같습니다. tshark필요한 경우 원격 실행과 같은 "불쾌한" 작업을 수행할 수 있습니다.

    ssh -zq remote_host tshark -r - -xxx < /tmp/capture.dat
    

답변2

AFAICT는 tshark -xxx아무 것도 생략하지 않고 한 줄 설명 아래에 패킷의 16진수 덤프를 추가합니다.

따라서 동일한 것을 원한다면 다음이 필요하다고 생각합니다.

tcpdump-xx

편집: 또는 tcpdump -XXtshark와 같은 ASCII 덤프를 원하는 경우

설명이 전혀 필요하지 않고 16진수 덤프만 원하는 경우 다음을 수행하세요.

tcpdump -w - | 16진수 덤프 |

EDIT2: 더 명확히 하고 roaima의 의견을 따르기 위해 위의 대답은 내가 찾을 수 있는 가장 가까운 tshark를 기반으로 하며 버전 1.8.10으로 밝혀지고 이 출력을 생성합니다( 각각에 동일한 패킷을 표시하는 -r대신 사용했습니다) -i예를 들어, 나는 그것이 중요하지 않다고 생각합니다):

$ tshark -r test.pcap
  1   0.000000 10.55.131.166 -> 10.48.37.151 TCP 78 58311 > https [SYN] Seq=0 Win=65535 Len=0 MSS=1260 WS=32 TSval=1072006161 TSecr=0 SACK_PERM=1

$ tshark -r test.pcap -xxx
  1   0.000000 10.55.131.166 -> 10.48.37.151 TCP 78 58311 > https [SYN] Seq=0 Win=65535 Len=0 MSS=1260 WS=32 TSval=1072006161 TSecr=0 SACK_PERM=1

0000  00 50 56 9e 18 78 00 07 4f 1c e8 00 08 00 45 00   .PV..x..O.....E.
0010  00 40 7b 8b 40 00 36 06 0b 89 0a 37 83 a6 0a 30   .@{[email protected]
0020  25 97 e3 c7 01 bb 77 13 bc 5e 00 00 00 00 b0 02   %.....w..^......
0030  ff ff 9d 35 00 00 02 04 04 ec 01 03 03 05 01 01   ...5............
0040  08 0a 3f e5 84 11 00 00 00 00 04 02 00 00         ..?...........

그런 다음 tcpdump에 대한 내 제안은 다음과 같습니다( -n추가하면 DNS 조회도 비활성화되므로 처음에는 차이점을 발견하지 못했습니다).

$ tcpdump -r test.pcap -XX -n
reading from file test.pcap, link-type EN10MB (Ethernet)
17:21:13.507110 IP 10.55.131.166.58311 > 10.48.37.151.https: Flags [S], seq 1997782110, win 65535, options [mss 1260,nop,wscale 5,nop,nop,TS val 1072006161 ecr 0,sackOK,eol], length 0
    0x0000:  0050 569e 1878 0007 4f1c e800 0800 4500  .PV..x..O.....E.
    0x0010:  0040 7b8b 4000 3606 0b89 0a37 83a6 0a30  .@{[email protected]
    0x0020:  2597 e3c7 01bb 7713 bc5e 0000 0000 b002  %.....w..^......
    0x0030:  ffff 9d35 0000 0204 04ec 0103 0305 0101  ...5............
    0x0040:  080a 3fe5 8411 0000 0000 0402 0000       ..?...........

관련 정보