Sunteți pe pagina 1din 55

Universitatea Spiru Haret

Securitatea retelelor de calculatoare


Securitatea la nivel retea locala

Alexandru Averian
De ce securitate la nivel LAN ? 1/3
• Comunicatiile (inclusiv cele din LAN) folosesc ca model de
referinta ierarhia ISO/OSI:
– primitive de acces la servicii (intre entitati aflate pe niveluri adiacente,
pe acelasi host);
– protocoale (intre entitati aflate pe acelasi nivel, host-uri diferite).
De ce securitate la nivel LAN ? 2/3
• Efectul Domino – daca un nivel este compromis, toate comunicatiile
sunt compromise
• Gradul de securitate al intregului sistem de comunicatii este cel mult
egal cu al celui mai nesigur nivel
• Nivelul 2 (LAN) poate fi foarte vulnerabil
De ce securitate la nivel LAN ?

• 99% din porturile de retea ale companiilor sunt deschise


• In mod obisnuit, orice laptop se poate conecta pe unul
din aceste porturi si obtine acces in retea
• Studiul anual facut de CIS/FBI (Computer Crime and
Security Survey, arata ca:

– Cel putin 55% din atacuri provin din interiorul retelei locale
– Pierderile estimate (cumulate) ale companiilor care au raspuns
la interviu (639) au fost de aproximativ 130 milioane dolari
Securitatea la nivel LAN
• Atacuri specifice si contramasuri

– Atacuri de tip “MAC”


Adrese MAC
• Rol: permit comunicatia fizica intre doua statii aflate pe acelasi
segment de retea (adresele IP, de nivel 3, permit comunicatia intre
doua statii aflate in retele diferite)

• Pentru a-si indeplini rolul si a optimiza distributia traficului, switch-


urile “invata” aceste adrese, memorandu-le intr-o asa numita tabela
MAC (se mai numeste si Content Addressable Memory – CAM)
• Tabela MAC a unui switch dispune de o zona limitata de memorie
(parametru important al unui switch)
Functionarea normala a unui switch 1/3
Functionarea normala a unui switch 2/3
Functionarea normala a unui switch 3/3
Depasirea capacitatii tabelei MAC
(MAC Flooding) 1/3

• Pana in Mai 1999 considerat un atac teoretic


posibil
• In Mai 1999, Ian Vitek demonstreaza printr-un
program scris in Perl - macoff – ca atacul este
practic posibil
• Programul a fost ulterior portat in C, sub numele
de dsniff
• Atacul se bazeaza pe capacitatea limitata a
memoriei destinata tabelei MAC intr-un switch
(valori uzuale: 32K, 64K, 128K)
Depasirea capacitatii tabelei MAC 2/3
Depasirea capacitatii tabelei MAC 3/3
Contramasuri la atacurile de tip
“MAC Flooding”
• Limitarea numarului maxim de adrese MAC
invatate pe un port de switch

Solutia:
• Limitarea numarului de adrese MAC
permise pe un port
• blocarea portului in caz de depasire
• informarea administratorului prin
transmiterea unei trape SNMP
Mecanismul “Port Security”
• In versiunile mai vechi, asocierea MAC<->Port se putea
face doar static, prin configurare explicita (o singura
adresa permisa)
• In versiunile mai noi, se poate seta o limita a numarului
maxim de adrese pe care un port le poate invata dinamic
• Se pot defini contoare de timp pentru fiecare asociere
dintre o adresa MAC si un port
• Maparile statice sunt recomandate pentru porturile
dedicate (servere, imprimante, etc)
• O adresa MAC poate fi invatata dinamic pe un port si,
apoi, asociata permanent cu acesta, prin salvarea
automata in configuratia switch-ului (in caz de restartare,
asocierea se pastreaza)
Securitatea la nivel LAN
• Atacuri specifice si contramasuri

– Atacuri de tip “DHCP”


DHCP – Descriere sumara 1/2

• Administratorul configureaza un spatiu de adrese IP


alocabil dinamic
• Server-ul aloca dinamic o adresa IP, la cerere
• Adresa este alocata pentru o perioada de timp
• In campul “Options” sunt furnizate informatii
suplimentare
DHCP – Descriere sumara 2/2

• Este definit de RFC 2131


DHCP – Formatul Pachetului
DHCP – Tipuri de mesaje
Atacul de tip “DHCP Starvation”
e

Attacker

• Atacatorul incearca sa inchirieze/obtina toate adresele IP disponibile


prin DHCP
• Atac de tip DoS
Contramasura pentru “DHCP Starvation” –
Mecanismul “Port Security”

• Atacatorul face o noua cerere DHCP, utilizand o alta


adresa MAC
• Mecanismul “Port Security” restrictioneaza numarul
maxim de adrese MAC acceptate pe un port
• Atacatorul nu va putea obtine un numar de adrese IP
mai mare decat numarul maxim de adrese MAC
acceptate pe acel port
Atacul de tip “Rogue DHCP Server” 1/2
Atacul de tip “Rogue DHCP Server” 2/2

• Ce poate face serverul DHCP al atacatorului ?

• Furnizeaza informatii incorecte, cum ar fi:


Default Gateway – Adresa IP a atacatorului
DNS Server – Atacatorul este server DNS
Adresa IP – Alocata incorect (atac de tip DoS)
Contramasura pentru atacul de tip
“Rogue DHCP Server” – Mecanismul “DHCP Snooping” 1/3

• La activarea mecanismului, implicit, toate porturile unui


switch sunt in starea “Untrusted”
• Se va configura starea “Trust” pe portul pe care se afla
server-ul DHCP (eventual, pe portul de “uplink”, daca
server-ul nu se afla pe acelasi switch)
Contramasura pentru atacul de tip
“Rogue DHCP Server” – Mecanismul “DHCP Snooping” 2/3

• Switch-ul blocheaza mesajele “DHCP Reply” ce vin de pe


porturile marcate “Untrusted”
• Switch-ul intercepteaza mesajele “DHCP Reply” ce vin de pe
portul “Trusted” si construieste in memorie o tabela de
corespondenta
• Intrarile din tabela expira dupa “Lease time”
Contramasura pentru atacul de tip
“Rogue DHCP Server” – Mecanismul “DHCP Snooping” 3/3

• Atacatorul foloseste o adresa MAC unica


pentru fiecare cerere DHCP, dar mecanismul
“Port Security” previne acest lucru
• Ce se intampla daca frame-urile Ethernet
corespunzatoare cererilor DHCP contin
aceeasi adresa MAC sursa, dar in corpul
mesajului DHCP CHADDR este mereu alta ?
• “Port Security” nu va detecta acest atac
(DoS)
• “DHCP Snooping” verifica daca adresa MAC
sursa din header-ul Ethernet este aceeasi cu
cea din campul CHADDR;
• In caz negativ, cererea DHCP este blocata
Securitatea la nivel LAN
• Atacuri specifice si contramasuri

– Atacuri de tip “ARP”


ARP – Descriere sumara 1/2
• Inainte ca o statie sa poata comunica cu o alta, aceasta va transmite
o cerere ARP, cu scopul de a-i afla adresa fizica (MAC)
• Cererea ARP este trimisa sub forma de broadcast (atat la nivel 2,
cat si la nivel 3)
• Toate statiile din aceeasi retea vor receptiona si procesa cererea
ARP; de raspuns, va raspunde doar statia care isi va identifica
propriul IP in continutul cererii
ARP – Descriere sumara 2/2
• In conformitate cu standardul ARP, unei statii ii este permis sa
transmita un raspuns ARP nesolicitat, sub forma de
unicast/broadcast, sau o cerere ARP pentru propria adresa IP
(“Gratuitous ARP”)
• Celelalte statii din retea pot memora aceasta informatie in propriile
tabele ARP
• Astfel, oricine poate pretinde ca este proprietarul unui IP/MAC
• Atacurile de tip “ARP” folosesc aceasta posibilitate, pentru
redirectionarea traficului
Atacuri “ARP” – Instrumente disponibile in
Internet
• Exista cel putin trei, care faciliteaza atacuri de tip “Man-
in-the-Middle”:
Dsniff – http://monkey.org/~dugsong/dsniff/
Ettercap – http://ettercap.sourceforge.net/index.php
Cain – http://www.oxid.it/cain.html (versiune Windows, foarte
puternica)
• Ettercap si Cain sunt considerate de generatia a 2-a, au
interfata de tip GUI, permit interceptarea si spargerea
parolelor, inserarea de pachete, etc
• Toate pot captura traficul/parolele urmatoarelor aplicatii:
FTP, Telnet, SMTP, HTTP, POP, NNTP, IMAP, SNMP, LDAP,
RIP, OSPF, PPTP, MS-CHAP, SOCKS, X11, IRC, ICQ, AIM, SMB,
Microsoft SQL, VNC, etc.
Atac de tip “ARP” 1/3
• Atacatorul modifica tabelele
ARP ale ruterului si PC-ului
Atac de tip “ARP” 2/3

