( tcpdump )
tcpdump -XXnve -i eth1 'arp [7]==2′ -s0 #odczytywanie danych wraz z nagłówkiem w postaci ASCI i HEX – opcja -XX,
których 8 bajt w nagłówku ARP będzie miał wartość 2(DEC) – liczone od 0 to 7,
czyli oznacza operację odpowiedzi na rozgłoszenie ARP
tcpdump -XXnve -i eth1 'tcp [13]==18′ -s 0 #odczytywanie danych j.w, których 14 bajt w nagłówku TCP będzie miał wartość
18(DEC) = 12 (HEX) = 00010010(BIN) czyli ustawione flagi SYN i ACK, bo
C|E|U|A|P|R|S|F gdzie litery oznaczaja poszczególne flagi w bitach kodu i tak
0 0 0 1 0 1 1 0 oznacza ustawienie flag ACK,RST,SYN czyli 22(DEC) i 16(HEX)
OPIS WYJŚCIA TCPDUMP
żądanie ARP wysłane na adres broadcast:
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
12:55:53.464953 00:c0:a8:fe:6f:f2 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: arp who-has 192.168.1.212 tell 192.168.1.24
0x0000: ffff ffff ffff 00c0 a8fe 6ff2 0806 0001 ……….o…..
0x0010: 0800 0604 0001 00c0 a8fe 6ff2 c0a8 0118 ……….o…..
0x0020: 0000 0000 0000 c0a8 01d4 0000 0000 0000 …………….
0x0030: 0000 0000 0000 0000 0000 0000 …………
Opis będzie w następującym porządku:
1w/8k/1-4 oznacza 1 wiersz/8 kolumnę/pozycję od 1 do 4:
1w/1k/1-…1w/3k/-4 MAC przeznaczenia
1w/4k/1-…1w/6k/-4 MAC żródłowy
1w/7k/1-4 typ ramki: 0806 – ARP; 0800 – IP; 8035 – reverse ARP; 8137 – IPX
————————START protokołu IP———————————————-
1w/8k/1-4 typ adresu sprzętowago: 0001 – Ethernet
2w/1k/1-4 typ adresu protokołowego: 0800 – IP
2w/2k/1-2 długość adresu sprzętowego w Bajtach
2e/2k/3-4 długość adresu protokołowego w Bajtach
2w/3k/1-4 operacja: 0001 – pytanie; 0002 – odpowiedź
2w/4k/1-…2w/6k/-4 MAC nadawcy
2w/7k/1-…2w/8k/-4 IP nadawcy
3w/1k/1-…3w/3k/-4 MAC odbiorcy
3w/4k/1-…3w/5k/-4 IP odbiorcy
wysłanie 1 pakietu TCP z ustawionymi flagami SYN,ACK,RST i danymi „ABC” czyli w ilości 3 bajtów z pliku „wy” za pomocą hping3:
hping3 192.168.1.253 -S -A -R -E wy -d 3 -c 1
otrzymujemy:
ROUTER:/# tcpdump -XXnve -i eth1 'tcp [13]==22′ -s0 and host 192.168.1.4
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
13:30:10.508842 00:0c:76:e7:f1:d3 > 00:30:4f:23:b8:4e, ethertype IPv4 (0x0800), length 60: IP (tos 0x0, ttl 64,
id 57585, offset 0, flags [none], length: 43) 192.168.1.4.2029 > 192.168.1.253.0: SR [tcp sum ok] 1842019365:1842019368(3)
ack 2138831316 win 512 [RST ABC]
0x0000: 0030 4f23 b84e 000c 76e7 f1d3 0800 4500 .0O#.N..v…..E.
0x0010: 002b e0f1 0000 4006 158a c0a8 0104 c0a8 .+….@………
0x0020: 01fd 07ed 0000 6dca fc25 7f7b f9d4 5016 ……m..%.{..P.
0x0030: 0200 ba09 0000 4142 4300 0000 ……ABC…
—————————————————————————————-
1w/1k/1-…1w/3k/-4 MAC przeznaczenia
1w/4k/1-…1w/6k/-4 MAC żródłowy
1w/7k/1-4 typ ramki: 0806 – ARP; 0800 – IP; 8035 – reverse ARP; 8137 – IPX
————————START protokołu IP———————————————-
1w/8k/1 wersja protokołu
1w/8k/2 długość nagłówka w Bajtach
1w/8k/3-4 typ obsługi TOS
2w/1k/1-4 długość całkowita nagłówek + dane
2w/2k/1-4 ID datagramu
2w/3k/1 znacznik fragmentacji
2w/3k/2-4 przesunięcie
2w/4k/1-2 pole TTL
2w/4k/3-4 typ protokołu: 06 – TCP; 17 – UDP; 01 – ICMP
2w/5k/1-4 suma kontrolna nagłówka
2w/6k/1-…2w/7k/-4 IP nadawcy
2w/8k/1-…3w/1k/-4 IP odbiorcy
————————START protokołu TCP———————————————
3w/2k/1-4 port źródłowy
3w/3k/1-4 port przeznaczenia
3w/4k/1-…3w/5k/-4 nr porządkowy danych wy
3w/6k/1-…3w/7k/-4 nr porządkowy danych we
3w/8k/1-2 długość nagłówka
3w/8k/3-4 bity kodu: 02 – SYN; 12 – SYN,ACK; 16 – SYN,ACK,RST
4w/1k/1-4 okno dla danych we
4w/2k/1-4 suma kontrolna nagłówka
4w/3k/1-4 wskażnik pilnych danych
————————START danych—————————————————-
4w/4k/1- dane 41,42,43 w ASCI oznaczają tyle co ABC