FastNetMon

Показаны сообщения с ярлыком tshark. Показать все сообщения
Показаны сообщения с ярлыком tshark. Показать все сообщения

вторник, 9 февраля 2016 г.

Фильтрация по номеру vlan в tshark - почему не работает?

Итак, Вы изучили все дебри фильтров Wireshark и смогли написать фильтр для отображения только трафика с тегом vlan.

Итак, он выглядит примерно так:

tshark -n -i eth4 -c 1000 -Y "vlan"
Но он упорно не работает, хотя Вы четко уверены - vlan трафика там куча!

Вот решение:

ethtool -K eth4 rxvlan off
Вот так вот :) 

Как отключить относительные номера seq для tshark/wireshark

Всем, кто занимается глубокой работой с TCP, уверен, знакома проблема, что tshark/wireshark вместо реальных номеров seq (длиннющих чисел) отображает относительные (начинающиеся с нуля при старте сессии).

Это далеко не всегда нужно, поэтому будем отключать!

Было вот так:
tshark -r ../raw_packets_data/ip_packet_with_telnet_to_22_port_with_dropbear_from_mac_os_el_capitan.pcap -V |grep Seq    Sequence number: 0    (relative sequence number)


Стало:
tshark -r ../raw_packets_data/ip_packet_with_telnet_to_22_port_with_dropbear_from_mac_os_el_capitan.pcap -V -o "tcp.relative_sequence_numbers: FALSE" |grep seq -iTransmission Control Protocol, Src Port: 52500 (52500), Dst Port: ssh (22), Seq: 1133079759, Len: 0    Sequence number: 1133079759
Как можно видеть, помог нам флаг:  -o "tcp.relative_sequence_numbers: FALSE"

пятница, 5 февраля 2016 г.

Запуск tshark без root привилегий

Почти каждый, кто пользовался tshark сталкивался со следующей штукой при запуске:
tshark: Lua: Error during loading:
 [string "/usr/share/wireshark/init.lua"]:46: dofile has been disabled due to running Wireshark as superuser. See http://wiki.wireshark.org/CaptureSetup/CapturePrivileges for help in running Wireshark as an unprivileged user.
Running as user "root" and group "root". This could be dangerous.
Почти всегда можно было обойтись без этой lua обвязки, но не тогда, когда Вам нужно сделать нечто поистине необычное с трафиком!

Но тут есть фишка, Wireshark (и tshark) используют отдельную программу для запуска захвата трафика и особые capabilities нужно навешивать не на /usr/bin/tshark, а на /usr/bin/dumpcap.

Итак, попробуем научить tshark работать не от root:
sudo groupadd wireshark
sudo usermod -a -G wireshark имя_вашего_юзера
# This command should be called without sudo!
newgrp wireshark
Выставляем заданные права на спец файл, используемый для запуск захвата трафика:
sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 750   /usr/bin/dumpcap
Наконец, выставляем полномочия для использования фичи захвата трафика:
sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap
Запускаемся:
tshark -i sflow1 -n  -c 1 Capturing on 'sflow1'  1   0.000000 xxx -> yyy TCP 64 34426 > 80 [ACK] Seq=1 Ack=1 Win=8712 Len=0