• Tot traficul este, astfel,


interceptat
Atac de tip “ARP” 3/3
• In final, atacatorul corecteaza
tabelele ARP
• Traficul revine la normal
Contramasura la atacul “ARP” – Mecanismul
“Dynamic ARP Inspection”
• Se bazeaza pe “DHCP Snooping”
• Pentru a fi acceptate, toate
pachetele ARP trebuie sa aiba o
intrare de corespondenta IP/MAC
in tabela DHCP de pe switch
• In caz contrar, sunt blocate
• Daca o statie nu foloseste DHCP,
atunci switch-ul trebuie sa permita
crearea de intrari statice in tabela
Securitatea la nivel LAN
• Atacuri specifice si contramasuri

– Atacuri de tip “Spoofing” (Disimulatie)

“MAC Spoofing”
– Preluarea identitatii MAC a altui host

“IP Spoofing”
– Preluarea identitatii IP a altui host
– “Ping of Death”
– “ICMP Unreachable Storm”
– “Syn Flooding”
Atac “MAC Spoofing”
• Atacatorul transmite frame-uri
cu adresa MAC sursa incorecta
• Daca accesul in retea este
controlat pe baza adresei MAC,
atunci atacul este reusit
Atac “IP Spoofing”

• Atacatorul transmite pachete


