-1

У меня есть HTTP-захват ниже. Я пытаюсь научиться анализировать его вручную, используя протоколы и пакетную математику. И борюсь со следующими вопросами. Это не градуированный проект, просто то, что я рекомендую изучить.

  1. Какова длина заголовка TCP
  2. Какой начальный байт для заголовка TCP
  3. Какой конечный байт для заголовка TCP
  4. Сколько было разговоров по IPv4

    0x0000:  4500 0158 0505 4000 4006 18b1 c0a8 4b76
    0x0010:  174e f87d c0c6 0050 5fa4 6e6c 8b48 e7eb
    0x0020:  8018 001c 1d35 0000 0101 080a 5079 6b75
    0x0030:  26d4 b91a 4745 5420 2f6c 6962 7261 7279
    0x0040:  2f38 2e34 2f64 6170 6d73 6e2e 6a73 2048
    0x0050:  5454 502f 312e 310d 0a48 6f73 743a 2061
    0x0060:  6473 312e 6d73 6164 732e 6e65 740d 0a55
    0x0070:  7365 722d 4167 656e 743a 204d 6f7a 696c
    0x0080:  6c61 2f35 2e30 2028 5831 313b 204c 696e
    0x0090:  7578 2078 3836 5f36 343b 2072 763a 3338
    0x00a0:  2e30 2920 4765 636b 6f2f 3230 3130 3031
    0x00b0:  3031 2046 6972 6566 6f78 2f33 382e 3020
    0x00c0:  4963 6577 6561 7365 6c2f 3338 2e32 2e31
    0x00d0:  0d0a 4163 6365 7074 3a20 2a2f 2a0d 0a41
    0x00e0:  6363 6570 742d 4c61 6e67 7561 6765 3a20
    0x00f0:  656e 2d55 532c 656e 3b71 3d30 2e35 0d0a
    0x0100:  4163 6365 7074 2d45 6e63 6f64 696e 673a
    0x0110:  2067 7a69 702c 2064 6566 6c61 7465 0d0a
    0x0120:  5265 6665 7265 723a 2068 7474 703a 2f2f
    0x0130:  7777 772e 6d73 6e2e 636f 6d2f 0d0a 436f
    0x0140:  6e6e 6563 7469 6f6e 3a20 6b65 6570 2d61
    0x0150:  6c69 7665 0d0a 0d0a
    

1 ответ1

0

Это хорошее упражнение для понимания структуры различных протоколов. Чтобы получить максимальную отдачу от этого, вам нужно понимать форматы заголовков IP и TCP.

Сначала прочтите раздел 3.1 RFC 791 - https://tools.ietf.org/html/rfc791.

Во-вторых, прочитайте раздел 3.1 RFC 793 - https://tools.ietf.org/html/rfc793.

В-третьих, используйте то, что вы узнали на первых двух шагах, чтобы попытаться ответить на вопросы.

Наконец, сравните то, что вы узнали, с выводом ниже, который представляет собой разбивку различных заголовков.

4500:      IP Version(4 = IPv4), Header Length (5 = 20 bytes)  and DSCP/ECN
0158:      IP packet length (158 = 344 bytes)
0505:      IP Identification
4000:      IP Flags and Fragment Offset (40 = Do not fragment)
4006:      TTL (40 = 64) and encapsulated protocol version (6 = TCP)
18b1:      IP header checksum
C0a8 4b76: Src IP
174e f87d: Dst IP
C0c6:      Src Port (49350)
0050:      Dst Port (80)
5fa4 6e6c: Seq Number
8b48 e7eb: Ack Number
8018:      Header length (8 = 32) TCP Flags (18 = PSH-ACK)
001c:      TCP Win Size (28) <--don't know scale factor
1d35:      TCP checksum
0000:      Urgent Pointer
0101 080a 5079 6b75 26d4 b91a:  TCP Options 

      0101:    NOP, NOP
      08:      Option Kind (08 = Timestamp)
      0a:      Length of 10 bytes
      50796b75:Timestamp 
      26d4b91a:Timestamp echo reply

4745:      HTTP GET
0d0a:      Last CRLF indicates the end of the HTTP request

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .