Articles

Weberblog.net

jag arbetar för närvarande på ett nätverk & säkerhetsutbildning, modul ”OSI Layer 4 – Transport”. Därför gjorde jag en mycket grundläggande demo av en TCP-och UDP-anslutning för att se den vanliga ”SYN, SYN-ACK, ACK” för TCP medan ingen av dem för UDP, ”följ TCP/UDP Stream” i Wireshark, och så vidare. Jag ville visa att det inte är så komplicerat alls. Varje vanlig applikation / tjänst använder helt enkelt dessa dataströmmar för att överföra data aka byte mellan en klient och en server.

det är: Här är Linux-kommandona för basic lab, en nedladdningsbar pcap och, som alltid, några Wireshark-skärmdumpar:

TCP

lyssna med netcat på servern på port 1337:

1
netcat -6-l 1337

kontrollera lyssningsporten:

1
netstat-tulpen6

i mitt fall ser det ut som:

1
2
3
4
5
6
7
8
9
10
11

[email protected]:~ $ netstat-tulpen6
(inte alla processer kunde identifieras, icke-ägd processinformation
visas inte, du måste vara root för att se allt.)
aktiva Internetanslutningar (endast servrar)
Proto Recv-Q Send-Q Lokal adress utländsk adress Statlig användare Inode PID / programnamn
tcp6 0 0 :::22 :::* lyssna 0 21160 –
tcp6 0 0 :::1337 :::* lyssna 1000 1490116 20122 / netcat
udp6 0 0 fe80::d6be: d9ff: fe4:123 :::* 0 22715 –
udp6 0 0 2001: 470: 765b:: b15::123 :::* 0 22713 –
udp6 0 0 ::1:123 :::* 0 22711 –
udp6 0 0::: 123 :::* 0 22699 –

nu ansluter från klienten till servern med telnet:

1
telnet < ip> < port>

i mitt fall, tillsammans med några textmeddelanden i båda riktningarna:

1
2
3
4
5
6
7
8
9
10
11
12
13

[email protected]:~$ telnet 2001:470: 765b:: b15:22 1337
försöker 2001:470: 765b:: b15: 22…
ansluten till 2001:470: 765b:: b15: 22.
Escape-tecknet är’^]’.
Hej
Hej där
hälsningar från klienten till servern!
tack. Hälsningar tillbaka från servern till klienten.
skål
adjö
^]
telnet> avsluta
anslutning stängd.

Wireshark avslöjar TCP-flaggorna i Info-kolumnen för anslutning och uppsägning. Ta en titt på ACKs direkt efter varje skickat meddelande, oavsett vilken riktning. Slutligen visar en ”Följ TCP-ström” rådata, färgade av hur de överfördes:

grundläggande TCP i Wireshark.
följ TCP Stream visar rådata.

UDP

i princip samma sak med UDP. Lyssna på servern på port 2311:

1
netcat -6-l-u 2311

Proto typ” udp6 ” visas med netstat:

1
2
3
4
5
6
7
8
9
10
11

[email protected]:~ $ netstat-tulpen6
(inte alla processer kunde identifieras, icke-ägd processinformation
visas inte, du måste vara root för att se allt.)
aktiva Internetanslutningar (endast servrar)
Proto Recv-Q Send-Q Lokal adress utländsk adress Statlig användare Inode PID / programnamn
tcp6 0 0 :::22 :::* lyssna 0 21160 –
udp6 0 0 fe80:: d6be:d9ff: fe4:123 :::* 0 22715 –
udp6 0 0 2001: 470: 765b:: b15::123 :::* 0 22713 –
udp6 0 0 ::1:123 :::* 0 22711 –
udp6 0 0 :::123 :::* 0 22699 –
udp6 0 0::: 2311 :::* 1000 1490184 20131/netcat

anslutning från klienten, med netcat (och inte telnet, som inte kan UDP):

1
netcat-u<ip > <port>

nu min demo, igen med några textmeddelanden och umlauts:

1
2
3
4
5
6
7
8
9
10

[email protected]:~ $ netcat-u 2001: 470:765b:: b15: 22 2311
Hej över UDP
God eftermiddag också
Åh, du talar tyska
jag kan också
mycket trevligt. Även med umlauts.
😉
Japp. Ciao.
tsch-0498 >

^ C

Wiresharks glasögon. Ingen anslutning etablering eller uppsägning. Inga ACKs. Endast rådata i båda riktningarna. Ett enda UDP-paket per skickat textmeddelande. Ganska lätt. ”Följ UDP Stream” fungerar också:

grundläggande anslutningsfri UDP-dataström.
följ UDP-strömmen visar rådata.

pcap

Lämna ett svar

Din e-postadress kommer inte publiceras.