Sunteți pe pagina 1din 217

Securitatea

ReŃelelor
de
Calculat
oare
Ion BICA, PhD, CISA
ibica@mta.ro
Obiective
Prezentarea arhitecturii retelelor
TCPIIP cu accent pe problemele de
securitate specifice acestora
Analiza principalelor amenintäri şi atacuri
la adresa retelelor de calculatoare
Descrierea tehnologiilor şi produselor ce
pot fi utilizate pentru a asigura
securitatea retelelor de calculatoare
Continut
1. Fundamente ale retelelor TCPIIP
2. Securitatea la nivelul retelelor locale
3. Sisteme firewall
4. Sisteme pentru detectarea I prevenirea
intruziunilor
5. Unelte pentru testarea securitätii sistemelor

© Ion BICA 3
Bibliografie
William Stallings, “Cryptography and
Network Security, 31E”, Prentice Hall,
2003
Charlie Kaufman, “Network Security, 21E”,
Prentice Hall, 2002
Merike Kaeo, “Designing Network Security,
21E”, Cisco Press,
2004
Resurse disponibile pe Internet
Detalii organizatorice
• Numär de ore: 20 Curs + 10 Lab
• Examen
– test grilä
• Informatiile aferente cursului vor fi
disponibile In format electronic
– note de curs 1 laborator
– documentatie auxiliarä

© Ion BICA 5
© Ion BICA 6
Fundamente ale
ReŃelelor TCP/IP
TCPIIP
• Lingua franca pentru Internet
• Suita de protocoale (dintre care IP şi
TCP sunt cele mai cunoscute)
• Dezvoltat In cadrul proiectului ARPANET
– Robert Kahn şi Vinton Cerf
– prima reŃea cu comutare de pachete
• Versiunea curentä: v4
• TCPIIP este inclus In toate sistemele de
operare folosite pe scarä largä In
momentul de faŃä (Windows, Unix, Mac
OS X)
Internetul
• Cel mai mare proiect de interconectare
umanä
– reŃea de reŃele
– “information superhighway”
• 1,4000,000,000 utilizatori
– http:IIwww.internetworldstats.comIstats.htm
• AplicaŃii diverse
– telnet, e-mail, ftp, WWW
– procesare distribuitä
– colaborare
– entertainment
• Parte integrantä a societäŃii In care träim
– transformäri majore ale societäŃii (e-commerce,
e-business, e-banking, e-learning, e-
government, e-voting)
Internetul (cont.)

Backbon
e

Local Network

Internet Service ISP


Provider (ISP)
Local Network

© Ion BICA 4
Stiva de protocoale TCPIIP

© Ion BICA 5
ComunicaŃia Intre douä host-uri

© Ion BICA 6
Încapsularea datelor

© Ion BICA 7
Nivelul retea
• Adresare
• Rutare pachete
• Interconectare subretele (internetworking)
Furnizarea de servicii de comunicatie
universale pentru nivelul transport
independente de numärul, tipul sau
topologia subretelelor de comunicatie
folosite
Transferul pachetelor Intre sursä şi
destinatie

© Ion BICA 9
Caracteristicile nivelului retea
• Servicii de tip “best effort, connectionless”
(fara secvente de
“setup” sau “connection establishment”)
• Fiecare pachet este rutat In mod independent
– In mod normal pachetele sunt rutate dupä
adresa destinatie (se specificä unde trebuie sä
ajungä pachetele nu şi cum sä ajungä acolo)
– optional, se poate folosi şi “source routing” (se
specificä ruta prin care pachetul trebuie sä
treacä pentru a ajunge la destinatie)
Pachetele se pot pierde, pot ajunge la
destinatie Intr-o ordine diferitä sau pot sä
aparä duplicate!
Protocoale de nivel retea

© Ion BICA 11
Protocolul IP
• Regulile de atribuire a adreselor
• Formatul pachetelor
• Modul de procesare al pachetelor
• Versiuni IP: IPv4, IPv6

© Ion BICA 12
Formatul pachetelor IPv4

© Ion BICA 13
Formatul pachetelor IPv4 (cont.)
• Versiunea (4)
• Lungimea antetului
– specificatä In cuvinte de 32 biti
– domeniu de valori 5..15(20..60 octeti)
cuvinte
• Tipul serviciului
– 3 biti de precedentä
– 4 biti calitatea serviciului (QoS)
• Minimize Delay (1000)
• Maximum Throughput (0100)
• Maximize Reliability (0010)
• Minimize Monetary Cost (0001)
• Normal Service (0000)
• Lungimea totalä a pachetului, In octeti

© Ion BICA 14
Formatul pachetelor IPv4 (cont.)
• ID-ul pachetului
– numär unic setat de calculatorul sursä
– permite identificarea pachetelor fragmentate
(toate fragmentele au acelaşi ID)
• Flags
– controlul fragmentärii pachetelor
– DF (Do not Fragment)
• 0 – fragmentarea este permisä
• 1 – fragmentarea nu este permisä
– MF (More Fragments)
• 0 – ultimul fragment
• 1 – mai urmeazä şi alte fragmente
• Offset-ul fragmentului
– reasamblarea pachetelor fragmentate
– numärul de segmente de 64 biti

© Ion BICA 15
Formatul pachetelor IPv4 (cont.)
• Time To Live
– limita superioara a numärului de hop-uri prin care
poate trece pachetul, Inainte de a fi abandonat
• Protocolul de nivel superior cätre care trebuie livrat
pachetul
– 0: Reserved
– 1: Internet Control Message Protocol (ICMP)
– 2: Internet Group Management Protocol (IGMP)
– 6: Transmission Control Protocol (TCP)
– 17: User Datagram Protocol (UDP)
• Suma de control a antetului
– detectia erorilor
• Adresa IP sursa (32 biti)
• Adresa IP destinatie (32 biti)
• Optiuni
– timestamp
– source routing

© Ion BICA 16
Adrese IP
• Valoare pe 32 biti
– notatia zecimalä cu punct
11000001 11100111 00010101
00001010 = 193.231.21.10
• Fiecare interfatä de retea a unui host sau
ruter trebuie sä aibä asignatä o adresä IP
unicä
• IP Address = [Network ID][Host ID]
• Asignarea adreselor de retea se face de cätre
Regional Internet
Registries (RIR):
– American Registry for Internet Numbers
(ARIN): America de Nord, America de Sud,
Africa de Sud (http:IIwww.arin.netI)
– Reseaux IP Europeans (RIPE): Europa, Orientul
Mijlociu, Africa de Nord
Clase de adrese IP

© Ion BICA 18
Adrese IP rezervate

Network ID Host ID Type of Address Purpose


all 0s all 0s This computer Used during
bootstrap
network all 0s Network Identifies a
network
network all 1s Directed Broadcast on
broadcast specified net
all 1s all 1s Limited broadcast Broadcast on
local net
127 any Loop back testing

© Ion BICA 19
Adrese IP private
• Adrese ce se recomandä a fi alocate
calculatoarelor din retelele interne
(Intranet)
• Nu sunt rutate In Internet!
• RFC 3330
– 10.0.0.0 .. 10.255.255.255
– 172.16.0.0 .. 172.31.255.255
– 192.168.0.0 .. 192.168.255.255

© Ion BICA 20
Subretele IP
• Modul standard de alocare a adreselor IP
este ineficient!
– instalare de noi retele locale
– creşterea numärului statiilor dintr-o retea (nevoia
segmentärii)
• Pentru a evita obtinerea unei noi adrese
IP de la RIR a fost introdus conceptul de
subretea
• IP Address = [Network ID][Subnetwork ID]
[Host ID]
• Reteaua principalä este formatä din mai
multe subretele!
• Adresele subretelelor sunt gestionate local!
Subnet mask

Class In Binary In Dotted-Decimal Using Slash

A 11111111 00000000 00000000 00000000 255.0.0.0 /8

B 11111111 11111111 00000000 00000000 255.255.0.0 /16

C 11111111 11111111 11111111 00000000 255.255.255.0 /24

© Ion BICA 22
Rutarea pachetelor
• Hop-by-Hop
• Algoritmul de rutare:
se recepŃionează un pachet;
dacă pachetul este pentru acest host, atunci furnizează-l
nivelului superior;
altfel, uităte după “next hop” în tabela de rutare;
dacă există o asemenea intrare, atunci expediază
pachetul;
altfel, abandonează pachetul.
Tabela de rutare
• Continut
– adresa IP destinatie (HOST I NET)
– masca de retea asociatä
– adresa IP a ruterului (“next hop”)
– flag-uri (HOSTINET, RouterIDirect)
– interfata de retea pe care va fi expediat pachetul
• Cäutarea destinatiei
1. cautä o intrare de tip HOST
2. cautä o intrare de tip NET
3. cautä o intrare “Default”

© Ion BICA 24
Exemplu de rutare localä

