Работаем с tcpdump

Tcpdump считается базовым инструментом для всех, кто так или иначе работает с безопасностью компьютерных сетей. Считается, что умение работать с Tcpdump позволяет хорошо понять принципы работы стека протоколов TCP/IP на практике (в отличие от высокоуровневых снифферов, таких как Wireshark).

tcpdump

Для гибкого отбора нужно трафика, в Tcpdump используются комбинированные выражения. Механизм выражений делает Tcpdump мощным и гибким средством для “узнать что-то о трафике”.

Tcpdump-выражения разделяются на 3 вида – type, dir и proto. Есть также 3 типа опций фильтрации – по сети, порту и хосту. Из протоколов для отбора трафика по ним возможно указать tcp, icmp или udp.

Рассмотрим некоторые типичные кейсы использования Tcpdump.

Чтобы запустить Tcpdump, требуется обладать правами суперпользователя.

Посмотреть сетевую активность на всех адаптерах:

tcpdump -i any

Трафик по интерфейсу eth0:

tcpdump -i eth0

Весь входящий и исходящий трафик для IP-адреса (в нашем случае 244.199.168.192) можно изучить по команде:

tcpdump host 244.199.168.192

Следующая команда выводит содержимое в “сыром” виде – без разрешения адресов, в 16-ричном виде отображения данных пакетов:

tcpdump -nnvXSs 0 -c1 icmp

Можно отбирать трафик на основании адресов отправителя (1) или получателя (2):

tcpdump src 244.199.168.192
tcpdump dst 157.61.159.49

Tcpdump может “отловить” все пакеты в рамках одной подсети по ее маске, с помощью опции net (также доступны комбинации с использованием dst или src:

tcpdump net 244.199.168.0/24

Применяя опцию port, можно фильтровать трафик по номеру порта соответственно:

tcpdump port 3389

Чтобы увидеть пакеты определенного протокола (tcp, udp, icmp), применяется следующая команда:

tcpdump icmp

Так, можно отобрать пакеты, идущие по протоколу IPv6:

tcpdump ip6

либо по диапазону портов:

tcpdump portrange 21-23

Фильтр всех пакетов по размеру (меньше-больше-равно):

tcpdump less 32
tcpdump greater 64
tcpdump <= 128

Для анализа сторонними приложениями, либо отложенного изучения сетевой активность, сетевой трафик, отобранный tcpdump, может быть записан в файл формата PCAP:

tcpdump port 80 -w dump_file

Записанный таким образом файл с дампом трафика можно снова загрузить в tcpdump и применять все описанные выше выражения и правила для анализа пакетов, как если бы вместо файла был просто сетевой интерфейс:

tcpdump -r dump_file

Хотите уверенно освоить tcpdump и множество других инструментов для работы с сетями TCP/IP? Мы ждем вас на курсе “L2-Security. Безопасность в Linux“!

Залишити відповідь

Дякуємо, що поділились