38
CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Embed Size (px)

Citation preview

Page 1: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

CISCO Access-List

Netgroup

23 Aprile 2002

Angelo Veloce – LNF Computing Service

Page 2: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Access List

• Nega il traffico basandosi su dei test sul pacchetto IP

Frame Header(for examples, HDLC)

Packet (IP header)

Segment (forExamples. TCP Header)

Data

Protocol

Source Address

Destination Address

Port number e TCP flags

Page 3: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Access List

• Che tipo di Access List ci sono?

– Standard Access List, controllano il source address del pacchetto IP

– Extended Access List, controllano entrambi source e destination addresses del pacchetto IP. Inoltre puo’ essere filtrato uno specifico protocollo, numero di porta e TCP flags

Page 4: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Come sono identificate le Access List sui Router CISCO:

• Per il protocollo IP:– Standard hanno un range da 1 a 99– Estese hanno un range da 100 a 199

• Per il protocollo IPX:– Standard hanno un range da 800 a 899– Estese hanno un range da 900 a 999

• Per il protocollo Apple Talk– Il range va da 600 a 699

Page 5: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Bits della Wildcard Mask

• Questa maschera permette di stabilire in una Network cosa controllare e cosa ignorare.– Dove c’é uno zero si ha un controllo sul

corrispondente bit– Dove c’é un uno il corrispondente bit é

ignorato.

Page 6: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Wildcard Bits

128 64 32 16 8 4 2 1

0 0 0 0 0 0 0 0 = Check all address Bits 0 0 1 1 1 1 1 1 = Ignore Last 6 Address Bits 0 0 0 0 1 1 1 1 = Ignore Last 4 Address Bits 1 1 1 1 1 1 0 0 = Check Last 2 Address Bits 1 1 1 1 1 1 1 1 = Do Not Check Address Bits

Octet Bit Position and Address Value for Bit

Page 7: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio Wildcard Mask

• Data la Network 172.30.16.0 con wildcard mask 0.0.15.255– La network é di classe B con il terzo ottetto

subnettato .– É possibile usare questa configurazione per

controllare le subnet da 172.30.16.0 a 172.30.31.0

Page 8: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio Wildcard Mask

• Per controllare qualsiasi indirizzo IP si dovrebbe usare:

Any IP address0.0.0.0

255.255.255.255Wildcard mask

Ignore all

Per accettare qualsiasi indirizzo si utilizza l’espressione abbreviata

ANY

Page 9: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio Wildcard Mask

• Per controllare uno specifico IP host e quindi controllare tutti I bits:

Uno specifico IP address172.30.16.29

0.0.0.0Wildcard mask

controlla tutti i bits

Per controllare tutti i bits diuno specifico IP address si usa

l’abbreviazioneHost 172.30.16.29

Page 10: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Sintassi delle Access List Estese• Access-list-number, identifica l’access list

• Protocol, sono IP, TCP, UDP, ICMP, GRE, IGRP

• Source e destination, identificano source e destination IP address

• Source-mask e destination-mask, sono la wildcard mask

• Operator, lt (less than), gt (greater than), eq (equal), neq (not equal), range

• Operand, port number

Router (config)#Access-list access-list-number {permit | deny} protocol

Source source-wildcard-mask [operator source-port | source-port]

Destination destination-wildcard-mask[operator destination-port | destination-port] [established]

Page 11: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Sintassi delle Access List Estese• Attivare le access list estese su una interfaccia

– Access-list-number, indica il numero dell’access list che deve essere richiamato sull’interfaccia

– In | out, indica se l’access list é applicata in ingresso o in uscita all’interfaccia

Router#conf tEnter configuration commands, one per line. End with CNTL/Z.

Router(config)#interface atm1/0.5 point-to-point

Router(config-subif)#ip access-group access-list-number {in |out}

Page 12: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

EsempioRouter#show running-config | begin interface ATM1/0.5

interface ATM1/0.5 point-to-point description PVC 17.6M LNF-GARRB-Telecom bandwidth 17600 ip address XXX.XXX.XXX.XXX 255.255.255.252 ip access-group 103 in no ip mroute-cache atm pvc 107 30 107 aal5snap 17600 17600 … …

Page 13: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Come scrivere le Access-List

• Fondamentale e’ l’ordine in cui sono scritte le access-list

• Man mano che si esegue l’access-list se si verificano delle condizioni si esce dal percorso saltando i controlli successivi

• E’ importante anche il verso in cui sono applicate sulle interfacce

Page 14: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio

• Per prima cosa, implementiamo la nostra access-list nel verso IN sull’interfaccia Seriale o ATM connessa alla WAN

Dati SA DA

Ip access-group <numero access-list> in

Page 15: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (connessioni TCP)

• Implementiamo l’access-list dalla “testa” ovvero dalle prime regole che vengono controllate.

• Permesso di tutti i nodi internet all’inoltro di pacchetti TCP per connessioni gia’ stabilite

access-list 103 permit tcp any XXX.XXX.XXX.0 0.0.7.255 established