A B
.10.35 .10.33

default
default
Enet, 140.252.10

© Ion BICA 25
Exemplu de rutare localä (cont.)

140.252.10.33
A B
.10.35 .10.33

Enet, 140.252.10

Enet 140.252.10.33

© Ion BICA
Exemplu de rutare localä (cont.)

140.252.10.33
A B
.10.35 .10.33

Enet, 140.252.10

Enet 140.252.10.33

© Ion BICA 27
Exemplu de rutare printr-un
intermediar
D
.13.4

Enet, 140.252.13 .13.183


C

.13.190
A B
.10.35 .10.33

Enet, 140.252.10

© Ion BICA 28
Exemplu de rutare printr-un
intermediar (cont.)
D
.13.4

Enet, 140.252.13 .13.183


C

Next = 140.252.10.33
(default)
.13.190
192.252.1.183
A B
.10.35 .10.33

Enet, 140.252.10

© Ion BICA 29
Exemplu de rutare printr-un
intermediar (cont.)
D
.13.4

Enet, 140.252.13 .13.183


C

Next = 140.252.10.33
(default)

.13.190
192.252.1.183
A B
.10.35 .10.33

Enet, 140.252.10
Enet 192.252.1.183 30
© Ion BICA
Exemplu de rutare printr-un
intermediar (cont.)
D
.13.4

Enet, 140.252.13 .13.183


C

192.252.1.183
Next = 140.252.13.183
(default)
.13.190
192.252.1.183
A B
.10.35 .10.33

Enet, 140.252.10
Enet 192.252.1.183 31
© Ion BICA
Exemplu de rutare printr-un
intermediar (cont.)
D
.13.4 Enet 192.252.1.183
Enet, 140.252.13 .13.183
192.252.1.183
Next = 140.252.13.4 C
(default)

192.252.1.183

.13.190
A B
.10.35 .10.33

Enet, 140.252.10

© Ion BICA 32
Exemplu de rutare printr-un
intermediar (cont.)
D
.13.4 Enet 192.252.1.183

Enet, 140.252.10 .13.183


Next = 140.252.11.2 C
(default)

.13.190
A B
.10.35 .10.33

Enet, 140.252.13

© Ion BICA 33
Fragmentarea pachetelor
• Pachetele pot sträbate una sau mai
multe subretele pânä la destinatie
• Nivelul legäturii de date din fiecare
subretea impune o limitä a lungimii
cadrelor - Maximum Transmission Unit
(MTU)
– Ethernet 1500
– FDDI 4352
– X.25 576
– Frame Relay 1600
– PPP 296..1500
• MTU nu se cunoaşte In avans!
Fragmentarea pachetelor pe traseu şi
reasamblarea lor la destinatie
Fragmentarea pachetelor (cont.)

© Ion BICA 35
Comenzi IP
• ifconfig (Unix) I ipconfig (Windows)
– configurare interfate de retea
• netstat
– afişare conexiuni de retea, tabela de rutare,
statistici, etc
• route
– controlul tabelei de rutare

© Ion BICA 36
Protocolul ICMP
• Pentru a realiza functiile de control sau de
rutare, protocolul IP (Internet Protocol)
lucreazä In conjunctie cu alte protocoale
de nivel retea :
– functii de control (ICMP)
– transmisii multicast (IGMP)
– actualizarea tabelelor de rutare (RIP, OSPF, BGP, …)
• Protocolul ICMP (Internet Control
Message Protocol) este un protocol
ajutätor ce permite:
– efectuarea de interogäri simple
– raportarea erorilor de transmisie a pachetelor IP
Formatul mesajelor ICMP

• Mesajele ICMP sunt Incapsulate In pachete IP


• Antet de 4 octeti:
– type (1 byte): tipul mesajului ICMP
– code (1 byte): subtipul mesajului ICMP
– checksum (2 bytes): suma de control (calculatä peste
Intreg mesajul ICMP)
• Informatii aditionale (min. 4 octeti)
– dacä nu sunt date de transmis, cei 4 octeti sunt setati pe
0
Interogäri ICMP

TypeICode Description
8/0 Echo Request
0/0 Echo Reply

13/0 Timestamp Request


14/0 Timestamp Reply

10/0 Router Solicitation


9/0 Router Advertisement
© Ion BICA 39
Raportarea erorilor

• Raportarea erorilor apärute In transmisia


pachetelor IP
• Mesajele de eroare sunt raportate
programului aplicatie de pe calculatorul
sursä
Raportarea erorilor (cont.)
ICMP Message

from IP datagram that triggered the error

IP header ICMP header IP header 8 bytes of payload

type code checksum

Unused (0x00000000 )

• Mesajul de eroare include header-ul IP


al pachetului care a generat eroarea
Impreunä cu primii 8 octeti de date

© Ion BICA 41
Mesaje de eroare

Type Code Description Reason

3 0–15 Destination Notification that an IP datagram could not be


unreachable forwarded and was dropped. The code field
contains an explanation.
5 0–3 Redirect Informs about an alternative route for the
datagram and should result in a routing table
update. The code field explains the reason for
the route change.
11 0, 1 Time Sent when the TTL field has reached zero
exceeded (Code 0) or when there is a timeout for the
reassembly of segments (Code 1)
12 0, 1 Parameter Sent when the IP header is invalid (Code 0) or
problem when an IP header option is missing (Code 1)

© Ion BICA 42
Mesaje de eroare (cont.)
Code Description Reason
0 Network No routing table entry is available for the
Unreachable destination network.

1 Host Destination host should be directly reachable, but


Unreachable does not respond to ARP Requests.

2 Protocol The protocol in the protocol field of the IP header


Unreachable is not supported at the destination.

3 Port The transport protocol at the destination host


Unreachable cannot pass the datagram to an application.

4 Fragmentation IP datagram must be fragmented, but the DF bit in


Needed the IP header is set.
and DF Bit Set

© Ion BICA 43
Comenzi ICMP
• ping
– folosit pentru a detecta dacä o statie este activä
– aplicatie client-server; serverul este implementat In
kernel
– mäsoarä timpul de räspuns (RTT - Roud Trip Time)
– din rationamente de securitate este, de regulä,
blocat de firewall-uri
• traceroute (Unix) / tracert (Windows)
– folosit pentru a determina ruta pe care sunt
transmise pachetele IP
– bazat pe ICMP şi UDP
• transmisia de pachete UDP cu TTL variabil (1,2,3,
…) pentru a determina ruterele intermediare prin
care trece pachetul; atunci când TTL=0 ruterul
abandoneazä pachetul şi Intoarce mesajul de
eroare “time exceeded”
• pachetele UDP sunt transmise pe un port
destinatie neutilizat; atunci când pachetul ajunge
Exemplu de ping
[foobar]# ping gatekeeper.dec.com
PING gatekeeper.dec.com (204.123.2.2): 56 data bytes
64 bytes from 204.123.2.2: icmp_seq=0 ttl=240 time=37 ms
64 bytes from 204.123.2.2: icmp_seq=1 ttl=240 time=35 ms
64 bytes from 204.123.2.2: icmp_seq=2 ttl=240 time=32 ms
64 bytes from 204.123.2.2: icmp_seq=4 ttl=240 time=35 ms
64 bytes from 204.123.2.2: icmp_seq=6 ttl=240 time=37 ms
64 bytes from 204.123.2.2: icmp_seq=7 ttl=240 time=33 ms
64 bytes from 204.123.2.2: icmp_seq=8 ttl=240 time=37 ms
64 bytes from 204.123.2.2: icmp_seq=9 ttl=240 time=54 ms
64 bytes from 204.123.2.2: icmp_seq=10 ttl=240 time=63 ms
64 bytes from 204.123.2.2: icmp_seq=11 ttl=240 time=34 ms
64 bytes from 204.123.2.2: icmp_seq=12 ttl=240 time=36 ms

----gatekeeper.dec.com PING Statistics----


13 packets transmitted, 11 packets received, 15% packet loss
round-trip (ms) min/avg/max = 32/40/63 ms