cu adresa IP sursa incorecta
• Indiferent cui ii este adresat
pachetul, atacatorul nu va
primi niciodata un raspuns
Atac “IP & MAC Spoofing”

• Atacatorul transmite pachete


cu adresa MAC sursa si
adresa IP sursa incorecte
• Astfel, pachetele par ca si
cum ar proveni de la un host
real
Contramasura la atacurile de tip “Spoofing”
– Mecanismul “IP Source Guard” 1/2
• Se bazeaza pe “DHCP
Snooping”
• Opereaza similar cu “Dynamic
ARP Inspection”, cu diferenta
ca verifica orice tip de trafic
Contramasura la atacurile de tip “Spoofing”
– Mecanismul “IP Source Guard” 2/2

• Foloseste informatia din tabela construita de “DHCP


Snooping”

• Orice pachet receptionat pe un port este inspectat la


nivel adresa MAC sursa si adresa IP sursa
• Daca exista o intrare in tabela, corespunzatoare acelui
port, pachetul este acceptat si livrat mai departe spre
destinatie
• Daca nu, pachetul este blocat
Securitatea la nivel LAN

• Atacuri specifice si contramasuri

– Atacuri de tip “Spanning Tree”


Spanning Tree Protocol (STP) – descriere sumara

• Scop: mentinerea unei topologii de retea de fara bucle, in cazul unei


arhitecturi redundante
• Unul din switch-uri este ales
drept radacina a arborelui
(Root)

• Dupa alegerea Root-ului, • Alegerea are la baza un