access-list 103 permit tcp any YYY.YYY.YYY.0 0.0.0.255 established

access-list 103 permit tcp any ZZZ.ZZZ.ZZZ.0 0.0.0.255 established

access-list 103 permit tcp any TTT.TTT.TTT.0 0.0.3.255 established

Page 16: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Porte alte pericolose

• Divieto a tutti i nodi verso le porte alte "pericolose":– NFS (udp e tcp porta 2049),– Openwin (tcp porta 2000),– MySQL (tcp e udp porta 3306),– X11 (tcp porte 6000-6010),– adsm (tcp porta 1500),– fontsrv (udp e tcp porte 7000 e 7100)

Page 17: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (blocco porte alte pericolose UDP)

• Divieto di tutti i nodi internet all’inoltro di pacchetti UDP sulle porte alte pericolose

access-list 103 deny udp any any eq 2049

access-list 103 deny udp any any eq 3306

access-list 103 deny udp any host <font-server-IP> eq 7000

access-list 103 deny udp any any eq 7100

Page 18: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (UDP)

• Permesso di tutti i nodi internet all’inoltro di pacchetti UDP sulle porte alte (>1024)

access-list 103 permit udp any XXX.XXX.XXX.0 0.0.7.255 gt 1024

access-list 103 permit udp any YYY.YYY.YYY.0 0.0.0.255 gt 1024

access-list 103 permit udp any ZZZ.ZZZ.ZZZ.0 0.0.0.255 gt 1024

access-list 103 permit udp any TTT.TTT.TTT.0 0.0.3.255 gt 1024

Page 19: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (ssh)

• Permettiamo l’accesso in SSH solo verso macchine amministrate dal servizio di calcolo

access-list 103 permit tcp any host <ssh-server1-ip> eq 22

access-list 103 permit tcp any host <ssh-server2-ip> eq 22

access-list 103 permit tcp any host <ssh-server3-ip> eq 22

Page 20: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (net-services)

• Permesso di tutti i nodi internet verso i Server DNS (53), SMTP (25), WWW (80)

access-list 103 permit tcp any host <dns-server1-ip> eq domain

access-list 103 permit udp any host <dns-server1-ip> eq domain

access-list 103 permit tcp any host eq smtp

access-list 103 permit tcp any host <dns-server2-ip> eq domain

access-list 103 permit udp any host <dns-server2-ip> eq domain

access-list 103 permit tcp any host <smtp-server2-ip> eq smtp

access-list 103 permit tcp any host <http-server1-ip> eq www

access-list 103 permit tcp any host <http-server2-ip> eq www

access-list 103 permit tcp any host <webmail-ip> eq 443

access-list 103 permit tcp any host <http-server3-ip> eq www

Page 21: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Porte utilizzate dagli AFS Serverafs3-fileserver 7000/tcp # File Server Itself

afs3-fileserver 7000/udp # File Server Itself

afs3-callback 7001/tcp # Callbacks to Cache Managers

afs3-callback 7001/udp # Callbacks to Cache Managers

afs3-prserver 7002/tcp # Users & Groups Database

afs3-prserver 7002/udp # Users & Groups Database

afs3-vlserver 7003/tcp # Volume Location Database

afs3-vlserver 7003/udp # Volume Location Database

afs3-kaserver 7004/tcp # AFS/Kerberos Auth. Service

afs3-kaserver 7004/udp # AFS/Kerberos Auth. Service

afs3-volser 7005/tcp # Volume Managment Server

afs3-volser 7005/udp # Volume Managment Server

afs3-errors 7006/tcp # Error Interpretation Service

afs3-errors 7006/udp # Error Interpretation Service

afs3-bos 7007/tcp # Basic Overseer Process

afs3-bos 7007/udp # Basic Overseer Process

afs3-update 7008/tcp # Server-To-Server Updater

afs3-update 7008/udp # Server-To-Server Updater

afs3-rmtsys 7009/tcp # Remote Cache Manager Service

afs3-rmtsys 7009/udp # Remote Cache Manager Service

Page 22: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (AFS Servers)

• Permesso di tutti i nodi verso gli AFS Server

– Autenticazione per client windows (porta 750)

access-list 103 permit tcp any host <afs-server1-ip> range 7000 7009

# access-list 103 permit udp any host <afs-server1-ip> range 7000 7009 (redundant)

access-list 103 permit tcp any host <afs-server2-ip> range 7000 7009

# access-list 103 permit udp any host <afs-server2-ip> range 7000 7009 (redundant)

- AFS server (compresa autenticazione per client unix)

access-list 103 permit udp any host <afs-server1-ip> eq 750

access-list 103 permit udp any host <afs-server2-ip> eq 750

Page 23: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (AFS clients)

• Permesso any to any per le callbacks delle cache dei client AFS

access-list 103 permit tcp any any eq 7001

# access-list 103 permit udp any any eq 7001 (redundant)

Page 24: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (NTP Servers)

• Permesso di tutti i nodi internet verso i Server NTP