© Ion BICA 45
Exemplu de traceroute
[foobar]# traceroute gatekeeper.dec.com
traceroute to gatekeeper.dec.com (204.123.2.2), 30 hops max, 40 byte
packets
1 cs-gw3-esl (128.138.241.65) 1 ms 0 ms 0 ms
2 cs-gw-dmz (128.138.243.193) 3 ms 1 ms 2 ms
3 engr-cs.Colorado.EDU (128.138.80.141) 2 ms 2 ms 2 ms
4 hut-engr.Colorado.EDU (128.138.80.201) 2 ms 2 ms 2 ms
5 cuatm-gw.Colorado.EDU (128.138.80.2) 2 ms 2 ms 2 ms
6 den-edge-11.inet.qwest.net (205.169.250.49) 2 ms 5 ms 3 ms
7 den-edge-04.inet.qwest.net (205.171.16.169) 4 ms 2 ms 5 ms
8 den-core-01.inet.qwest.net (205.171.16.65) 5 ms 6 ms 8 ms
9 * sfo-core-03.inet.qwest.net (205.171.5.35) 28 ms 27 ms
10 sfo-core-02.inet.qwest.net (205.171.18.9) 28 ms 26 ms 27 ms
11 sjo-core-01.inet.qwest.net (205.171.5.121) 27 ms 27 ms 30 ms
12 sjo-edge-05.inet.qwest.net (205.171.22.46) 31 ms 31 ms 30 ms
13 maw-brdr-02.inet.qwest.net (205.171.4.122) 30 ms 33 ms *
14 a11-0-0-4.sanjose1-br1.bbnplanet.net (4.24.145.1) 35 ms 30 ms 35 ms
15 p2-0.sanjose1-nbr1.bbnplanet.net (4.0.3.193) 33 ms 32 ms 37 ms
16 p4-0.paloalto-nbr2.bbnplanet.net (4.0.1.1) 34 ms 34 ms 40 ms
17 * p1-0.paloalto-nbr1.bbnplanet.net (4.0.5.65) 34 ms 35 ms
18 p4-0-0.paix.bbnplanet.net (4.0.6.45) 36 ms 37 ms 40 ms
19 digital-gw1.pa-x.dec.com (4.0.2.114) 40 ms 34 ms 42 ms
20 core-gw1.pa-x.dec.com (204.123.1.1) 38 ms * 41 ms
21 gatekeeper.dec.com (204.123.2.2) 39 ms * 35 ms

© Ion BICA

46
Protocolul ARP
• Odatä ce un pachet a fost rutat cätre o
retea specificä, el trebuie furnizat unui
anumit host
• Pachetul poartä cu el doar adresa IP
destinatie
• Transmisia efectivä a datelor se face la
nivelul Legäturii de
Date (Nivelul 2) unde statiile sunt identificate
dupä adresa MAC
• ARP (Address Resolution Protocol) este un
protocol de mapare a adreselor IP In adrese
MAC
Translatarea adreselor cu ARP

Resolver FTP

TCP

ARP IP

Ethernet
Driver

Ethernet Ethernet
Driver Driver

ARP ARP IP

TCP

© Ion BICA 48
Translatarea adreselor cu ARP
(cont.)

© Ion BICA 49
Caracteristici ARP
• Cererea ARP foloseşte pachete de tip
“broadcast”
• Räspunsul ARP foloseşte pachete de tip
“unicast”
• Räspunsurile ARP sunt mentinute de
kernel Intr-o tabela (aşa numitul “cache-
ARP”). Inträrile din cache expirä dupä 20
de minute
• Toate host-urile din retea receptioneazä
mesajul cerere şi Isi actualizeazä
informatia din cache
• Comanda arp
– permite vizualizarea I modificarea inträrilor din
cache-ulu ARP
Formatul pachetelor ARP

© Ion BICA 51
Proxy ARP
• Host-ul A poate räspunde In numele host-ului B la
cererile ARP şi prin urmare, toate pachetele
destinate lui B vor fi transmise lui A; host-ul A le
retransmite mai departe lui B, prin functia de
rutare
• Poate fi folosit pentru transmisia de pachete Intre
subretele
Gratuitous ARP
• Detectarea conflictelor de adrese IP
• În cadrul secventei de bootare, host-ul
transmite o cerere ARP
pentru propria-i adresa IP
• Daca un alt host räspunde la aceastä
cerere, Inseamnä cä adresa IP
respectivä este deja asignatä
Translatarea adreselor IP
• Atunci când o organizatie se conecteazä
la Internet primeşte de la ISP un numär
(redus) de adrese IP publice (rutabile)
• Calculatoarele din reteaua internä
(Intranet) folosesc, de regulä, adrese
IP private:
– 10.0.0.0 .. 10.255.255.255
– 172.16.0.0 .. 172.31.255.255
– 192.168.0.0 .. 192.168.255.255
• Adresele IP private nu sunt rutate In
Internet!
Translatarea adreselor IP (cont.)

• Cum se poate realiza comunicatia


dintre un calculator din reteaua internä
şi un calculator din Internet?

© Ion BICA 55
Translatarea adreselor IP (cont.)
• Translatarea adreselor de retea (NAT -
Network Address Translation) este
mecanismul prin care se face maparea
Intre o adresa IP privatä şi o adresa IP
publicä
– IP masquerading
• Prin NAT se modificä header-ul
pachetului IP original (se schimbä
adresele IP)
– trebuie recalculatä suma de control
• NAT se realizeazä la nivelul ruterului ce
asigurä conectarea la Internet permitând
calculatoarelor din reteaua privatä sä
comunice cu calculatoarele din Internet
Basic Network Address Translation
(Basic NAT)

• Translatarea adreselor se face prin intermediul unei


tabele NAT
• Este nevoie de un pool de adrese IP publice

© Ion BICA 57
Network Address Port Translation
(NAPT)

• Translatare de adresä şi port


• Accesul In exterior se poate face printr-o singurä
adresä IP publicä

© Ion BICA 58
Nivelul transport
• Protocoale de tip end-to-end ce asigurä
servicii de comunicatie pentru nivelul
aplicatie
• Sunt implementate numai la nivelul host-
urilor
Porturi de comunicatie
• ID-uri folosite pentru a identifica
procesele (aplicatiile) Intre care se
realizeazä comunicatia
• Numär pe 16 biti (65.536 porturi per host)
• Porturi standard
– folosite de aplicatiile server standard
• Telnet (23Itcp), FTP (20,21Itcp), BOOTP (67,68Iudp),
WWW (80Itcp)
• fişierul sistem IetcIservices
– valori cuprinse Intre 1-1023
– asignate de IANA (Internet Assigned Number
Authority)
– pot fi folosite numai de cätre procesele
sistem sau programele executate de
utilizatori privilegiati
• Porturi temporare (efemere)
– folosite de aplicatiile client
– valori cuprinse Intre 1024-65535
Porturi de comunicatie (cont.)

© Ion BICA 61
Protocoale de nivel transport

© Ion BICA 62
Protocolul UDP
• Oferä servicii de tip datagram,
connectionless
• Interfatä simplä Intre nivelul aplicatie şi
nivelul retea
• Fiabilitate scäzutä – nu se garanteazä
livrarea datelor
• Nu asigurä controlul fluxului sau al erorilor
• Overhead redus
• Transmisii unicast şi multicast
Formatul datagramelor UDP

• Port Sursä
– identificä procesul care a trimis datagrama
• Port Destinatie
– identificä procesul cäruia Ii este destinatä datagrama
• Lungimea totalä a datagramei, In octeti
• Suma de control
– calculatä peste un pseudo-header IP şi datagrama UDP
propriu-zisä

© Ion BICA 64
Aplicatii UDP
• BOOTP (67,68Iudp)
• Trivial File Transfer Protocol (69Iudp)
• Domain Name System (53Iudp)
• Simple Network Management Protocol
(161Iudp)
• Remote Procedure Call (111Iudp)
• …

© Ion BICA 65
Protocolul TCP
• Protocol orientat conexiune
• Fiabilitate ridicatä – garanteazä livrarea
datelor
• Asigurä controlul fluxului şi al erorilor –
protocol cu fereasträ glisantä
• Full duplex – schimb de date In ambele
directii simultan
• Transmisii unicast
Formatul segmentelor TCP

© Ion BICA 67
Formatul segmentelor TCP (cont.)
• Port Sursä
– identificä procesul care a trimis datele
• Port Destinatie
– identificä procesul cäruia Ii sunt destinate datele
• Numär secventä
– fiecare octet din cadrul fluxului de date este numerotat
– 0 <= SeqNo <= 232 -1 ≈ 4.3 Gbyte
– numärul de secventä reprezintä numärul de ordine al
primului octet de date din cadrul segmentului
– numerotarea Incepe de la o valoare aleatoare
aleasä In momentul stabilirii conexiunii
• Numär confirmare
– numärul urmätorului octet pe care receptorul se aşteaptä
sä-l primeascä
– confirmärile sunt cumulative
– are semnificatie numai dacä flag-ul ACK este setat
• Lungime antet
– specificatä In cuvinte de 32 biti
© Ion BICA 68
Formatul segmentelor TCP (cont.)
• Flag-uri
– URG – segmentul contine un mesaj urgent
– ACK – numärul de confirmare din cadrul
segmentului este valid
– PSH – notificä receptorul sä transfere toate
datele din buffer cätre nivelul aplicatie;
transmis de regulä de emitätor atunci când
buffer-ul acestuia este gol
– RST – resetare conexiune
– SYN – sincronizare numere de secventä;
transmis In cadrul primului pachet de stabilire
a conexiunii
– FIN – emitätorul a terminat de transferat
datele; pentru a se Inchide complet
conexiunea, ambele pärti trebuie sä transmitä
câte un FIN
• Dimensiunea ferestrei
Formatul segmentelor TCP (cont.)
• Suma de control
– calculatä peste un pseudo-header IP, antetul TCP şi
zona de date
• Pointer date urgente
– offset-ul din cadrul segmentului pânä la care se aflä
datele urgente
– SeqNo <= Urgent Message <= SeqNo+Urgent
Pointer
– are semnificatie numai dacä flag-ul URG este setat
• Optiuni
– un singur octet ce contine tipul optiunii, sau
– numär variabil de octeti

