‼️ Как запомнить все флаги TCP |

‼️ Как запомнить все флаги TCP

Мануал

Многие люди знакомы с понятием мнемоники [nəˈmɑnɪk] – устройства памяти, которое использует фразу, основанную на первой букве слов в серии.

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

Ну чтож, для тех, кто много работает с tcp / ip, я подумал, что может быть полезно иметь мнемонику для флагов TCP.

 

Я регулярно придумываю и использую:

Unskilled Attackers Pester Real Security Folks

  • Unskilled = URG
  • Attackers = ACK
  • Pester = PSH
  • Real = RST
  • Security = SYN
  • Folks = FIN

Польза

Информация о флаге TCP наиболее полезна для меня при поиске определенных типов трафика с использованием tcpdump.

Например, возможно перехватить только syns (новые запросы на подключение), только RST (немедленное завершение сеанса) или любую комбинацию из шести флагов.

Как отмечалось в моем маленьком учебнике tcpdump, вы можете запечатлеть эти различные флаги следующим образом:

Найти все пакеты SYN

tcpdump 'tcp[13] & 2 != 0'

Найти все пакеты RST

tcpdump 'tcp[13] & 4 != 0'

Найти все пакеты ACK

tcpdump 'tcp[13] & 16 != 0'

Обратите внимание, что в примере SYN есть номер 2, RST – номер 4, а ACK – номер 16.

Эти цифры соответствуют тому, где флаги TCP попадают в двоичную шкалу.

Итак, когда вы пишете:

U A P R S F

… это соответствует:

32 16 8 4 2 1

Пример

Таким образом, когда вы читаете SYN-захват tcpdump ‘tcp [13] & 2! = 0’, вы говорите, что нашли 13-й байт в заголовке TCP, и захватываете только те пакеты, у которых флаг во 2-м бите не равен нулю.

Хорошо, если вы идете справа налево в строке UAPRSF, вы увидите, что точка, где находится 2, – это та, где S, который является тем самым SYN, и поэтому вы применяете только пакеты SYN, когда применяете этот фильтр.

# tcpdump 'tcp[13] & 2 != 0'

12:40:04.649404 IP 10.5.1.42.51584 > 64.233.187.99.http: S1524039069:1524039069(0) win 65535

12:40:04.708459 IP 64.233.187.99.http > 10.5.1.42.51584: S1416742397:1416742397(0) ack 1524039070 win 8190

Вы заметите, что когда я подключаюсь к Google через порт 80 с другого терминала, tcpdump показывает только два из трех шагов, связанных с трехсторонним рукопожатием.

Он не показывал третий, потому что последний шаг – просто ACK с моей стороны, то есть не установлен флаг SYN.

Заключение

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

И, конечно, чем лучше вы сможете изолировать проблему, тем быстрее вы сможете ее решить.

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий