Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| tcpdump [2019/08/18 19:35] – mirocow | tcpdump [2019/12/24 23:12] (текущий) – [tcpdump на unix socket] mirocow | ||
|---|---|---|---|
| Строка 3: | Строка 3: | ||
| ====== tcpdump ====== | ====== tcpdump ====== | ||
| - | ==== Анализ | + | ===== Анализ |
| - | <code bash> | + | * tcpdump |
| - | $ tcpdump -i eth0 -s0 -w resolv.pcap port 53 | + | * ssh root@HOST tcpdump -U -s0 -w - ' |
| - | </ | + | ==== Фильтры ==== |
| - | ==== Анализ трафика | + | ^ ^ ^ |
| + | | Фильтр | ||
| + | | host | Служит для указания имени хоста | ||
| + | | net | Указывает IP подсети и сети | ||
| + | | ip | Служит для указания адреса протокола | ||
| + | | src | Выводит пакеты, | ||
| + | | dst | Выводит пакеты, | ||
| + | | arp, udp, tcp | Фильтрация по одному из протоколов | ||
| + | | port, portrange | ||
| + | | and, or | Служит для объединения нескольких фильтров в команде | ||
| + | | less, greater | ||
| - | <code bash> | + | ==== Ключи ==== |
| - | $ tcpdump -An tcp port 80 | + | |
| - | </ | + | |
| - | ==== Анализ PHP-FPM на 9000 порту ==== | ||
| - | |||
| - | <code bash> | ||
| - | $ tcpdump -nAs 20000 -i lo tcp port 9000 | ||
| - | </ | ||
| * -i - Прослушиваемый интерфейс | * -i - Прослушиваемый интерфейс | ||
| Строка 46: | Строка 49: | ||
| * -Z - пользователь, | * -Z - пользователь, | ||
| - | ===== Анализ ===== | + | ===== Примеры |
| - | * tcpdump -n -i eth0 -l | tee resolv.pcap | + | === Анализ DNS трафика === |
| - | * затем Wireshark | + | |
| - | ==== Ссылки ==== | + | <code bash> |
| + | $ tcpdump -i eth0 -s0 -w resolv.pcap port 53 | ||
| + | </ | ||
| + | |||
| + | === Анализ трафика HTTP сервера === | ||
| + | |||
| + | <code bash> | ||
| + | $ tcpdump -An tcp port 80 | ||
| + | </ | ||
| + | |||
| + | === Анализ PHP-FPM на 9000 порту === | ||
| + | |||
| + | <code bash> | ||
| + | $ tcpdump -nAs 20000 -i lo tcp port 9000 | ||
| + | </ | ||
| + | |||
| + | === Анализирует траффик удаленно через SSH с помощью Wireshark === | ||
| + | |||
| + | <code bash>$ ssh root@HOST tcpdump -U -s0 -w - 'not port 22' | wireshark -k -i -</ | ||
| + | |||
| + | === UDP трафик с и на IP xxx.xxx.xxx.251 destined for port 5060: === | ||
| + | |||
| + | <code bash>$ tcpdump -nnvvS udp and host xxx.xxx.xxx.251 and dst port 5060</ | ||
| + | |||
| + | === Записать в файл mbill251 весь трафик с хоста xxx.xxx.xxx.251 за исключением трафика ssh === | ||
| + | |||
| + | <code bash>$ tcpdump -n -i eth0 host xxx.xxx.xxx.251 -vvv and not port 22 -w / | ||
| + | |||
| + | === Прослушать порт 5060 с ip xxx.xxx.xxx.251 === | ||
| + | |||
| + | <code bash> | ||
| + | $ tcpdump -i eth0 -n -s 0 port 5060 and host xxx.xxx.xxx.251 -vvv -w / | ||
| + | $ tcpdump -i eth0 -n -s 0 port 1720 and host xxx.xxx.xxx.251 -vvv -w / | ||
| + | </ | ||
| + | |||
| + | === H.323 сигналинг ловим с двух IP. В таком виде с двух IP отказалось снимать, | ||
| + | |||
| + | <code bash>$ tcpdump -i eth0 -n -s 0 port 1720 and host xxx.xxx.164.1 and host xxx.xxx.107.1 -vvv -w / | ||
| + | |||
| + | === перечислить доступные интерфейсы (которые можно прослушивать при помощи опции -i) === | ||
| + | |||
| + | <code bash>$ tcpdump -D</ | ||
| + | |||
| + | === посмотреть трафик одного хоста: === | ||
| + | |||
| + | <code bash>$ tcpdump host 1.2.3.4</ | ||
| + | |||
| + | === посмотреть трафик на порте: === | ||
| + | |||
| + | <code bash>$ tcpdump src port 80</ | ||
| + | |||
| + | === посмотреть IP трафик на хост: === | ||
| + | |||
| + | <code bash>$ tcpdump ip host 1.2.3.4</ | ||
| + | |||
| + | === посмотреть ARP трафик на хост: === | ||
| + | |||
| + | <code bash>$ tcpdump arp host 1.2.3.4</ | ||
| + | |||
| + | === посмотреть RARP трафик на хост: === | ||
| + | |||
| + | <code bash>$ tcpdump rarp host 1.2.3.4</ | ||
| + | |||
| + | === посмотреть трафик, | ||
| + | |||
| + | <code bash>$ tcpdump not host unixserver</ | ||
| + | |||
| + | ==== посмотреть трафик на server1 и server2 ==== | ||
| + | |||
| + | <code bash>$ tcpdump host server1 or host server2</ | ||
| + | |||
| + | === посмотреть содержимое пакетов на интерфейсе tun0 на хост ya.ru === | ||
| + | |||
| + | <code bash>$ tcpdump -X -i tun0 host ya.ru</ | ||
| + | |||
| + | === подсмотреть номера и пароли к icq === | ||
| + | |||
| + | <code bash>$ tcpdump -X -i fxp1 port aol</ | ||
| + | |||
| + | === посмотреть содержимое пакетов на интерфейсе tun0 на хост ya.ru === | ||
| + | |||
| + | посмотреть содержимое пакетов на интерфейсе tun0 на хост ya.ru, при этом прочитать из каждого пакета по 1500 байт и не преобразовывать IP в имя хоста | ||
| + | |||
| + | <code bash>$ tcpdump -X -s 1500 -n -i tun0 host ya.ru</ | ||
| + | |||
| + | === TCP traffic from 10.5.2.3 destined for port 3389: === | ||
| + | |||
| + | <code bash>$ tcpdump -nnvvS tcp and src 10.5.2.3 and dst port 3389</ | ||
| + | |||
| + | === Traffic originating from the 192.168 network headed for the 10 or 172.16 networks: === | ||
| + | |||
| + | <code bash>$ tcpdump -nvX src net 192.168.0.0/ | ||
| + | |||
| + | === Non-ICMP traffic destined for 192.168.0.2 from the 172.16 network: === | ||
| + | |||
| + | <code bash>$ tcpdump -nvvXSs 1514 dst 192.168.0.2 and src net 172.16.0.0/ | ||
| + | $ tcpdump -nvvvpi rl0 tcp and not port ssh and not port smtp</ | ||
| + | |||
| + | === tcpdump на unix socket === | ||
| + | |||
| + | nano ./ | ||
| + | < | ||
| + | fastcgi_pass unix:/ | ||
| + | </ | ||
| + | |||
| + | Запускаем снифер и смотрим вывод | ||
| + | <code bash> | ||
| + | $ socat -t100 -x -v UNIX-LISTEN:/ | ||
| + | </ | ||
| + | |||
| + | === Заголовок === | ||
| + | |||
| + | <code bash> | ||
| + | $ tcpdump -i eth1 tcp and host 10.27.13.14 and port 6973 -s0 -vv -X -c 1000 | ||
| + | </ | ||
| + | ===== Ссылки | ||
| * http:// | * http:// | ||
| * http:// | * http:// | ||
| * http:// | * http:// | ||
| - | * | + | * https:// |
| + | * [[https:// | ||