• Padding
• Date
Stabilirea unei conexiuni TCP
• Three-way handshake

© Ion BICA 71
Închiderea unei conexiuni TCP

© Ion BICA 72
Exemplu de sesiune TCP
1. 172.20.1.21.1303 > 172.20.0.81.23: S 2668246764:2668246764(0)
win 65535 <mss 1460,nop,nop,sackOK>
2. 172.20.0.81.23 > 172.20.1.21.1303: S 1722058968:1722058968(0)
ack 2668246765 win 61320 <mss 1460>
3. 172.20.1.21.1303 > 172.20.0.81.23: . ack 1 win 65535
4. 172.20.1.21.1303 > 172.20.0.81.23: P 1:22(21) ack 1 win 65535
5. 172.20.0.81.23 > 172.20.1.21.1303: P 1:13(12) ack 22 win 61299
6. 172.20.1.21.1303 > 172.20.0.81.23: P 22:25(3) ack 13 win 65523
7. 172.20.1.21.1303 > 172.20.0.81.23: P 25:28(3) ack 13 win 65523
8. 172.20.1.21.1303 > 172.20.0.81.23: P 28:31(3) ack 13 win 65523
9. 172.20.0.81.23 > 172.20.1.21.1303: P 13:28(15) ack 25 win 61317
10. 172.20.1.21.1303 > 172.20.0.81.23: P 31:40(9) ack 28 win 65508
11. 172.20.0.81.23 > 172.20.1.21.1303: P 28:46(18) ack 40 win 61311
...
12. 172.20.0.81.23 > 172.20.1.21.1303: F 1052:1052(0) ack 107 win 61320
13. 172.20.1.21.1303 > 172.20.0.81.23: . ack 1053 win 64484
14. 172.20.1.21.1303 > 172.20.0.81.23: F 107:107(0) ack 1053 win 64484
15. 172.20.0.81.23 > 172.20.1.21.1303: . ack 108 win 61319

© Ion BICA 73
Aplicatii TCP
• File Transfer Protocol (20,21Itcp)
• Telnet (23Itcp)
• Simple Mail Transfer Protocol (25Itcp)
• Hypertext Transfer Protocol (80Itcp)
• Post Office Protocol (110Itcp)
• Internet Message Access Protocol (143Itcp)
• Lightweight Directory Access Protocol
(389Itcp)
• …

© Ion BICA 74
Domain Name System (DNS)
• Adresele IP sunt folosite pentru a identifica
un host In retea
• Adresele IP sunt dificil de memorat de cätre
utilizatori
– e dificil sä memorezi numere ( ex. 193.231.21.10)
– e mult mai uşor sä retii nume (ex. www.mta.ro)
• Sistemul numelor de domenii (DNS – Domain
Name System)
permite conversia numelor In adrese IP şi
invers
Nume de domenii
• Numele de domenii sunt organizate ierarhic
astfel Incât sä se asigure unicitatea şi sä poatä
fi uşor de retinut
• Domenii primare:
– generice: .mil, .gov, .org, .edu, .com, .int, .net, .biz, .info
• Internet Corporation for Assigned Names
and Numbers (ICANN) -
http:IIwww.icann.orgI
– state: .us, .uk, .fr, .ro,…
• codul tärii format din 2 caractere (ISO 3166)
• Sub-domenii:
– firme sau organizatii
• Nume de calculatoare
• Fully Qualified Domain Name (FQDN)
– concatenare de etichete (“www”,“mta”,”ro”) separate
prin punct (“.”)
– fiecare etichetä poate sä aibä maxim 63 de caractere
– lungimea maximä este de 255 caractere
– www.mta.ro sau www.mta.ro.
Ierarhia numelor
. (root)

Top-level
domanins

mil gov org edu com … ro

mta

www mail cs

lms indy

© Ion BICA 77
Arhitectura DNS
• Bazä de date distribuitä
• Spatiul de nume se divide In zone care nu trebuie sä
se suprapunä
• O zonä poate include unul sau mai multe domenii
• Pentru fiecare zonä trebuie sä existe un server de
nume primar (autoritar) şi eventual unul sau mai
multe servere secundare (replici) care realizeazä
conversia (rezolutia) de nume pentru host-urile din
zona respectivä

mta.ro

mmtta
mta.ro a.r.roo
m ta .r o DD
N S D B
DNS DB DNNSSDDBB
DNS Root Servers
• Folosite
pentru a
afla care
sunt
serverele
autoritare
pentru
top-level
domains

• 13
servere
In total

• Servere
critice
pentru
functiona
DNS Root Servers (cont.)
A.ROOT-SERVERS.NET. (VeriSign,
Dulles, VA) 198.41.0.4
B.ROOT-SERVERS.NET. (ISI, Marina
Del Rey CA) 192.228.79.201
C.ROOT-SERVERS.NET. (Cogent
Communications) 192.33.4.12
D.ROOT-SERVERS.NET. (University
of Maryland) 128.8.10.90
E.ROOT-SERVERS.NET. (Nasa Ames
Research Center) 192.203.230.10
F.ROOT-SERVERS.NET. (Internet
Systems Consortium) 192.5.5.241
G.ROOT-SERVERS.NET. (US
Department of Defense) 192.112.36.4
H.ROOT-SERVERS.NET. (US Army
Research Lab) 128.63.2.53
I.ROOT-SERVERS.NET.
(AutonomicaINORDUnet)
Rezolutia de nume
1. Atunci când o aplicatie
are nevoie sä facä o
conversie de nume,
apeleazä un program
special denumit
resolver (client DNS)

2. Resolver-ul
contacteazä serverul
de nume (server DNS)

3. Serverul de nume face


conversia şi returneazä
adresa IP resolver-ului

4. Resolver-ul comunicä adresa IP


aplicatiei

• Servere de nume: BIND (Berkeley


Internet Name Domain)
• Resolvere interactive: nslookup,
host sau dig
Interogäri DNS
• Existä douä tipuri de interogäri DNS:
– recursive
– iterative (incrementale)
• Interogäri recursive: dacä serverul DNS
nu cunoaşte adresa pentru numele
solicitat, atunci va interoga alte servere
DNS pentru a afla räspunsul
• Interogäri iterative: daca serverul DNS
nu ştie sä räspundä direct, atunci va
returna adresa altui server DNS (numit
şi referral) care ar putea sä räspundä la
interogare
• DNS foloseşte portul 53 UDP I TCP
– UDP este folosit pentru interogäri
– TCP este folosit pentru transferurile zonale
Interogäri recursive

• Într-o interogare recursivä, resolver-ul se aşteaptä


sä primeascä un räspuns de la server
• Serverul de nume interogheazä pe rând celelalte
servere plecând de la root pânä aflä räspunsul
© Ion BICA 83
Interogäri iterative

• Într-o interogare iterativä resolver-ul aflä de la


serverul de nume local care este serverul autoritar
pentru domeniul respectiv
• Toate interogärile sunt fäcute de resolver

© Ion BICA 84
Caching
• Rezultatele interogärilor se tin In
cache-ul local pentru a fi refolosite
dacä e cazul
• Toate räspunsurile DNS includ un TTL ce
specificä cât timp poate fi tinutä
informatia In cache
• Dacä räspunsul la o interogare se aflä In
cache atunci nu mai este cazul sä se
contacteze alt server de nume
• În cazul In care räspunsul este dat din
cache atunci acesta este marcat ca fiind
“unauthoritative”
Tipuri de Inregisträri
• Inträrile din baza de date DNS poartä
denumirea de resource record (RR)
• Principalele tipuri de Inregisträri:

Code Name Descript


ion
1 A A 32 bit IPv4 address.

2 N The DNS name of an authoritative name


S server for a domain.
5 CNAME A canonical name or alias for a DNS name.

1 PT A pointer to a namespace used for reverse


2 R lookup.
1 M Name of the email server for the domain.
5 X
2 AAAA A 128 bit IPv6 address.
8