switch-urile construiesc un parametru de prioritate,
arbore de drumuri minime, configurabil (0 - 65535)
fara bucle

• Comunicatia STP intre switch-uri se face prin transmisia de “Bridge


Protocol Data Units” (BPDUs)
• Mesajele de baza folosite sunt: “Configuration”, “Hello” si “Topology
Change Notification/Acknowledge”
• Eliminarea buclelor asigura protectie impotriva inundarii retelei cu
trafic, pana la saturatie (“Broadcast Storm”)
Atacuri de tip “Spanning Tree” 1/2

• Atacatorul transmite mesaje


BPDU, incercand sa devina
“Root”
Atacuri de tip “Spanning Tree” 2/2

• Dupa ce devine “Root”, atacatorul are acces


la toate pachetele transmise intre statiile
conectate pe switch-uri diferite
• Sunt posibile atacuri de tip “Man-in-the-
Middle” si “Denial-of-Service”
• Desi STP ia in considerare largimea de
banda la determinarea drumului minim,
aceasta se face din perspectiva “Root”-ului
• Astfel, un atac posibil (de tip DOS) este si
scaderea capacitatii de transport pe
“backbone” (scaderea dramatica a
performantei retelei), de la n x Gpbs Full
Duplex, la 10 Mbps Half Duplex
• Acest atac presupune ca cel care il
declanseaza are acces la doua switch-uri,
simultan
Contramasuri la atacuri de tip “Spanning Tree”

• Nu lasati STP sa functioneze “by default”


• Configurati-l in asa fel incat topologiile de retea rezultate in urma
unor evenimente sa fie predictive (Primary Root si Secondary Root
bine alese)
• Chiar daca nu aveti o arhitectura redundanta a retelei, nu dezactivati
STP (un atac de tip DOS foarte la indemana – conectarea printr-un
cablu a doua prize/porturi de retea/switch)
• Mecanisme de protectie:
“BPDU Guard” – dezactivarea portului, la receptia unui BPDU; se
configureaza doar pe acele porturi de switch pe care stim sigur ca nu se
conecteaza decat statii, servere, imprimante, etc (nu alte switch-uri)
“Root Guard” – dezactivarea portului care din starea “Blocking” sau
“Designated Forwarding” are tendinta sa devina “Root Port”; se
configureaza doar pe acele porturi care conecteaza switch-uri intre ele
si nu sunt proiectate a deveni “Root Port” in nici o topologie.
Securitatea la nivel LAN

• Atacuri specifice si contramasuri

– Atacuri de tip “VLAN Hopping”


Porturi de tip “Trunk”

• In mod normal sunt folosite intre switch-uri, pentru interconectarea


(multiplexarea) a pana la 2^12 VLAN-uri, pe o aceeasi conexiune fizica
• Porturile de tip “Trunk” au, implicit, acces la toate VLAN-urile
• Pentru a putea pastra apartenenta la VLAN-uri, frame-urile sunt transmise
intre porturile celor doua switch-uri marcate conform standardului IEEE
802.1Q (au cate un asa numit “tag” – numar de VLAN)
• Unul din VLAN-uri este considerat “Native” si este transmis nemarcat
(implicit, VLAN-ul nr. 1)
Marcarea frame-urilor – standardul IEEE 802.1Q

• TPID (Tag Protocol IDentifier) are o valoare fixa (8100 in


hexazecimal)
• TCI (Tag Control Information) are trei campuri:
– Priority defineste 8 niveluri (2^3) de prioritate, conform
standardului IEEE 802.1p, utilizate pentru tratarea diferentiata a
traficului (Quality of Services)
– CFI (Canonical Format Indicator), pe 1 bit, are intotdeauna
valoarea 0 pentru un switch ethernet
– VID (Vlan IDentifier), pe 12 biti (2^12 valori posibile), este
numarul asociat VLAN-ului
Dynamic Trunk Protocol (DTP)
• Utilizat pentru automatizarea
configurarii Trunk/802.1Q pe
conexiunile dintre switch-uri
• Din perspectiva DTP un port poate
avea una din starile: “On”, “Off”,
“Auto”, “Desirable”, “Non-Negotiate”
• Implicit, toate porturile unui switch
sunt in starea “Desirable”
• Astfel, la conectarea fizica a doua
switch-uri, modul de operare Trunk
devine automat activ pe cele doua
porturi, intre switch-uri
transportandu-se toate VLAN-urile,
inclusiv VLAN 1 (nemarcat)
Atacuri de tip “VLAN Hopping” 1/2

