Articles

Weberblog.net

jeg arbejder i øjeblikket på et netværk & sikkerhedstræning, modul “OSI Layer 4 – Transport”. Derfor lavede jeg en meget grundlæggende demo af en TCP og UDP-forbindelse for at se den fælles “SYN, SYN-ACK, ACK” for TCP, mens ingen af dem for UDP, “Følg TCP/UDP Stream” i Trådbark, og så videre. Jeg ville vise, at det slet ikke er så kompliceret. Hver almindelig applikation / tjeneste bruger simpelthen disse datastrømme til at overføre data aka bytes mellem en klient og en server.

det er: Her er kommandoerne til basic lab, en PCAP, der kan hentes, og som altid nogle skærmbilleder:

TCP

lytter med netcat på serveren på porten 1337:

1
netcat -6-l 1337

kontrol af lytteporten:

1
netstat-tulpen6

i mit tilfælde ser det ud som:

1
2
3
4
5
6
7
8
9
10
11

~ $ netstat-tulpen6
(ikke alle processer kunne identificeres, ikke-ejet procesinfo
vises ikke, du skal være root for at se det hele.)
aktive internetforbindelser (kun servere)
Proto Recv-s Send-S Lokal adresse udenlandsk adresse stat bruger inode PID/Programnavn
tcp6 0 0 :::22 :::* lyt 0 21160 –
tcp6 0 0 :::1337 :::* lyt 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 forbinder fra klienten til serveren med telnet:

1
telnet < ip>< havn>

i mit tilfælde, sammen med nogle tekstbeskeder i begge retninger:

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

vi [email protected]:~ $ telnet 2001: 470: 765b:: b15:22 1337
forsøger 2001:470: 765B:: b15: 22…
forbundet til 2001:470:765b::b15:22.
Escape karakter er ‘^]’.
Hej
Hej der
hilsner fra klienten til serveren!
Tak. Hilsen tilbage fra serveren til klienten.
skål
farvel
^]
telnet> Afslut
tilslutning lukket.

TCP-flag vises i kolonnen Info for oprettelse og afslutning af forbindelse. Se på ACKs direkte efter hver sendt besked, uanset hvilken retning. Endelig viser en “Følg TCP-strøm” de rå data, farvet af den måde, de blev transmitteret på:

grundlæggende TCP i Trådbark.
Følg TCP Stream viser rådata.

UDP

stort set det samme med UDP. Lytte på serveren på port 2311:

1
netcat -6-l-u 2311

Proto typen “udp6” vises med netstat:

1
2
3
4
5
6
7
8
9
10
11

~ $ netstat-tulpen6
(ikke alle processer kunne identificeres, ikke-ejet procesinfo
vises ikke, du skal være root for at se det hele.)
aktive internetforbindelser (kun servere)
Proto Recv-s Send-S Lokal adresse udenlandsk adresse stat bruger inode PID/Programnavn
tcp6 0 0 :::22 :::* lyt 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

tilslutning fra klienten ved hjælp af netcat (og ikke telnet, som ikke er i stand til UDP):

1
netcat-u <ip> <havn>

nu min demo, igen med nogle tekstbeskeder og umlauts:

1
2
3
4
5
6
7
8
9
10

vi [email protected]:~$netcat – u 2001:470: 765b:: b15: 22 2311
Hej over UDP
God eftermiddag også
Åh, du taler Tysk
jeg kan også
meget flot. Selv med umlauts.
😉
Jep. Ciao.
tsch Lenst
^C

brillerne. Ingen forbindelse etablering eller opsigelse. Ingen ACKs. Kun de rå data i begge retninger. En enkelt UDP-pakke pr. Ganske let. “Følg UDP Stream” fungerer også:

grundlæggende forbindelsesløs UDP-datastrøm.
Følg UDP Stream viser rådata.

pcap

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.