© Ion BICA 86
Tipuri de Inregisträri (cont.)
$TTL 86400
abc.ro. IN SOA
ns.abc.ro.
admin@abc.ro. (
1 ; serial
28800 ; refresh
7200 ; retry
604800 ; expire
86400 ; ttl
)
;
abc.ro. IN NS
ns.abc.ro. abc.ro. IN
MX mail.abc.ro.
;
localhost IN A
127.0.0.1 ns.abc.ro.
IN A
10.0.1.10 mail.abc.ro.
IN A
10.0.1.15 pc1.abc.ro.
Reverse DNS
. (root)
• Conversia
adreselor IP In
nume
arpa ro • Ierarhie
separatä bazatä
pe nume IP
• 193.231.21.10 este
in-addr mta
scris
ca 10.21.231.193.in-
addr.arpa
193 www • ATM gestioneazä
spatiul193.231.21.10
de nume
21.231.193.in-
231
addr.arpa
21 • Înregisträri de tip
Standardizarea TCPIIP
• Internet Society
– promovarea folosirii şi accesului la Internet
• Internet Architecture Board (IAB)
– supervizarea dezvoltärii din punct de vedere tehnic
a Internetului
• Internet Research Task Force (IETF)
– crearea de noi protocoale, aplicatii, arhitecturi şi
tehnologii pentru
Inter
net
• Internet Engineering Task Force (IETF)
– promovarea standardelor Internet
– colaborare strânsä cu W3C şi ISOIIEC
– Internet Engineering Steering Group (IESG)
– procesul de standardizare
Draft -> Request for Comment (RFC) ->
Probleme de securitate
• Atunci când au fost proiectate protocoalele
TCPIIP, securitatea nu a reprezentat o
prioritate
• Pachetele circulä prin intermediul unor
noduri intermediare nesigure
• În majoritatea cazurilor, pachetele circulä In
clar prin retea
• Adresele IP pot fi uşor falsificate
• Existenta unor puncte unice de defectare
(DNS)
Atacuri pasive

• Interceptarea traficului (packet sniffing)


– foarte multe aplicatii transmit date confidentiale
(parole) In clar
• Analiza traficului

© Ion BICA 91
Atacuri active

• Mascarada
• Modificarea continutului pachetelor
• Deturnarea sesiunilor
• Blocarea functionärii serviciilor (Denial of
Service I Distributed
Denial of Service)
© Ion BICA
Mecanisme de protectie
• Autentificarea entitätilor
• Criptarea traficului
• Sisteme Firewall
• Sisteme IDSIIPS
• …

© Ion BICA 93
© Ion BICA 94
Securitatea la nivel retea
locala (LAN)
Securitatea la nivel LAN
De ce securitate la nivel LAN?
Atacuri specifice si contramasuri
– Atacuri de tip “MAC”
– Atacuri de tip “DHCP”
– Atacuri de tip “ARP”
Alte tipuri de atacuri

2
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 CISIFBI (Computer
Crime and Security Survey,
http:IIi.cmpnet.comIgocsiIdb_areaIpdfsIfbiI
FBI2005.pdf 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
De ce securitate la nivel LAN?
Atacuri specifice si contramasuri
– Atacuri de tip “MAC”
– Atacuri de tip “DHCP”
– Atacuri de tip “ARP”
Alte tipuri de atacuri

4
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
1I3

6
Functionarea normala a unui switch
2I3

7
Functionarea normala a unui switch
3I3

8
Atac de tip “MAC Flooding”

Depasirea capacitatii tabelei MAC

9
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 (Mecanismul “Port Security”)
• blocarea portului in caz de depasire
• informarea administratorului prin transmiterea
unei trape SNMP

10
Securitatea la nivel LAN
De ce securitate la nivel LAN?
Atacuri specifice si contramasuri
– Atacuri de tip “MAC”
– Atacuri de tip “DHCP”
– Atacuri de tip “ARP”
Alte tipuri de atacuri

11
DHCP – Descriere sumara

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
Atacul de tip “DHCP Starvation”

Attacker

Atacatorul incearca sa inchiriezelobtina toate adresele IP


disponibile prin DHCP
Atac de tip DoS

13
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”
1l2

15
Atacul de tip “Rogue DHCP Server”
2l2

• 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”

• 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)
• 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”
Securitatea la nivel LAN
• De ce securitate la nivel LAN?
• Atacuri specifice si contramasuri
– Atacuri de tip “MAC”
– Atacuri de tip “DHCP”
– Atacuri de tip “ARP”
• Alte tipuri de atacuri

18
ARP – Descriere sumara 1l2

• 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 2l2

• In conformitate cu standardul ARP, unei statii ii este


permis sa transmita un raspuns ARP nesolicitat, sub
forma de unicastlbroadcast, 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
IPlMAC
• Atacurile de tip “ARP” folosesc aceasta posibilitate, pentru
redirectionarea traficului
Atac de tip “ARP” 1l3

• Atacatorul modifica
tabelele ARP ale
ruterului si PC-ului

21
Atac de tip “ARP” 2l3

• Tot traficul este, astfel, interceptat

22
Atac de tip “ARP” 3l3

• In final, atacatorul corecteaza tabelele ARP


• Traficul revine la normal

23
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 IPlMAC 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
• De ce securitate la nivel LAN?
• Atacuri specifice si contramasuri
– Atacuri de tip “MAC”
– Atacuri de tip “DHCP”
– Atacuri de tip “ARP”
• Alte tipuri de atacuri

25
Securitatea la nivel LAN
• Atacuri de tip “Spoofing” (Disimulatie)
• Atacuri de tip “Spanning Tree”
• Atacuri de tip “VLAN Hopping”

26
27
Sisteme Firewall
Agenda
• Introducere
• Terminologie
• Tipuri de firewall
• Modalitati de implementare
• Caracterisitici cheie

2
Introducere - Securitatea retelelor
De ce este greu de realizat ?
• Sisteme interconectate
– Acces facil (in crestere)
• Pentru utilizatori
• Pentru alte sisteme
• Securitate distribuita
– Datele nu mai exista intr-un singur loc (sunt distribuite)
– Securitatea trebuie coordonata

Platforme Probleme
diferite
•Unix, Linux –“Patches”, “Bugdiferite
fixes”, suspiciunile cu
•Windows privire la un program bine scris
•Mac OS – Viermii
•Nov •The Internet Worm, Michaelangelo
ell •Melissa, Kournakova, CodeRed, MyDoom
•Open VMS •Blaster, Nimda, SQLSlammer, SoBig
•Bagle, Sdbot, Nachi, W32.Bugbear
•W32/Palyh, Santy, Sober, Zotob
•Commwarrior.B, TK, etc
3
Securitatea retelelor - Riscuri
• Resurse si Amenintari
– Exemple de resurse
• Servere Web, Mail
• Servere de aplicatii, servere de baze de date
• Software-ul, aplicatiile, datele
– Exemple de amenintari
• Angajati rau intentionati sau incompetenti
• Cod executabil continand vicii ascunse
• Crackers
• Obiectivele principale pentru securizarea fiecarei
resurse sunt:
• Disponibilitatea
• Confidentialitatea
• Integritatea
• Fiecare amenintare trebuie examinata din
perspectiva gradului in care afecteaza cele trei
obiective
• Zone de abordare a securitatii, pentru protectia
resurselor
– Securitatea la nivelul masinii
• Securitatea software-ului
• Securitatea fizica
– Securitatea la nivelul datelor
Zone de abordare a securitatii
• Securitatea la nivelul datelor
– Datele nu trebuie sa fie accesate sau modificate
de catre persoane sau programe neautorizate
– Asigurarea faptului ca datele nu pot fi alterate,
sterse sau pierdute este critica pentru
functionalitatea aplicatiilor
• Proceduri de salvare si restaurare
• Jurnalizare si audit
• Mecanisme de asigurare a integritatii (sume de
control, functii de hashing criptografic, etc)
• Securitatea la nivelul
comunicatiilor
– Conectarea la retea asigura accesul la date si
resurse de calcul
– Probleme:
• Care calculatoare au acces ?
• Ce protocoale se vor utiliza ?
• Cum se va asigura accesul si cui ?
• Ce tehnologii vor fi folosite ?
Agenda
• Introducere
• Terminologie
• Tipuri de firewall
• Modalitati de implementare
• Caracterisitici cheie

6
Terminologie
• Pachet
• Filtru de pachete fara stare (“stateless”)
• Filtru de pachete cu stare (stateful)
• Gateway de aplicatie
• DMZ
• Retele protejate si neprotejate
• Inbound vs. outbound