• O statie (atacatorul) poate simula comportamentul unui switch,


utilizand DTP si marcarea 802.1Q a frame-urilor
• Astfel, atacatorul reuseste sa obtina accesul in toate VLAN-urile
• Cu exceptia starii “Off”, toate celelalte stari permit crearea automata a
Trunk-ului
http://www.sans.org/resources/idfaq/vlan.php
Atacuri de tip “VLAN Hopping” –
marcarea dubla 2/2

• Un port de acces (care nu se afla in starea Trunk) accepta un frame marcat daca
valoarea VID din tag este identica cu numarul VLAN-ului in care se afla portul
• Atacatorul transmite frame-uri marcate dublu (primul marcaj folosit pentru ca frame-ul sa
fie acceptat de switch, a doilea pentru a desemna VLAN-ul destinatie/tinta)
• Traficul este posibil doar unidirectional (de la atacator spre victima; atac de tip DoS)
• Pentru a functiona este necesar ca VLAN-ul nativ dintre cele doua switch-uri sa fie
acelasi cu cel de pe portul pe care se afla atacatorul
Securitatea VLAN-urilor – Recomandari
• Nu folositi VLAN 1 deloc (nu se poate dezactiva, dar nu
alocati porturi in acest VLAN)
• Dezactivati porturile nefolosite si alocati-le unui VLAN
nefolosit (altul decat VLAN 1)
• Dezactivati auto-trunking –ul pe toate porturile (DTP “Off”)
• Configurati explicit trunking –ul (DTP “On”) acolo unde este
necesar (intre switch-uri, pe conexiunea spre un server,
router, firewall)
• Nu transportati decat VLAN-urile necesare, pe porturile de tip
Trunk
• Evitati folosirea VLAN-urilor “campus wide”
• Daca se poate, nu folositi VLAN-uri native pe porturile Trunk
(toate frame-urile vor fi marcate); daca nu, ID-ul VLAN-ului
nativ sa fie diferit de cel al VLAN-urilor in care sunt alocate
porturi utilizatorilor
Administrarea switch-urilor
• Poate prezenta cele mai mari vulnerabilitati
– Toate tehnicile de protectie mentionate anterior sunt
nefolositoare, atat timp cat un atacator poate obtine acces prin
telnet/ssh la consola administrativa, putandu-le dezactiva sau
manevra
• Cele mai multe din protocoalele utilizate pentru
administrarea obisnuita a retelei sunt nesigure (http,
telnet, ftp, tftp, snmp v1/v2, syslog, etc)
• Folositi variantele sigure ale acestor protocoale, daca
sunt disponibile (https, ssh, sftp, scp, snmp v3, etc);
daca nu, folositi administrarea Out-Of-Band (OOB) –
crearea unul VLAN dedicat administrarii de retea
• Daca nici administrarea OOB nu este posibila, atunci
folositi mecanismele de limitare a accesului in sens
administrativ, disponibile pe switch (liste de control al
accesului)
Referinte

• Network Security Architectures, Sean Convery, ISBN: 158705115X


• Stealing the Network : How to Own the Box, Ryan Russell, Tim
Mullen, Dan Kaminsky, Joe Grand, Ken Pfeil, Ido Dubrawsky, Mark
Burnett, Paul Craig, ISBN: 1931836876
• Defense and Detection Strategies Against Internet Worms, Jose
Nazario, ISBN: 1580533572