Sieci komputerowe
Ćwiczenia 27.04.-11.05.2013
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
1
Ćwiczenia 27.04.-11.05.2013
Zakres Ćwiczeń
•
Narzędzia
diagnostyczne
do
testowania
połączeń
i
usuwania
problemów
związanych
z
protokołem
TCP/IP
w
systemie
Microsoft
Windows.
•
Badanie pakietów warstwy fizycznej i sieciowej.
Oprogramowanie do monitorowania ruchu w sieci WhireShark zasady
działania programu. Nasłuch pakietów warstwy fizycznej, stosowanie
filtrów wyświetlania.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
2
filtrów wyświetlania.
Nasłuch pakietów warstwy sieciowej ARP, IP, ICMP, omówienie budowy
pakietów protokołów sieciowych.
Spis treści
1.
ICMP
2.
IPConfig
3.
Protokół ARP
4.
ARP- wiersz poleceń
5.
Wykorzystanie ARP w sieci LAN
6.
Wykorzystanie ARP w sieci rozległej
7.
ARP a bezpieczeństwo w sieci
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
3
8.
Wykorzystanie Whire Shark do przechwytywania i analizy protokołu ARP
9.
Zapobieganie atakom ARP w sieci
10.
Obliczanie sumy kontrolnej nagłówka protokołu IP
1.ICMP
ICMP (Internet Control Message Protocol, internetowy protokół komunikatów
kontrolnych) – opisany w RFC 792 protokół warstwy sieciowej OSI/TCP/IP
wykorzystywany
w
diagnostyce
sieci oraz
trasowaniu. Pełni przede
wszystkim funkcję kontroli transmisji w sieci.
Jest wykorzystywany w programach ping oraz traceroute/tracert.
Komunikat ICMP (protokół) jest umieszczany (enkapsulowany) wewnątrz
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
4
Komunikat ICMP (protokół) jest umieszczany (enkapsulowany) wewnątrz
protokołu IP. MTU IP- 65535 bajtów (oktetów).
Pakiet (datagram ) zawierający komunikat ICMP.
Nagłówek protokołu IP
20 bajtów
IP
Komunikat
t
ICMP
P
1.ICMP
Nagłowek
ICMP
Dane ICMP
Dane IP
Nagłówek IP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
5
Nagłówek Eth.
Dane Ethernet
1.ICMP
Pakiet ICMP ECHO- żądanie
TYP (8)
KOD (0)
Suma kontrolna
Nagłówek ICMP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
6
Suma kontrolna
Identyfikator
Dane-opcja
Numer sekwencji
Nagłówek ICMP
1.ICMP
Przykład analizy protokołu ICMP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
7
Podstawowe (pierwsze) okno analizatora
1.ICMP
Pakiet
numer 1
Adres IP
nadawcy
Adres IP
Typ
Rodzaj
informacji
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
8
numer 1
nadawcy
odbiorcy
Typ
protokołu
informacji
Zapytanie/
odpowiedź
1.ICMP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
9
Drugie okno analizatora
Zawarto
ść
ramki Ethernet-
protokoły
Trzecie okno analizatora
Kod zawarty w ramce Ethernet
1.ICMP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
10
Rozwiniecie Ramki 1 (Frame 1)
Data i godzina przechwycenia ramki
Czas od przechwycenia poprzedniej ramki
Czas od przechwycenia pierwszej ramki
Numer ramki
Długo
ść
pakietu (bajty)
Ilo
ść
przechwyconych bajtów
Typy protokołów umieszczonych w ramce (enkapsulacja)
1.ICMP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
11
Zawarto
ść
ramki Ethernet II
Adres MAC docelowy
Adres MAC
ź
ródłowy
Rodzaj protokołu zawartego w ramce
1.ICMP
Zawarto
ść
datagramu IP
Wersja protokołu
Długo
ść
nagłówka
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
12
Długo
ść
nagłówka
Usługi
Długo
ść
datagramu
Identyfikator
Flagi
Przesuni
ę
cie fragmentu
Czas
ż
ycia TTL
Protokół
Suma kontrolna
Adres
ź
ródłowy
Adres docelowy
1.ICMP
W pierwszych wersjach protokołu IP jeden z bajtów nagłówka był
przeznaczony
do
nadawania
pakietom
priorytetów
(znacznik
priorytetu) oraz zawierał pola flag, które pozwalały na ustawianie
warto
ś
ci: opó
ź
nienia, przepustowo
ś
ci i niezawodno
ś
ci. Bajt ten nosił
nazw
ę
: ToS – Type of service – Rodzaj usług. Znacznik priorytetu o
warto
ś
ci 0 oznaczał niski priorytet, podczas gdy warto
ść
7
warto
ś
ci 0 oznaczał niski priorytet, podczas gdy warto
ść
7
oznaczała
maksymalnie
wysoki.
Pomimo
umieszczenia
w
konstrukcji
nagłówka
protokołu
IP
formalnych
narz
ę
dzi
do
wspomagania QoS, nie znalazły one zbyt wielkiego praktycznego
zastosowania ze wzgl
ę
du na brak odpowiednich implementacji w
rzeczywistej strukturze sieci. Ustawienie parametrów QoS w bajcie
ToS było
cz
ę
sto ignorowane przez urz
ą
dzenia lub po prostu nie
przynosiło
ż
adnych widocznych efektów.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
13
1.ICMP
Opracowano i wprowadzono do nagłówka protokołu IP pole DiffServ
(Differentiated Services- zró
ż
nicowane usługi), które zast
ą
piło
wcze
ś
niej u
ż
ywane pole ToS (dokument RFC 2474).Tym razem
zastosowano odmienne podej
ś
cie. Zasi
ę
g działania polecenia
ograniczono do jednej domeny/ obszaru administrowanego przez
jednego ISP. Zało
ż
eniem było uzyskanie odpowiedniej jako
ś
ci usług
jednego ISP. Zało
ż
eniem było uzyskanie odpowiedniej jako
ś
ci usług
na zako
ń
czeniu domeny. Rozwi
ą
zanie oparte o DiffServ było bardzo
proste i nie powodowało dodatkowego obci
ąż
enia serwerów na
ś
cie
ż
ce transmisji pakietów. W ramach jednej domeny mo
ż
na było
oczekiwa
ć
skutecznej
administracji,
a
negocjacja
warunków
transmisji miała si
ę
odbywa
ć
jedynie na granicy danej domeny z
kolejna domen
ą
. W ramach jednej domeny administrator mo
ż
e
zarz
ą
dza
ć
procesem agregacji pakietów, agreguj
ą
c pakiety o
podobnych wymaganiach dotycz
ą
cych jako
ś
ci transmisji.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
14
Architektura usługi DifferServ
Ź
ródło: BRIAN E. CARPENTER AND KATHLEEN NICHOLS, Differentiated Services in the Internet,
PROCEEDINGS OF THE IEEE, VOL. 90, NO. 9, SEPTEMBER 2002
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
15
Dawne pole ToS w nagłówku IP zostało zast
ą
pione przez
pole DS, nazywane równie
ż
polem DSCP (DifferServ
CodePoint).
1.ICMP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
16
Bity DSCP informuj
ą
router o sposobie, w
jaki ma by
ć
traktowany
pakiet. Zarezerwowanie 6 bitów do realizacji QoS pozwala
teoretycznie na uzyskanie 64 ró
ż
nych poziomów /sposobów/opisów
traktowania bitów. W praktyce cz
ęść
kodu jest przeznaczona do
celów
informacyjnych.
Informacja
dotycz
ą
ca
QoS
mo
ż
e
by
ć
zapisana z poziomu aplikacji w momencie generowania pakietu lub
1.ICMP
zapisana z poziomu aplikacji w momencie generowania pakietu lub
przez router (pierwszy router odbieraj
ą
cy pakiety b
ą
d
ź
router na
granicy
domeny
u
ż
ytkownika/ISP).
Teoretycznie
mo
ż
na
do
uzgodnie
ń
wykorzysta
ć
protokoły
IntServ
i
RSVP
i
je
ż
eli
uzgodnienia
zamykaj
ą
si
ę
w
obszarze
spójnej
administracji,
rozwi
ą
zanie to mo
ż
e by
ć
skuteczne.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
17
W
ramach
prac
nad
DifferServ
zdefiniowano
kilka
sposobów
traktowania pakietów m.in.:
•
DSCP=000 000, pakiety s
ą
transmitowane w tradycyjny sposób,
•
DSCP przyjmuje warto
ś
ci od 001 000 do 111 000, okre
ś
laj
ą
c 7
poziomów klas transmisji,
•
DSCP= 101 110, oznacza EF ( expedited forwarding), zapewnienie
1.ICMP
•
DSCP= 101 110, oznacza EF ( expedited forwarding), zapewnienie
wła
ś
ciwej jako
ś
ci dla serwisów pracuj
ą
cych w czasie rzeczywistym,
•
AF
(assured
forwarding)
ograniczenie
mo
ż
liwo
ś
ci
odrzucenia
pakietu przez router.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
18
IETF zrealizowało tak
ż
e szereg projektów uzupełniaj
ą
cych DifferServ
m.in.:
•
opracowanie definicji ró
ż
nych rodzajów transmisji,
•
opracowanie modelu routera wykorzystuj
ą
cego DifferServ,
•
metody zarz
ą
dzania informacjami na poziomie routera,
1.ICMP
•
sposób wykorzystania DifferServ w transmisjach kodowanych i
niekodowanych,
•
definicje dla standardu IPv4 i IPv6.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
19
1.ICMP
Rozwini
ę
cia pól Flagi i Usługi
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
20
Rozwini
ę
cia pól Flagi i Usługi
1.ICMP
Zawarto
ść
pakietu ICMP
Typ operacji
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
21
Typ operacji
Kod
Suma kontrolna
Identyfikator
Numer sekwencji
Ilo
ść
danych
1.ICMP
ICMP Smurf to najpopularniejsza forma ataku DDoS (
Distributed Denial of
Service )
, cechująca się dużą skutecznością. Najczęściej wykorzystywanym
typem DDoS jest ICMP Smurf. Schemat jego działania jest dość prosty.
Atakujący ze zmienionym adresem źródłowym (patrz ramka "Spoofing")
wysyła do określonych komputerów (najczęściej wchodzących w skład
jego ddosnetu) pakiet ICMP Echo request (szerzej znany pod nazwą ping),
a komputery odpowiadają pakietem ICMP echo reply wysłanym pod adres
IP, który tego zażądał.
IP, który tego zażądał.
Do wzmocnienia ataku wykorzystuje się sieci LAN z włączoną opcją directed
broadcast - odpowiedź na ICMP Echo Request wysyłana jest z każdego
komputera wchodzącego w ich skład (np. na jedno żądanie przychodzi 50
odpowiedzi).
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
22
2. IPConfig
Narzędzia i usługi protokołu
TCP/IP
•
Arp
•
Nslookup
•
Finger
•
Ping
•
Ftp
•
Ipconfig
•
Route
•
Lpq
•
Rsh
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
23
•
Ftp
•
Rcp
•
Hostname
•
Rexec
•
Netsh
•
Lpr
•
Tftp
•
Nbtstat
•
Tracert
•
Netstat
2. IPConfig
Polecenie ipconfig
•
Wyświetla wszystkie bieżące wartości konfiguracji sieci protokołu TCP/IP
oraz
odświeża
ustawienia
protokołu
dynamicznej
konfiguracji
hosta
(DHCP, Dynamic Host Configuration Protocol) i systemu DNS (Domain
Name System).
Polecenie ipconfig użyte bez parametrów wyświetla
•
adres IP,
• maskę podsieci i
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
24
• maskę podsieci i
• domyślną bramę
wszystkich kart.
Składnia
•
ipconfig [/all] [/renew [karta]] [/release [karta]] [/flushdns]
[/displaydns] [/registerdns] [/showclassid karta] [/setclassid karta
[identyfikator_klasy]]
2. IPConfig
• /all
– Wyświetla
pełną
konfigurację
protokołu
TCP/IP
dla
wszystkich kart.
– Karty mogą reprezentować interfejsy fizyczne, takie jak
zainstalowane karty sieciowe lub interfejsy logiczne, na
przykład połączenia telefoniczne.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
25
2. IPConfig
Parametry
•
/renew [karta]
– Odnawia konfigurację protokołu DHCP dla wszystkich kart (jeżeli nie
określono karty) lub dla określonej karty, jeżeli dołączono parametr
karta. Ten parametr jest dostępny tylko na komputerach, których
karty skonfigurowano do automatycznego pozyskiwania adresów IP.
Aby określić nazwę karty, należy wpisać nazwę, która pojawia się po
użyciu polecenia ipconfig bez parametrów.
•
/release [karta]
– Wysyła komunikat DHCPRELEASE do serwera DHCP, aby zwolnić
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
26
– Wysyła komunikat DHCPRELEASE do serwera DHCP, aby zwolnić
bieżącą konfigurację protokołu DHCP i odrzucić konfigurację adresów
IP dla wszystkich kart (jeżeli nie określono karty) lub dla określonej
karty, jeżeli dołączono parametr karta. Ten parametr wyłącza obsługę
protokołu
TCP/IP
dla
wszystkich
kart
skonfigurowanych
do
automatycznego pozyskiwania adresów IP. Aby określić nazwę karty,
należy wpisać nazwę, która pojawia się po użyciu polecenia ipconfig
bez parametrów.
2. IPConfig
•
/flushdns
– Opróżnia
i
resetuje
zawartość
pamięci
podręcznej
programu
rozpoznawania nazw klientów DNS. Podczas rozwiązywania problemów
z
systemem
DNS
można
używać
tej
procedury
do
odrzucania
negatywnych wpisów z pamięci podręcznej oraz innych wpisów, które
zostały dodane dynamicznie
/displaydns
– Wyświetla zawartość pamięci podręcznej programu rozpoznawania
nazw klientów DNS, w której znajdują się zarówno wpisy wstępnie
załadowane z lokalnego pliku Hosts, jak i ostatnio uzyskane rekordy
zasobów dla kwerend nazw rozpoznawanych przez komputer. Usługa
Klient DNS używa tych informacji do szybkiego rozpoznawania często
poszukiwanych
nazw
przed
wykonaniem
kwerendy
na
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
27
poszukiwanych
nazw
przed
wykonaniem
kwerendy
na
skonfigurowanych serwerach DNS.
•
/registerdns
– Inicjuje ręczną dynamiczną rejestrację nazw DNS i adresów IP
skonfigurowanych na komputerze. Tego parametru można używać do
rozwiązywania problemów z nieudaną rejestracją nazw DNS lub
dotyczących dynamicznej aktualizacji między klientem i serwerem DNS
bez ponownego rozruchu komputera klienckiego. Ustawienia systemu
DNS w zaawansowanych właściwościach protokołu TCP/IP określają,
które nazwy są rejestrowane w systemie DNS.
2. IPConfig
•
/showclassid karta
– Wyświetla identyfikator klasy DHCP określonej karty. Aby obejrzeć
identyfikator klasy DHCP wszystkich kart, należy użyć gwiazdki (*)
jako symbolu wieloznacznego zamiast parametru karta. Ten parametr
jest dostępny tylko na komputerach, których karty skonfigurowano do
automatycznego pozyskiwania adresów IP.
•
/setclassid karta [identyfikator_klasy]
– Konfiguruje identyfikator klasy DHCP określonej karty. Aby ustawić
identyfikator klasy DHCP wszystkich kart, należy użyć gwiazdki (*)
jako symbolu wieloznacznego zamiast parametru karta. Ten parametr
jest dostępny tylko na komputerach, których karty skonfigurowano do
automatycznego
pozyskiwania
adresów
IP.
Jeżeli
nie
określono
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
28
automatycznego
pozyskiwania
adresów
IP.
Jeżeli
nie
określono
identyfikatora klasy DHCP, bieżący identyfikator klasy jest usuwany.
2. IPConfig
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
29
2. IPConfig
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
30
2. IPConfig
Ć
wiczenie 1
Dla uzyskania podstawowej konfiguracji protokołu TCP/IP wszystkich kart, nale
ż
y wpisa
ć
:
ipconfig
Ć
wiczenie 2
Dla uzyskania pełnej konfiguracji protokołu TCP/IP wszystkich kart, nale
ż
y wpisa
ć
:
ipconfig /all
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
31
Ć
wiczenie 3
ipconfig /
displaydns
Wyświetla zawartość pamięci podręcznej programu rozpoznawania nazw klientów
DNS, w której znajdują się zarówno wpisy wstępnie załadowane z lokalnego pliku
Hosts,
jak
i
ostatnio
uzyskane
rekordy
zasobów
dla
kwerend
nazw
rozpoznawanych przez komputer.
ipconfig/flushdns
Kasowanie tablicy podręcznej.
3. Protokół ARP
ARP (
Address
Resolution Protocol)
-
jest
to protokół
wykorzystywany
do
znajdowania
adresu
sprzętowego
komputera (adres MAC), gdy dany jest adres IP.
Protokół ARP został zdefiniowany w
RFC 826
.
ARP jest wykorzystywane w takich technologiach jak
Token
Ring
,
FDDI
,
802.11
oraz w technologiach WAN.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
32
W przypadku sieci wykorzystujących adresy MAC oraz protokół
IP w wersji 4 ARP przyporządkowuje 32-bitowe adresy IP
fizycznym, 48-bitowym adresom MAC.
3. Protokół ARP
Polecenie ARP zarządza tzw. tablicą ARP. Znajdują się w niej pary: adres
warstwy sieciowej (IP) i przypisany do niego adres fizyczny. Zapobiega to
tworzeniu zapytania ARP przy próbie wysłania każdego pakietu. Hosty
mogą się ze sobą komunikować za pośrednictwem adresu fizycznego tylko
w obrębie danej sieci w znaczeniu warstwy drugiej modelu OSI.
Jeśli informacje mają być przesłane do innej sieci (lub podsieci w sieci
złożonej,
sieci
oddzielonej
routerem,
itp.),
to
protokół
ARP
jest
wykorzystywany
jedynie
do
uzyskania
informacji
o
adresie
bramy
domyślnej (sieciowej).
ARP jest protokołem komunikacyjnym pracującym na styku warstw drugiej i
trzeciej modelu OSI. Komunikaty ARP są umieszczane w ramkach warstwy
drugiej, służą jedynie do przenoszenia adresów hostów.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
33
trzeciej modelu OSI. Komunikaty ARP są umieszczane w ramkach warstwy
drugiej, służą jedynie do przenoszenia adresów hostów.
adres IP
adres MAC
Warstwa sieci
Warstwa ł
ą
cza
danych
ARP
3. Protokół ARP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
34
3.
Protokół
ARP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
35
4. ARP- wiersz polece
ń
Polecenie arp
• Wyświetla i modyfikuje wpisy w pamięci podręcznej ARP
(Address Resolution Protocol), która zawiera jedną lub kilka
tabel
używanych
do
przechowywania
adresów
IP
i
odpowiednich rozpoznanych adresów fizycznych Ethernet
lub Token Ring.
• Dla
każdej
karty
sieciowej
Ethernet
lub
Token
Ring
zainstalowanej na komputerze dostępna jest oddzielna
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
36
zainstalowanej na komputerze dostępna jest oddzielna
tablica.
• Polecenie arp bez parametrów wyświetla Pomoc.
• Adres fizyczny dla parametru adres_ethern składa się z
sześciu bajtów wyrażonych w zapisie szesnastkowym i
rozdzielonych łącznikami (00-AA-00-4F-2A-9C ,adres MAC).
4. ARP- wiersz poleceń
Parametry
•
/a [adres_intern] [-N adres_interf]
– Wyświetla bieżące tabele pamięci podręcznej ARP dla wszystkich
interfejsów.
Aby
wyświetlić
wpis
pamięci
podręcznej
ARP
dla
określonego adresu IP, należy użyć polecenia arp /a z parametrem
adres_intern, gdzie adres_intern jest adresem IP. Aby wyświetlić
tabelę pamięci podręcznej ARP dla określonego interfejsu, należy użyć
parametru
-N
adres_interf,
gdzie
adres_interf
jest
adresem
IP
przypisanym do interfejsu. W parametrze -N uwzględniana jest
wielkość liter.
•
/d adres_intern [adres_interf]
– Usuwa wpis z określonym adresem IP, gdzie adres_intern jest
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
37
– Usuwa wpis z określonym adresem IP, gdzie adres_intern jest
adresem IP. Aby usunąć wpis w tabeli dla określonego interfejsu,
należy użyć parametru adres_interf, gdzie adres_interf jest adresem
IP przypisanym do interfejsu. Aby usunąć wszystkie wpisy, należy użyć
symbolu
wieloznacznego
gwiazdki
(*)
zamiast
parametru
adres_intern.
•
/s adres_intern adres_ethern [adres_interf]
– Dodaje wpis statyczny do pamięci podręcznej ARP, który rozpoznaje
adres fizyczny adres_ethern na podstawie adresu IP adres_intern. Aby
dodać
wpis
statyczny
pamięci
podręcznej
ARP
do
tabeli
dla
określonego interfejsu, należy użyć parametru adres_interf, gdzie
adres_interf jest adresem IP przypisanym do interfejsu.
4. ARP- wiersz poleceń
Ćwiczenie 7
a/Wyświetlić tabele pamięci podręcznej ARP dla wszystkich interfejsów,
Wpisać w wierszu poleceń:
•
arp /a
b/Wyświetlić tabelę pamięci podręcznej ARP dla interfejsu, do którego
przypisano adres IP 10.20.125.xxx, wpisać w wierszu poleceń:
•
arp /a -N 10.20.125.xxx
c/Wykasować wpisy w tablicy podręcznej.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
38
c/Wykasować wpisy w tablicy podręcznej.
d/Dodać wpisy do tablicy podręcznej, z wykorzystaniem komendy Ping:
•
do bramy domyślnej,
•
do innych komputerów w sieci lokalnej.
5. Wykorzystanie ARP w sieci LAN
Komunikacja z uwzględnieniem warstwy sieciowej
PC10 IP: 1.10.125.101
PC20 IP: 1.20.125.102
Pakiet IP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
39
Pakiet IP
Internet
5. Wykorzystanie ARP w sieci LAN
Komunikacja z uwzględnieniem warstwy sieciowej i warstwy łącza
danych
PC10 IP: 10.20.125.101
PC10 IP: 10.20.125.102
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
40
SWITCH
MAC
ź
ródłowy 0A-3E-DB-00-00-00
MAC docelowy 0C-3B-4C-00-00-00
Pakiet IP
Ramka Ethernet
5. Wykorzystanie ARP w sieci LAN
Proces przekazywania pakietu
1. Umieszczenie pakietu w ramce Ethernet
2. Umieszczenie czterech adresów w ramce Ethernet: adres źródłowy IP,
adres docelowy IP, adres źródłowy MAC, adres docelowy MAC
3. Wysłanie pakietu
Przypisanie adresu MAC do adresu IP >> odwzorowanie (mapowanie)
adresów warstwy 3 (sieci ) na adresy warstwy 2 (łącza danych).
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
41
adresów warstwy 3 (sieci ) na adresy warstwy 2 (łącza danych).
5. Wykorzystanie ARP w sieci LAN
Wykorzystanie ARP w sieci lokalnej
PC1, PC2 ta sama podsieć
PC2 IP: 10.20.125.102
MAC: 00-00-02..
1.
Znajdź adres MAC
dla IP:
10.20.125.102
3.
PC2 odpowiada na
zapytanie ARP
Adres MAC 00-00-02 dla
IP: 10.20.125.102
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
42
PC1 IP: 10.20.125.101
MAC: 00-00-01..
MAC: 00-00-02..
2.
Rozgłoszeniowy ARP- szukam
MAC dla IP: 10.20.125.102
Ethernet
FF-FF-FF..
PC3
PC4
4.
Odpowiedź ARP-
MAC 00-00-02.. dla IP: 10.20.125.102
Ethernet
00-00-01..
5. Wykorzystanie ARP w sieci LAN
Wykorzystanie ARP w sieci lokalnej- kroki
1.
PC1:
Wie że komputer PC2 jest w tej samej podsieci,
Zna adres PC2: 10.20.125.102,
Potrzebuje adresu MAC komputera PC2.
2. PC1 wysyła żądanie ARP na adres rozgłoszeniowy MAC FF-FF-FF… śądanie
ARP oznacza że komputer o docelowy m adresie IP (10.20.125.102)
powinien
odpowiedzieć
do
komputera
o
źródłowym
adresie
IP
(10.20.125.101) i MAC , podając swój adres MAC.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
43
(10.20.125.101) i MAC , podając swój adres MAC.
3. PC2 tworzy odpowiedź ARP
4. PC2 wysyła na adres IP i MAC podany w zapytaniu adres MAC w parze z
adresem IP ( IP: 10.20.125.1 02/MAC:
00-00-02..).
Pozostałe
komputery pomimo otrzymania żądania ARP pozostają bierne.
5. Wykorzystanie ARP w sieci LAN
Komputery i routery w sieci TCP/IP przechowują informacje uzyskane za
pomocą protokołu ARP w tablicy zwanej tablicą ARP lub pamięcią
podręczną ARP.
Przed umieszczeniem pakietu w ramce Ethernet komputer sprawdza w
pamięci podręcznej czy posiada docelowy adres MAC. Jeżeli nie posiada to
musi wykorzystać protokół ARP w celu zdobycia tej informacji.
Pamięć
podręczna
ARP
jest
okresowo
weryfikowana,
a
nieużywane wpisy są usuwane.!!
Czas ten zależy od urządzenia. Na przykład, w niektórych systemach
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
44
Czas ten zależy od urządzenia. Na przykład, w niektórych systemach
operacyjnych Windows wpis w pamięci ARP jest usuwany po 2 minutach.
Jeśli dany wpis był użyty w międzyczasie, licznik dla danego wpisu
przedłużany jest do 10 minut.
Bez
pamięci
podręcznej,
ARP
musiałby
nieustannie
rozsyłać
zapytania
tłumaczenia adresów w sieci LAN. To spowodowałoby opóźnienia w sieci i
jej przeciążenie. W skrajnie przeciwnym przypadku, nieskończenie długie
czasy przechowywania wpisów ARP mogłyby doprowadzić do błędów w
przypadku, gdyby pewne urządzenia w międzyczasie zmieniły adres
Warstwy 3 (sieci).
6. Wykorzystanie ARP w sieci rozległej
Router 1
Podsie
ć
: 10.20.125.xxx
Podsie
ć
: 10.20.129.xxx
Gateway
10.20.129.251
00-FF-AA..
Gateway
10.20.125.251
00-FF-AB..
FA0/0
FA0/1
PC5
10.20.125.101
00-00-02…
PC8
10.20.129.101
00-00-01…
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
45
00-FF-AA..
00-FF-AB..
00-00-02…
00-00-01…
Nagłówek
Eth.
Nagłówek IP
Pakiet IP
Dane
Nagłówek
Eth.
Pakiet IP
Pakiet IP
Nowy nagłówek
Eth.
6. Wykorzystanie ARP w sieci rozległej
Kroki
1.
PC5 wysyła pakiet IP w ramce Ethernet do swojej bramy domyślnej (R1,
10.20.125.251, 00-FF-AB…). Docelowy MAC: 00-FF-AB… Router 1.
2.
Router 1 odrzuca nagłówek ramki.!!
3.
Router 1 umieszcza pakiet IP w nowej ramce Ethernet. Docelowy adres
MAC: 00-00-01… komputer PC8.
4.
Router 1 przekazuje ramkę z pakietem przez interfejs FA 0/1.
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
46
7. ARP a bezpieczeństwo w sieci
ARP
także
może
być
jednak
także
słabym
punktem
jeśli
chodzi
o
bezpieczeństwo. Techniki takie jak ARP spoofing czy ARP poisoning
bywają używane przez napastników do rozgłaszania fałszywych powiązań
adresów MAC w sieci. Napastnik podrabia adres MAC określonego
urządzenia, co sprawia, że ramki kierowane są do niewłaściwego odbiorcy.
Jedną z metod zapobiegania ARP spoofing jest ręczne skojarzenie
adresów MAC.
Po otrzymaniu komunikatu ARP tablice uaktualnia zarówno nadawca, jak i
odbiorca, możliwe jest zagłuszenie ARP własnymi, często wysyłanymi
komunikatami. Technika taka nazywana jest ARP Flooding.
Możliwa jest sytuacja, w której intruz w sieci lokalnej „podszywa się” pod
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
47
Możliwa jest sytuacja, w której intruz w sieci lokalnej „podszywa się” pod
adres bramy w tej sieci i uzyskuje dostęp do strumienia informacji
kierowanej do Internetu. Możliwości intruza są duże – przykładowo, może
wygenerować
fałszywy
certyfikat
i
pośredniczyć
w
szyfrowanej
komunikacji użytkownika z bankiem. Takie działanie jest nazywane
atakiem man-in-the-middle.
8. Wykorzystanie WhireShark do przechwytywania i
analizy protokołu ARP
Przykład analizy otrzymanego logu dla protokołu ARP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
48
Frame 15 (42 bytes on wire, 42 bytes captured)
Ethernet II, Src: 00:00:39:45:55:a0, Dst: ff:ff:ff:ff:ff:ff
Address Resolution Protocol (request)
Frame 16 (60 bytes on wire, 60 bytes captured)
Ethernet II, Src: 00:02:bb:55:45:56, Dst: 00:00:39:45:55:a0
Address Resolution Protocol (reply)
8. Wykorzystanie WhireShark do przechwytywania i
analizy protokołu ARP
Opis
Protokół ARP (Adress Resolution Protocol) służy do uzyskania przez stację A
adresu MAC (czyli adresu Ethernet) stacji, która jest bramą dla stacji A.
Ramka 15. Stacja o adresie IP: 156.17.43.50 potrzebuje adresu MAC stacji
o
adresie
IP:156.17.43.62,
która
jest
bramą
(gateway)
dla
stacji
IP:156.17.43.50. Dlatego wysyła ramkę rozgłoszeniową (broadcast) o
adresie docelowym MAC w postaci ff:ff:ff:ff:ff:ff .
Ramka 16. Z definicji bramy wynika, że musi się znajdować w tej samej
podsieci co stacja, dla której jest bramą. Dlatego otrzyma ramkę
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
49
podsieci co stacja, dla której jest bramą. Dlatego otrzyma ramkę
rozgłoszeniową i odpowie na nią przesyłając swój adres MAC. W tym
momencie stacja o adresie IP 156.17.43.50 zna adres MAC swojej bramy,
więc może zacząć wysyłać pakiety IP do stacji znajdujących się w innych
podsieciach.
8. Wykorzystanie WhireShark do przechwytywania i
analizy protokołu ARP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
50
8. Wykorzystanie WhireShark do przechwytywania i
analizy protokołu ARP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
51
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
52
8. Wykorzystanie WhireShark do przechwytywania i
analizy protokołu ARP
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
53
8. Wykorzystanie Whire Shark do przechwytywania
i analizy protokołu ARP
Ćwiczenie 8
Wykorzystanie analizatora Whire Shark do przechwytywania i analizy
protokołu ARP.
a/ uruchomić program Whire shark,
b/ za pomocą IP Config zidentyfikować adresy: bramy domyślnej, serwerów
DNS
c/ usunąć wpisy z pamięci podręcznej ARP
d/ uruchomić przechwytywanie pakietów w programie Whire shark
d/ użyć polecenia Ping : do bramy domyślnej, serwerów DNS, innych
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
54
d/ użyć polecenia Ping : do bramy domyślnej, serwerów DNS, innych
komputerów w sieci lokalnej
e/ przeanalizować protokoły ARP przechwycone przez Whire shark
W zakresie:
Struktura protokołu,
Adresy warstwy sieciowej
Adresy warstwy łącza danych
9. Zapobieganie atakom ARP w sieci
Niedopuszczanie nieautoryzowanych urządzeń do sieci. Atak tego typu jest
jednak często wywoływany przez autoryzowanego użytkownika, więc
potrzebujemy bardziej skomplikowanej metody do zatrzymania ataku.
Dobrym zabezpieczeniem będą statyczne wpisy ARP dla hostów w sieci.
Zbudowanie takiej konfiguracji zajmie sporo czasu. Konfiguracja nie
odświeży się automatycznie, jeżeli posiadamy dynamiczną sieć dowolnego
rozmiaru.
Narzędziem, które pozwoli monitorować mapowanie par IP na MAC oraz
zapamiętujące ich zmian jest ARPWATCH.
Oprogramowanie wymaga
instalacji na serwerze "widzącym" cały ruch sieciowy. Konieczne będzie
lato 2013r.
Sieci komputerowe dr
in
ż
. Antoni Masiukiewicz
55
instalacji na serwerze "widzącym" cały ruch sieciowy. Konieczne będzie
więc uruchomienie przełącznika do monitorowania ruchu (port mirroring)
na danym porcie.
10. Obliczanie sumy kontrolnej nagłówka protokołu
IP
Sposób obliczania sumy kontrolnej nagłówka protokołu IP
Integralność informacji zawartych w nagłówku datagramu IP zapewnia 16-
bitowa „suma kontrolna nagłówka” (header checksum).
Jest ona obliczana według prostego algorytmu, zakładającego zsumowanie
wszystkich słów nagłówka jako liczb 16-bitowych a następnie dopełnienie
do jedności otrzymanej liczby. Otrzymana liczba jest 24-bitowa i nie
lato 2013
Sieci komputerowe
dr in
ż
. Antoni Masiukiewicz
56
do jedności otrzymanej liczby. Otrzymana liczba jest 24-bitowa i nie
można jej umieścić w 16-bitowym polu sumy kontrolnej. Dokonuje się
tutaj prostego zabiegu – najstarszy bajt tej liczby jest „odcinany” a
następnie dodawany do otrzymanej w ten sposób liczby 16- bitowej. Na
czas obliczeń pole sumy kontrolnej jest zerowane. Ostatnim krokiem jest
odjęcie
uzyskanej liczby od liczby FFFF, co daje liczbę szukaną sumę
kontrolną nagłówka IP.
10. Obliczanie sumy kontrolnej nagłówka protokołu
IP
Ćwiczenie 0
Obliczyć sumę kontrolną dla poniższego pakietu
Suma kontrolna
lato 2013
Sieci komputerowe
dr in
ż
. Antoni Masiukiewicz
57
10. Obliczanie sumy kontrolnej nagłówka protokołu
IP
Krok 1
Sumowanie liczb zawartych w nagłówku
45 00
4x16W+5x16Y+0x16Z+0x16°
=
17 664
00 4e
0x16W+0x16Y+4x16Z+14x16°
=
78
0c 20
0x16W+12x16Y+2x16Z+0x16°
=
3 104
00 00
=
0
lato 2013
Sieci komputerowe
dr in
ż
. Antoni Masiukiewicz
58
00 00
=
0
80 01
8x16W+0x16Y+0x16Z+1x16°
=
32 769
ff 34
zerujemy sumę kontrolną
=
0
59 6c
5x16W+9x16Y+6x16Z+12x16°
=
22 892
cb 05
12x16W+11x16Y+0x16Z+5x16°
=
51 973
0a c8
0x16W+10x16Y+12x16Z+8x16°
=
2 760
00 21
0x16W+0x16Y+2x16Z+1x16°
=
33
Suma
=
131 273
10. Obliczanie sumy kontrolnej nagłówka protokołu
IP
Krok 2
Zamiana sumy na liczbę szesnastkową
131 273 : 65536
= 2x16]
201
:16
= 12x16Z=cx16Z
9
= 9x16°
Suma w postaci liczby szesnastkowej
lato 2013
Sieci komputerowe
dr in
ż
. Antoni Masiukiewicz
59
Suma w postaci liczby szesnastkowej
2x16]+0x16W+0x16Y+cx16Z+9x16°= 02 00 c9 (0+pięć bajtów)
10. Obliczanie sumy kontrolnej nagłówka protokołu
IP
Krok 3
Dodajemy dwa pierwsze bajty sumy do czterech pozostałych
00 c9 = 0x16W+0x16Y+cx16Z+9x16°
=201
+
02 = 0x16Z+2x16°
= 2
lato 2013
Sieci komputerowe
dr in
ż
. Antoni Masiukiewicz
60
Suma
= 203
Zamieniamy sumę na liczbę szesnastkową
203=cb
10. Obliczanie sumy kontrolnej nagłówka protokołu
IP
Krok 4
Od liczby ffff odejmujemy liczbę uzyskaną w kroku 3
ffff =
65535
-
cb
=
-203
Wynik
=
65332
lato 2013
Sieci komputerowe
dr in
ż
. Antoni Masiukiewicz
61
Zamieniamy wynik na liczbę szsnastkową
65332
: 4096
= 15x16W = fx16W
3892 :256
= 15x16Y = fx16Y
52
:16
= 3x16Z
4
= 4x16°
Szukana suma kontrolna
ff34