7
Terminologie – definitii
• Pachet – unitatea de informatie creata de un protocol de retea, pentru
a transporta date si informatie de control. In contextul stivei TCP/IP se
mai numeste si datagrama.
• Filtru de pachete fara stare (“Stateless Packet Filter”) – o
modalitate de filtrare a traficului
(pachetelor) bazata pe numarul de port, tipul de protocol si/sau adresa, fara a
lua in considerare contextul
• Filtru de pachete cu stare (“Stateful Packet Filter”) – un
filtru de pachete care ia in considerare relatia dintre acestea (contextul)
si mentine (memoreaza atat timp cat este necesar) informatia cu privire
la conexiunile deschise
• Gateway de aplicatie – o modalitate de intermediere securizata a
accesului clientilor la servicii, numita adesea si “proxy” sau “relay”
• DMZ (DeMilitarized Zone) – un segment de retea dispus intre
exterior (o retea neprotejata, Internet) si reteaua interna (protejata),
avand rolul de a intermedia schimbul de informatii. Este reteaua in care,
de regula, sunt dispuse serviciile publice si gateway-urile de aplicatie.
• Retele protejate si neprotejate
– Retelele protejate sunt localizate in spatele unui firewall, fiind protejate
prin politicile acestuia
– Retelele neprotejate, cum ar fi Internet-ul, stau in fata unui
firewall si nu sunt protejate de catre politicile acestuia
• Directii ale traficului
– Inbound = spre interiorul zonei protejate de firewall
– Outbound = spre exteriorul zonei protejate de firewall
Agenda
• Introducere
• Terminologie
• Tipuri de firewall
• Modalitati de implementare
• Caracterisitici cheie

9
Ce este un Firewall ?

Reguli care determina

Cine ? Cand ?
Ce ? Cum ?

PC

IINTERNET

Retea Privata
Firewall
10
Ce nu este un Firewall ?
• Un panaceu pentru toate problemele de
securitate din retea

• O arhitectura de securitate completa

• Ceva ce se configureaza “din zbor”

• Un mijloc de protectie impotriva virusilor

11
Tipuri de firewall
• Packet filtering firewall
• Stateful inspection firewall
• Proxy firewall
• Personal firewall
• NAT firewall

12
Packet filtering firewall 1/2

• Permite sau interzice pachetele, functie de


adresa IP
sursa/destinatie sau port (TCP/UDP)
• Nu memoreaza o informatie de stare;
deciziile sunt luate numai dupa continutul
pachetului curent, fara a lua in considerare
contextul
• Este o facilitate in software-ul oricarui ruter
sau switch
• Performanta inalta
• Fragmentarea pachetelor poate cauza
probleme
Packet filtering firewall 2/2

Filtru de pachete fara stare (stateless) –


sunt necesare doua liste de control al
accesului:
1. Permite traficul HTTP de la 10.0.0.0/24, spre
www.yahoo.com
2. Permite traficul HTTP de la www.yahoo.com, spre
10.0.0.0/24
Stateful inspection firewall 1/2

• Este un filtru de pachete


• Mentine o informatie de stare
Stateful firewall inspecteaza si memoreaza
informatii de stare pentru fiecare conexiune
ce trece prin firewall
• Pentru asta, firewall-ul trebuie sa inspecteze fiecare
pachet
• Odata ce un pachet este identificat ca facand
parte dintr-o conexiune stabilita, procesarea
acestuia poate fi optimizata (lua o cale mai
scurta)
• Performanta inalta
• Cel mai popular firewall
Stateful inspection firewall 2/2

Este suficienta o singura lista de control al accesului:


1. Permite traficul HTTP de la 10.0.0.0/24, spre
www.yahoo.com

16
Proxy Firewall
• Foloseste o aplicatie proxy specifica
• Are acces la nivel de protocol

• Toate cererile si raspunsurile trec prin proxy server,


