1 / 38

CISCO Access-List

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). Segment (for Examples. TCP Header). Packet (IP header). Data. Port number e TCP flags.

demeter
Télécharger la présentation

CISCO Access-List

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Access List • Nega il traffico basandosi su dei test sul pacchetto IP Frame Header (for examples, HDLC) Segment (for Examples. TCP Header) Packet (IP header) Data Port number e TCP flags Protocol Source Address Destination Address

  3. 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

  4. 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

  5. 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.

  6. Wildcard Bits Octet Bit Position and Address Value for Bit 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

  7. 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

  8. Esempio Wildcard Mask • Per controllare qualsiasi indirizzo IP si dovrebbe usare: Any IP address 0.0.0.0 Per accettare qualsiasi indirizzo si utilizza l’espressione abbreviata ANY 255.255.255.255 Wildcard mask Ignore all

  9. Esempio Wildcard Mask • Per controllare uno specifico IP host e quindi controllare tutti I bits: Uno specifico IP address 172.30.16.29 Per controllare tutti i bits di uno specifico IP address si usa l’abbreviazione Host 172.30.16.29 0.0.0.0 Wildcard mask controlla tutti i bits

  10. 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]

  11. 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 t Enter 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}

  12. Esempio Router#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 … …

  13. 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

  14. 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

  15. 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

  16. 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)

  17. 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

  18. 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

  19. 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

  20. 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

  21. Porte utilizzate dagli AFS Server afs3-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

  22. Esempio (AFS Servers) • Permesso di tutti i nodi verso gli AFS Server • Autenticazione per client windows (porta 750) access-list 103 permit udp any host <afs-server1-ip> eq 750 access-list 103 permit udp any host <afs-server2-ip> eq 750 - AFS server (compresa autenticazione per client unix) 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)

  23. 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)

  24. 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

  25. 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

  26. 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

  27. 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

  28. Aumentare la Security disabilitando funzionalita’ sulle interfacce non necessarie • no ip redirects • no ip directed-broadcast • no ip proxy-arp

  29. 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.

  30. 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

  31. 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

  32. 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 INTERNET Client

  33. 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

  34. Sintassi TCP Intercept • access-list <access-list-number> {deny | permit} tcpany destination destination-wildcard • ip tcp intercept list <access-list-number>

  35. 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 ….

  36. Esempio di configurazione di TCP Intercept ip tcp intercept list 104 ip tcp intercept drop-mode random Server WEB INTERNET Client

  37. 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 t Enter 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

  38. Domande?

More Related