access-list 103 permit udp any host <ntp-server1-ip> eq ntp

access-list 103 permit udp any host <ntp-server1-ip> eq ntp

access-list 103 permit udp any host <ntp-server1-ip> eq ntp

access-list 103 permit udp any host <ntp-server1-ip> eq ntp

Page 25: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (FTP Servers)

• Permesso di tutti i nodi internet ad accedere in FTP ad un server autorizzato

access-list 103 permit tcp any host <ftp-server1-ip> eq 20

access-list 103 permit tcp any host <ftp-server1-ip> eq 21

Page 26: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio (AT e ICMP)

• Permesso di tutti i nodi internet ad accedere al tunnel Appletalk (gre/ip)

access-list 103 permit gre any host <tunnel-interface-ip>

• Permesso di tutti i nodi internet all’utilizzo dell’ICMP, riservandoci di implementare le funzionalita’ CAR (Committed Access Rate) per limitare la banda destinata all’ICMP

access-list 103 permit icmp any any

Page 27: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Aumentare la Security disabilitando funzionalita’ globali

non necessarie

• service password-encryption• no service finger• no service pad• no service udp-small-server• no service tcp-small-server• no ip bootp server

Page 28: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Aumentare la Security disabilitando funzionalita’ sulle

interfacce non necessarie

• no ip redirects• no ip directed-broadcast• no ip proxy-arp

Page 29: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Principali tipi di attacchi

• TCP SYN-flooding– E’ un tipo di denial-of-service che colpisce un server

con grandi richieste di connessioni TCP

• Packet Filtering – Assicurarsi che i pacchetti che entrano in LAN sono

validi ed hanno un source address che coincide effettivamente con il mittente

• Rate Limiting– Limitare il livello di traffici (come ICMP) che non

hanno una valida ragione di consumare banda.

Page 30: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

TCP Intercept

• Questa funzionalita’ disponibile sui Router CISCO dalla versione di IOS 11.2 F, permette di proteggere server da “denial of service” e “distributed denial of service” tipo:– TCP SYN-flooding attacks

Page 31: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

TCP SYN flooding attacks

• Questo attacco si verifica quando un hacker “sommerge” un server di richieste di connessioni. Quest’ultime hanno la caratteristica di avere un unreachable return address e quindi la connessione non viene mai stabilita.

• Il risultato e’ che queste fallite richieste di connessioni bloccano le richieste valide verso i servizi offerti dal server

Page 32: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

TCP Intercept Software

• Il software (IOS) intercetta i TCP synchronization (SYN) packets dal Client ai server interni alla LAN specificati in una apposita access-list estesa.

Server WEB

INTERNETINTERNETClient

Page 33: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

TCP Intercept Software• Il software (IOS) stabilisce una connessione con il client

per conto del server di destinazione.

• Se successivamente la connessione ha successo il software stabilisce la connessione con il Server.

• In questo modo tentativi di connessioni da unreachable host non raggiungeranno mai i server

• Inoltre se nell’ultimo minuto le richieste di connessioni incomplete superano le 1100 vengono cancellate le piu’ vecchie e dimezzati i time out di ritrasmissione

Page 34: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Sintassi TCP Intercept

• access-list <access-list-number>

{deny | permit} tcp any destination destination-wildcard

• ip tcp intercept list <access-list-number>

Page 35: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio Access-List per TCP Intercept

access-list 104 permit tcp any host <ssh-server1-ip> eq 22

access-list 104 permit tcp any host <ssh-server2-ip> eq 22

access-list 104 permit tcp any host <ssh-server3-ip> eq 22

access-list 104 permit tcp any host <dns-server1-ip> eq domain

access-list 104 permit tcp any host <smtp-server1-ip> eq smtp

access-list 104 permit tcp any host <dns-server2-ip> eq domain

access-list 104 permit tcp any host <smtp-server2-ip> eq smtp

access-list 104 permit tcp any host <http-server1-ip> eq www

access-list 104 permit tcp any host <http-server2-ip> eq www

access-list 104 permit tcp any host <webmail-ip> eq 443

access-list 104 permit tcp any host <http-server3-ip> eq www

Etc ….

Page 36: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Esempio di configurazione di TCP Intercept

ip tcp intercept list 104

ip tcp intercept drop-mode random

Server WEB

INTERNETINTERNETClient

Page 37: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

ICMP Rate Limit• Per evitare un denial of service di tipo

ICMP (ping flood) si puo’ usare il CAR (Committed Access Rate) come comando per limitare questo traffico indesiderato

access-list 105 permit icmp any any echo

access-list 105 permit icmp any any echo-reply

Router#conf tEnter configuration commands, one per line. End with CNTL/Z.

Router(config)#interface atm1/0.5 point-to-point

Router(config-subif)# rate-limit input access-group 105 256000 8000 8000 conform-action trasmit exceed-action drop

Attenzione: ICMP Rate Limit non testato

Page 38: CISCO Access-List Netgroup 23 Aprile 2002 Angelo Veloce – LNF Computing Service

Domande?