validate de acesta
• Exista doua conexiuni separate: client-proxy, proxy-
server extern(intern)
• Fiecare serviciu are nevoie de un proxy separat
– Nu toate serviciile suporta proxy
Personal firewall
• Versiune simplificata a unui firewall de retea, destinata
calculatoarelor personale
• Interzice conexiunile de intrare, daca nu au fost explicit
permise
• Inspecteaza traficul de intrare/iesire si protejeaza
laptop-urile si desktop-urile de unele atacuri
• Se recomanda utilizarea coroborata cu o solutie de Host
Intrusion Prevention
Systems (HIPS)
• Exemple de personal firewall:
– ZoneAlarm (www.zonelabs.com)
– BlackICE Defender (http://blackice.iss.net)
– Tiny Personal Firewall (www.tinysoftware.com)
– Norton Personal Firewall (www.symantec.com)
– Windows XP Firewall (activare: Start -> Settings -> Control
Panel, selectare “Local Area
Connection”, apasare buton “Properties”, click pe tab-ul
“Advanced”)
NAT Firewall

• NAT (Network Address Translation) –


modalitate de translatare a adreselor IP bazata pe mapari statice
sau dinamice (“many to many”), utilizand un spatiu (“pool”) de
adrese IP special destinat:
– NAT-ul static nu ofera nici un fel de protectie
– La NAT-ul dinamic sursa este “vizibila” atat timp cat translatia este activa
– NAT-ul nu asigura facilitati de securitate L3 sau L4, comune firewall-
urilor (verificarea secventei TCP, verificarea fragmentelor, etc)
– NAT-ul nu este un mijloc de securitate

• PAT (Port Address Translation) – modalitate de


translatare a adreselor IP sursa in care se foloseste maparea
acestora intr-o singura adresa IP (“many to one”; de regula, cea a
interfetei externe)
– PAT-ul este un mecanism la nivel L4, care blocheaza fluxurile de date
nedefinite
– La fel ca la NAT, PAT-ul nu asigura facilitati de securitate L3 sau L4
– Nu inlocuieste un firewall, dar este mai bun decat nimic
Agenda
• Introducere
• Terminologie
• Tipuri de firewall
• Modalitati de implementare
• Caracterisitici cheie

20
Modalitati de implementare firewall

• Sistem de operare specializat, securizat


• Niveluri de performanta/pret multiple
• Usurinta in administrare

• Ruleaza pe sisteme de operare de uz


general
• Pe hardware de uz general
• Nivel de performanta cel mult mediu

• Nivel foarte inalt de performanta


• Se integreaza in infrastructura de retea
existenta

• Asigura o protectie a investitiei


• Dedicat conexiunilor WAN/Internet
• Trebuie avut in vedere gradul de
afectare a performantei de rutare a
pachetelor (in pps – packet per
second)
Produse firewall de retea
• Cisco PIX Firewall, Cisco ASA Firewall si Cisco
IOS Firewall
• Check Point VPN-1/FireWall-1 NGX
• Juniper NetScreen
• Fortinet FortiGate
• Secure Computing SnapGear
• SonicWall Pro Series Firewall
• Stonesoft StoneGate
• Linux netfilter/iptables

22
Agenda
• Introducere
• Terminologie
• Tipuri de firewall
• Modalitati de implementare
• Caracterisitici cheie

23
Necesitatea tratarii avansate a
protocoalelor
• Unele protocoale sau aplicatii:
– negociaza conexiuni pe porturi alocate in mod
dinamic
– porturile negociate sau adresele IP sunt incapsulate
in campul de date
• Un firewall trebuie sa inspecteze pachetul
in campul de date si trebuie sa execute
urmatoarele operatiuni, functie de
protocol sau aplicatie:
– sa deschida sau sa inchida intr-un mod sigur
porturile sau adresele IP
negociate, pentru a permite conexiuni de tip client-
server prin firewall
– in cazul utilizarii NAT, sa modifice adresele IP si
in interiorul pachetelor de date
– sa inspecteze pachetele de date pentru a
detecta eventualele atacuri, sau utilizarea
Exemplu – Protocolul FTP

Modul standard Modul pasiv


Server Server
Client Client

Data Command Command Data Data Command Command Data


port port port port port port port port
20 21 2008 2010 1490 21 2008 2010

Port 2010 Passive?

Port 2010 OK Passive OK Port 1490

Data Data

25
Exemplu – Aplicatiile multimedia

• Protocoale
• H.323 v1, v2
• SIP
TCP or UDP
• SCCP request
• Aplicatii
• Cisco VoIP, IP Telephony, Video
Conference
• Microsoft NetMeeting
• Intel Video Phone
• CUseeMe Networks
•MeetingPoint
Additional
•CUseeMe Pro UDP or TCP

• VocalTel high ports


may be opened
•Internet Phone
•Gatekeeper

26
Referinte
• SAFE Layer 2 Security In-depth
http://www.cisco.com/en/US/netsol/ns340/ns394/ns171/n
s128/networking_solution
s_white_paper09186a008014870f.shtml
• “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
28
Sisteme pentru
Detectarea /
Prevenirea
Intruziunilor (IDS/IPS)
DefiniŃii
Intruziune
– set de acŃiuni având ca obiectiv
compromiterea securităŃii unui calculator /
reŃea de calculatoare
Detectarea intruziunilor (intrusion detection)
– procesul de identificare şi combatere a intruziunilor
Sisteme pentru detectarea intruziunilor (IDS)
– unelte şi metode ce ajută la identificarea,
evaluarea şi raportarea intruziunilor
– echivalent cu sistemele de securitate fizică:
camere de supraveghere, senzori de mişcare,
etc
Necesitatea utilizärii unui IDS
Cea de-a doua linie
de apärare dupä
firewall
– principiul apärärii în adâncime
(defence in depth)
– o serie de atacuri nu pot
fi stopate de cätre
firewall (CodeRed,
Nimda, etc)
Necesitatea utilizärii unui IDS
(cont.)
Detecteazä atacuri ce nu pot fi
prevenite de cätre celelalte controale
de securitate
Oferä o imagine asupra atacurilor la care
este supusä In mod curent o organizatie
Instrument de mäsurä a eficientei
controalelor de
securitate implementate
Furnizeazä dovezile necesare pentru
tragerea la räspundere a atacatorului
Terminologie
fals pozitiv (false positive)
– activitätile normale sunt considerate atacuri
fals negativ (false negative)
– activitätile malitioase nu sunt detectate
atac de tip “low and slow”
atac I virus “in the wild”
atac I virus “in the zoo”

© Ion BICA 5
Arhitectura unui IDS

© Ion BICA 6
Tipuri de IDS
Functie de modul de colectare a
evenimentelor
– IDS la nivel retea (NIDS – Network based IDS)
– IDS la nivel host (HIDS – Host-based IDS)
– IDS la nivel aplicatie
Functie de mecanismul de
detectie folosit
– IDS bazat pe semnäturi (signature based)
– IDS bazat pe anomalii (anomaly based)
Functie de modul de räspuns
la intruziuni
– IDS pasive
– IDS active
IDS la nivel retea
• Monitorizarea traficului din retea
– captare şi analizä pachete
• Senzori cu interfete de retea ce opereazä In
promiscuous mode
(captarea tuturor pachetelor din retea)
– retele bazate pe switch-uri (spanning port)
• Asamblarea pachetelor
– fragmentare, pachete eronate, etc
• Imunitate la atacuri (hardening)

© Ion BICA 8
IDS la nivel retea (cont.)
• Avantaje:
– scalabilitate ridicatä (cu câtiva senzori bine plasati se
poate monitoriza o retea
Intreagä)
– nu afecteazä performantele sistemelor monitorizate
– independent de sistemul de operare
– poate opera astfel Incât sä fie invizibil pentru atacatori
(stealth mode)
• Dezavantaje:
– nu protejeazä sistemele Impotriva utilizatorilor interni
– pot rata pachete In cazul unui volumul mare de trafic
(~Gbps)
• folosirea mai multor senzori In paralel
• implementarea hardware a functiilor critice (appliances)
– nu poate analiza traficul criptat (VPN)
– poate identifica doar faptul cä un atac a fost initiat nu şi
dacä a avut succes
IDS la nivel retea (cont.)

© Ion BICA 10
IDS la nivel host
• Monitorizarea evenimentelor din cadrul unui
sistem de calcul
– log-uri sistem
– procese active (hacker tools, rootkits)
– integritate fişiere sistem
• Permite detectarea atacurilor precum şi
evaluarea pagubelor produse de acestea

© Ion BICA 11
IDS la nivel host (cont.)
• Avantaje:
– nu necesitä echipamente suplimentare – se
instaleazä pe sistemele monitorizate
– pot detecta atacuri ce nu pot fi väzute de cätre un NIDS
(ex. Trojan Horse)
– functioneazä şi In cazul criptärii traficului
• Dezavantaje:
– scalabilitate redusä
– afecteazä performanta sistemelor monitorizate
– odatä compromis sistemul, IDS-ul poate fi dezactivat
– nu poate detecta atacuri de scanare a retelei, DoS, etc

© Ion BICA
IDS la nivel host (cont.)

© Ion BICA 13
IDS la nivel aplicatie
• Subclasä a HIDS
• Monitorizarea evenimentelor din cadrul unei
aplicatii
• Avantaje:
– pot monitoriza interactiunea dintre
utilizator şi aplicatie
• Dezavantaje:
– In general, log-urile de aplicatie sunt mai putin
protejate
IDS bazat pe semnäturi
• Similar sistemelor antivirus
• Fiecare atac cunoscut pânä In momentul de
fatä are o semnäturä - elementele
caracteristice I modul de desfäşurare al
atacului
– Exemplu: land attack - pachete IP având adresa
sursä identicä cu adresa destinatie
• IDS dispune de o bazä de date de semnäturi ce trebuie
actualizatä periodic
• Presupune acumularea de cunoştinte despre
fiecare atac In parte pentru construirea
semnäturii
– knowledge
based IDS
• Cel mai räspândit tip de IDS
IDS bazat pe semnäturi (cont.)

© Ion BICA 16
IDS bazat pe semnäturi (cont.)
• Avantaje:
– eficienta sistemului depinde modul In care este
actualizatä baza de date de semnäturi
– numär relativ scäzut de alarme de tip false
positives
– oferä informatii detaliate despre tipul de atac
• Dezavantaje:
– nu poate detecta noi tipuri de atacuri
– cu cât baza de date de semnäturi este mai
mare cu atât sistemul este mai lent
(implementäri hardware)
IDS bazat pe anomalii
• Anomalie = deviere de la starea normalä
• Learning mode – construirea unui profil al stärii normale a
sistemului
– acuratetea profilului depinde de durata procesului de Invätare
– pe durata procesului de Invätare, nu trebuie sä existe atacuri In
sistem
• Detection mode – compararea stärii curente cu cea
prestabilitä
– orice deviere de la modul de comportare normal este
interpretatä drept un posibil atac ce trebuie investigat
• Analizä statisticä pentru detectarea anomaliilor cu
privire la traficul din retea sau activitatea utilizatorilor
– atunci când o anomalie depäşeşte un anumit prag, este generatä
o alarmä
– alegerea valorii de prag este foarte importantä!
IDS bazat pe anomalii (cont.)

© Ion BICA 19
IDS bazat pe anomalii (cont.)
• Anomalii In comportament
– cine, când şi de unde se conecteazä?
– Incärcarea medie a procesoarelor
• Anomalii de protocol
– analiza corectitudinii modului de desfäşurare a unui
protocol de retea (formatul pachetelor, ordinea In
care acestea sunt transmise, etc)
– 90% din atacuri sunt de acest tip!
– mod de derulare teoretic (conform RFC) I practic (specific
fiecärei implementäri)
• Anomalii de trafic
– se ştie In general cine cu cine dialogheazä şi se
monitorizeazä traficul pentru a determina abateri de
la normä
IDS bazat pe anomalii (cont.)
• Avantaje:
– pot detecta tipuri noi de atacuri
– pot detecta atacuri de tip “low and slow”
• Dezavantaje:
– numär relativ mare de alarme de tip false positives
• configuratia sistemelor se modificä In mod constant!
– transmite alarme generice
• personal specializat pentru investigarea cauzelor!

© Ion BICA 21
Räspunsul la atacuri
• Räspunsuri pasive
– alarme şi notificäri
– trape SNMP
• Räspunsuri active
– TCP reset
– modificare ACL din router I firewall
– colectare informatii suplimentare despre atacator
– contraatac

© Ion BICA 22
Räspunsul la atacuri (cont.)

© Ion BICA 23
Räspunsul la atacuri (cont.)

© Ion BICA 24
Räspunsul la atacuri (cont.)

© Ion BICA 25
Räspunsul la atacuri (cont.)

© Ion BICA 26
Managementul IDS

© Ion BICA 27
Managementul IDS (cont.)

© Ion BICA 28
Managementul IDS (cont.)

© Ion BICA 29
Sisteme pentru prevenirea
intruziunilor
• Intrusion Prevention Systems (IPS)
– prevenire intruziuni
– opereazä inline
• Combinä functionalitäti de IDS şi firewall
– application layer firewall
• Noua generatie de IDS

© Ion BICA 30
IDS vs. IPS

© Ion BICA 31
Produse IDSIIPS
• Snort
• Juniper NetScreen IDP
• Cisco IPS
• ISS Proventia I RealSecure
• TippingPoint IPS
• Check Point InterSpect
• McAfee IntruShield

© Ion BICA 32
Gartner Magic Quadrant for
Network Intrusion Prevention Systems Appliances, 1H08

© Ion BICA 33
Concluzii
• Majoritatea IDSIIPS actuale folosesc ca mecanism de
detectie semnäturile şi anomaliile de protocol
• Efortul de administrare al unui IDSIIPS este destul de
ridicat
– tuning, investigare alarme, etc
– managed services (outsourcing)
• Eficientä scäzutä In cazul atacurilor “low and slow”
• Hardware vs. software IDS
• Reactioneazä la atacuri In loc sä le previnä
• Tendinta este de integrare a functiei de IDS In cadrul
firewall-urilor (Gartner)
Referinte
• Cärti:
– C. Endorf, G. Schultz, J. Mellander - "Intrusion
Detection & Prevention", McGraw-Hill, 2004
• Articole:
– NIST Special Publication on Intrusion Detection
Systems (SP800-31)
– Cisco Systems - “The Science of IDS Attack
Identification”
– Juniper Networks - "Intrusion Detection and
Prevention“
© Ion BICA 36
Unelte pentru
Testarea
SecurităŃii
ReŃelelor
Unelte uzuale
• Sniffere de pachete
• Scannere de porturi
• Scannere de vulnerabilitäti
• Unelte pentru verificarea integritätii
fişierelor

© Ion BICA 2
Sniffers
• Un sniffer de pachete este un sistem a
cärui placä de retea opereazä în modul
promiscuous şi capteazä toate pachetele
transmise în retea

Host A Host B

Sniffer

© Ion BICA 3
Sniffers (cont.)
• Capteazä în timp real toate pachetele
transmise în retea
• Filtrare pachete (în momentul captärii
sau al afişärii) dupä diferite criterii
• Afişeazä informatii detaliate despre fiecare
pachet în parte (list
/ tree view)
• Unealtä independentä sau modul
component în cadrul altui sistem
(IDS/IPS, de exemplu)
• Diagnosticarea problemelor (inclusiv cele de
securitate)
apärute în cadrul retelelor – analizor de retea
• Jurnalizarea traficului din retea în vederea
analizei ulterioare în cazul aparitiei unui
incident de securitate – forensics analysis
Snnifers - Produse
• tcpdump (http://www.tcpdump.org )
– platforme Unix
– necesitä privilegii de superuser pentru a fi rulat
– utilitar în linie de comandä
• WinDump – versiunea pentru Windows a
tcpdump
(http://www.winpcap.org/windump/ )
• Ethereal (http://www.ethereal.com )
– interfatä graficä
– disponibil pe aproape toate tipurile de platforme
• Iris Network Traffic Analyzer
(http://www.eeye.com )
• NetIntercept (http://www.sandstorm.net )
• NetDetector (http://www.niksun.com )
• Librari (API) pentru captarea de pachete
(pcap):
– libpcap / WinPcap (C/C++)
– JpCap (Java)
Scannere de porturi
• Descoperä calculatoarele active dintr-o retea
• Determinä porturile de comunicatie
deschise şi serviciile asociate acestora
• Culegere de informatii despre retea (network
mapping tool)
– faza premergätoare unui atac
• Tehnici de scanare:
– TCP connect()
– TCP SYN
– UDP
– Ping
– TCP FIN
– TCP Xmas Tree
– TCP Null

© Ion BICA 6
TCP connect() Scan
• Metodä de scanare simplä şi rapidä
• Foarte “zgomotoasä”
– creeazä conexiuni TCP complete
– apelurile connect() sunt în general jurnalizate (lasä
urme)

© Ion BICA 7
TCP SYN Scan
• Conexiuni pe jumätate deschise (half open
connection)
– se transmite un pachet SYN pentru a cere
deschiderea conexiunii
– dupä receptionarea unui SYN/ACK se renuntä la
conexiune trimitându- se un pachet RST
• Greu de detectat
– majoritatea IDS şi firewall-urilor nu interpreteazä
pachetele SYN
UDP Scan
• Similar unui TCP scan dar cu pachete UDP
• Se transmit pachete UDP cätre toate
porturile de pe calculatorul tintä; dacä
nu apare nici o eroare atunci portul UDP
este deschis
• Proces lent
– timp de räspuns mare 1-4 sec.

© Ion BICA 9
Ping Scan
• Folosit pentru a determina dacä un calculator
este activ sau nu
• De obicei, este blocat de firewall

© Ion BICA
TCP FIN, Xmas Tree, Null Scan
• Stealth scans
• Principiul de functionare este acelaşi
– manipularea bitilor de control (flags) din antetul
pachetelor TCP
– pachete atipice (ce nu pot şi întâlnite în realitate)
• Conform RFC 793, atunci când un sistem
primeşte un pachet pe un port închis,
trebuie sä räspundä cu un RST
– dacä nu se receptioneazä nici un RST înseamnä
cä portul este deschis sau comunicatia este
filtratä de firewall
• Nu functioneazä în cazul sistemelor Windows
– returneazä RST chiar dacä portul este deschis
• Pentru a putea efectua aceste tipuri de
scanäri utilizatorul trebuie sä aibä
drepturi administrative
TCP FIN Scan

Closed Port

Opened Port

© Ion BICA 12
TCP Xmas Tree Scan

Closed Port

Opened Port

© Ion BICA 13
TCP Null Scan

Closed Port

Opened Port

© Ion BICA 14
Scannere de porturi - Produse
• nmap (http://www.insecure.org/nmap/ )
– cea mai performantä unealtä de scanare a porturilor
– disponibilä atât pentru Unix cât şi Windows
– OS Fingerprinting
• hping (http://www.hping.org )
• SuperScan (http://www.foundstone.com )
• ShieldsUP
– Gibson Research Corporation (http://www.grc.com )
– online port scanner

© Ion BICA 15
Vulnerabilitäti
• Eroare de programare sau greşealä de
configurare ce poate crea breşe în
securitatea sistemelor
• Dacä nu sunt corectate la timp pot fi
exploatate de cätre un eventual
atacator
• Metode de corectie
– instalare de patch-uri recomandate de producätor
– securizarea (hardening) sistemelor
Vulnerabilitäti (cont.)
Total vulnerabilitäti raportate
(1995-Q1,2008): 39,490
Sursa: CERT
Year (http
200 ://w200
200 ww.cer
200 t.200
org 200
) 200 200
0 1 2 3 4 5 6 7
Vulnerabil 1,09 2,43 4,12 3,78 3,78 5,99 8,06 7,23
ities 0 7 9 4 0 0 4 6

9,000
8,000
7,000
6,000
5,000
4,000
3,000
2,000
1,000
0
2000 2001 2002 2003 2004 2005 2006 2007
Vulnerabilitäti (cont.)

Numai 20% din


vulnerabilitäti sunt critice!
Sursa: Secunia
(http://www.secunia.com)
Vulnerabilitäti (cont.)

© Ion BICA 19
Vulnerabilitäti (cont.)
• Common Vulnerabilities and Exposures (CVE)
– lista cu denumirile standardizate ale tuturor
vulnerabilitätilor cunoscute public
– dictionar de vulnerabilitäti (nu bazä de date)
– http://cve.mitre.org/
• Open Vulnerability and Assessment Language
(OVAL)
– standard ce descrie modul în care poate fi
verificatä existenta unei vulnerabilitäti pe un
sistem de calcul
– http://oval.mitre.org/
• SANS Top 20 Internet Security Vulnerabilities
– http://www.sans.org/top20/
Scannere de vulnerabilitäti
• Automatizarea procesului de
identificare şi corectare a
vulnerabilitätilor
• Clasificare
– functie de locatie de unde se face scanarea
• network based
• host based
– functie de credentialele folosite pe parcursul
scanärii
• cu drepturi administrative
• färä drepturi administrative
• Un scanner de vulnerabilitäti este un
scanner de porturi evoluat
Scannere de vulnerabilitäti -
Produse
• Nessus (http://www.nessus.org )
– the best security tool!
• SATAN - Security Administrator Tool for
Analyzing Networks
– SAINT (http://www.saintcorporation.com/ )
– SARA (http://www-arc.com/sara/ )
• ISS - Internet Security Scanner
(http://www.iss.net )
• Retina (http://www.eeye.com )
• STAT Scanner (http://www.statonline.com )
• NetRecon (http://www.symantec.com )
• MBSA (http://www.microsoft.com )
• GFI LANGuard (http://www.gfi.com )
• …
File Integrity Checkers
• Depistarea modificärilor operate asupra
fişierelor importante din sistem
• Sume de control criptografice ce sunt
calculate periodic şi comparate cu
valorile de referintä
– forensics analysis
• Comercializate sub forma de HIDS!

© Ion BICA 23
File Integrity Checkers - Produse
• Tripwire (http://www.tripwiresecurity.com )
– cel mai cunoscut produs de acest gen
– disponibil atât pentru Unix cât şi Windows
• AIDE (http://sourceforge.net/projects/aide )
• DataSentinel (http://www.ionx.co.uk )

© Ion BICA 24
Ghiduri de securizare a sistemelor
• NIST Special Publications
– http://csrc.nist.gov/publications/nistpubs/
• NSA Security Configuration Guides
– http://www.nsa.gov/snac/
• SANS Institute
– http://www.sans.org/
• Security Advisories
– http://secunia.com/
• Security Portals
– http://www.securityfocus.com/
– http://www.packetstormsecurity.org/
– http://www.securiteam.com/
– http://www.insecure.org/

© Ion BICA 25
© Ion BICA 26

S-ar putea să vă placă și