Questo bollettino sulla mitigazione applicata è un documento complementare ai seguenti consigli di sicurezza PSIRT e fornisce tecniche di identificazione e mitigazione che gli amministratori possono distribuire sui dispositivi di rete Cisco:
I dispositivi Cisco forniscono diverse contromisure per queste vulnerabilità. Si consiglia agli amministratori di considerare questi metodi di protezione come best practice generali per la sicurezza dei dispositivi dell'infrastruttura e del traffico che attraversa la rete. In questa sezione del documento viene fornita una panoramica di queste tecniche.
Il software Cisco IOS può essere uno strumento efficace per prevenire gli attacchi tramite gli iACL (Access Control List) dell'infrastruttura.
Questo meccanismo di protezione filtra e scarta i pacchetti che stanno tentando di sfruttare queste vulnerabilità.
Un'efficace prevenzione degli attacchi può essere fornita anche da Cisco ASA serie 5500 Adaptive Security Appliance e dal Firewall Services Module (FWSM) per gli switch Cisco Catalyst serie 6500 e i router Cisco serie 7600 con access control list (tACL) di transito.
Questo meccanismo di protezione filtra e scarta i pacchetti che stanno tentando di sfruttare queste vulnerabilità.
I record Cisco IOS NetFlow possono fornire visibilità sui tentativi di sfruttamento basati sulla rete.
I firewall del software Cisco IOS, Cisco ASA e FWSM possono fornire visibilità attraverso i messaggi syslog e i valori dei contatori visualizzati nell'output dei comandi show.
Per questi dispositivi sono disponibili informazioni specifiche sulla mitigazione e l'identificazione:
Per proteggere i dispositivi dell'infrastruttura e ridurre al minimo i rischi, l'impatto e l'efficacia degli attacchi diretti all'infrastruttura, gli amministratori devono implementare gli iACL (Access Control List) dell'infrastruttura per applicare le policy relative al traffico inviato ai dispositivi dell'infrastruttura. Gli amministratori possono costruire un iACL autorizzando esplicitamente solo il traffico autorizzato inviato ai dispositivi dell'infrastruttura in base alle configurazioni e ai criteri di sicurezza esistenti. Per garantire la massima protezione dei dispositivi dell'infrastruttura, gli iACL installati devono essere applicati in entrata su tutte le interfacce su cui è stato configurato un indirizzo IP. Una soluzione iACL non può fornire una protezione completa da queste vulnerabilità quando l'attacco ha origine da un indirizzo di origine attendibile.
Il criterio iACL nega i pacchetti non autorizzati sulla porta TCP 9002 che vengono inviati ai dispositivi interessati. Nell'esempio seguente, 192.168.60.0/24 è lo spazio di indirizzi IP utilizzato dai dispositivi interessati e l'host con indirizzo 192.168.100.1 è considerato una fonte attendibile che richiede l'accesso ai dispositivi interessati. È necessario prestare attenzione a consentire il traffico richiesto per il routing e l'accesso amministrativo prima di rifiutare tutto il traffico non autorizzato. Ove possibile, lo spazio di indirizzi dell'infrastruttura deve essere distinto dallo spazio di indirizzi utilizzato per i segmenti di utenti e servizi. L'uso di questa metodologia di indirizzamento semplificherà la costruzione e l'implementazione degli iACL.
Per ulteriori informazioni sugli iACL, consultare il documento sulla protezione del core: Access Control List di protezione dell'infrastruttura.
ip access-list extended Infrastructure-ACL-Policy
!
!-- Include explicit permit statements for trusted sources
!-- that require access on the vulnerable port
!
permit tcp host 192.168.100.1 192.168.60.0 0.0.0.255 eq 9002
!
!-- The following vulnerability-specific access control entry
!-- (ACE) can aid in identification of attacks
!
deny tcp any 192.168.60.0 0.0.0.255 eq 9002
!
!-- Explicit deny ACE for traffic sent to addresses configured within
!-- the infrastructure address space
!
deny ip any 192.168.60.0 0.0.0.255
!
!-- Permit or deny all other Layer 3 and Layer 4 traffic in accordance
!-- with existing security policies and configurations
!
!-- Apply iACL to interfaces in the ingress direction
!
interface GigabitEthernet0/0
ip access-group Infrastructure-ACL-Policy in
L'applicazione di un filtro con un elenco degli accessi all'interfaccia determinerà la trasmissione di messaggi ICMP "destinazione irraggiungibile" alla sorgente del traffico filtrato. La generazione di questi messaggi potrebbe avere l'effetto indesiderato di aumentare l'utilizzo della CPU sul dispositivo. Per impostazione predefinita, nel software Cisco IOS la generazione di pacchetti ICMP "destinazione irraggiungibile" è limitata a un pacchetto ogni 500 millisecondi. La generazione di messaggi ICMP "destinazione irraggiungibile" può essere disabilitata usando il comando di configurazione interfaccia no ip unreachables. La limitazione della velocità non raggiungibile ICMP può essere modificata dal valore predefinito utilizzando il comando di configurazione globale ip icmp rate-limit unreachable interval-in-ms.
Dopo che l'amministratore ha applicato l'iACL a un'interfaccia, il comando show ip access-lists restituisce il numero di pacchetti sulla porta TCP 9002 che sono stati filtrati sulle interfacce a cui è applicato l'iACL. Gli amministratori devono esaminare i pacchetti filtrati per determinare se sono tentativi di sfruttare queste vulnerabilità. Di seguito è riportato un esempio di output per gli elenchi degli accessi show ip:
router#show ip access-lists Infrastructure-ACL-Policy
Extended IP access list Infrastructure-ACL-Policy
10 permit tcp host 192.168.100.1 192.168.60.0 0.0.0.255 eq 9002
20 deny tcp any 192.168.60.0 0.0.0.255 eq 9002 (11 matches)
30 deny ip any 192.168.60.0 0.0.0.255
router#
Nell'esempio precedente, l'elenco degli accessi Infrastructure-ACL-Policy ha scartato 11 pacchetti sulla porta TCP 9002 per la riga 20 della voce dell'elenco di controllo degli accessi (ACE, Access Control List).
Per ulteriori informazioni sull'analisi degli incidenti tramite i contatori ACE e gli eventi syslog, consultare il white paper sull'identificazione degli incidenti tramite il firewall e gli eventi syslog del router IOS Application Intelligence.
Gli amministratori possono utilizzare Embedded Event Manager per fornire strumentazione quando vengono soddisfatte condizioni specifiche, ad esempio accessi al contatore ACE. Il white paper sull'intelligence applicata Embedded Event Manager in a Security Context fornisce ulteriori dettagli sull'utilizzo di questa funzionalità.
L'opzione log e log-input access control list (ACL) causerà la registrazione dei pacchetti che corrispondono ad ACE specifici. L'opzione log-input abilita la registrazione dell'interfaccia in entrata, oltre agli indirizzi IP di origine e destinazione dei pacchetti e alle porte.
Attenzione: la registrazione dell'elenco di controllo di accesso può richiedere un utilizzo intensivo della CPU e deve essere utilizzata con estrema cautela. I fattori che determinano l'impatto della registrazione ACL sulla CPU sono la generazione di log, la trasmissione di log e la commutazione di processo per inoltrare i pacchetti che corrispondono alle voci ACE abilitate per il log.
Per il software Cisco IOS, il comando ip access-list logging interval in-ms può limitare gli effetti della commutazione di processo indotta dalla registrazione ACL. Il comando logging rate-limit rate-per-second [except loglevel] limita l'impatto della generazione e della trasmissione del log.
L'impatto sulla CPU causato dalla registrazione degli ACL può essere risolto tramite hardware sugli switch Cisco Catalyst serie 6500 e sui router Cisco serie 7600 con Supervisor Engine 720 o Supervisor Engine 32 utilizzando la registrazione degli ACL ottimizzata.
Per ulteriori informazioni sulla configurazione e l'utilizzo della registrazione ACL, consultare il white paper Understanding Access Control List Logging Applied Intelligence.
Gli amministratori possono configurare Cisco IOS NetFlow sui router e gli switch Cisco IOS per aiutare a identificare i flussi di traffico che potrebbero essere tentativi di sfruttare queste vulnerabilità. Si consiglia agli amministratori di analizzare i flussi per determinare se si tratta di tentativi di sfruttare queste vulnerabilità o se si tratta di flussi di traffico legittimi.
router#show ip cache flow IP packet size distribution (90784136 total packets): 1-32 64 96 128 160 192 224 256 288 320 352 384 416 448 480 .000 .698 .011 .001 .004 .005 .000 .004 .000 .000 .003 .000 .000 .000 .000 512 544 576 1024 1536 2048 2560 3072 3584 4096 4608 .000 .001 .256 .000 .010 .000 .000 .000 .000 .000 .000 IP Flow Switching Cache, 4456704 bytes 1885 active, 63651 inactive, 59960004 added 129803821 ager polls, 0 flow alloc failures Active flows timeout in 30 minutes Inactive flows timeout in 15 seconds IP Sub Flow Cache, 402056 bytes 0 active, 16384 inactive, 0 added, 0 added to flow 0 alloc failures, 0 force free 1 chunk, 1 chunk added last clearing of statistics never Protocol Total Flows Packets Bytes Packets Active(Sec) Idle(Sec) -------- Flows /Sec /Flow /Pkt /Sec /Flow /Flow TCP-Telnet 11393421 2.8 1 48 3.1 0.0 1.4 TCP-FTP 236 0.0 12 66 0.0 1.8 4.8 TCP-FTPD 21 0.0 13726 1294 0.0 18.4 4.1 TCP-WWW 22282 0.0 21 1020 0.1 4.1 7.3 TCP-X 719 0.0 1 40 0.0 0.0 1.3 TCP-BGP 1 0.0 1 40 0.0 0.0 15.0 TCP-Frag 70399 0.0 1 688 0.0 0.0 22.7 TCP-other 47861004 11.8 1 211 18.9 0.0 1.3 UDP-DNS 582 0.0 4 73 0.0 3.4 15.4 UDP-NTP 287252 0.0 1 76 0.0 0.0 15.5 UDP-other 310347 0.0 2 230 0.1 0.6 15.9 ICMP 11674 0.0 3 61 0.0 19.8 15.5 IPv6INIP 15 0.0 1 1132 0.0 0.0 15.4 GRE 4 0.0 1 48 0.0 0.0 15.3 Total: 59957957 14.8 1 196 22.5 0.0 1.5 SrcIf SrcIPaddress DstIf DstIPaddress Pr SrcP DstP Pkts Gi0/0 192.168.10.201 Gi0/1 192.168.60.102 06 0984 232A 1 Gi0/0 192.168.11.54 Gi0/1 192.168.60.158 06 0911 232A 3 Gi0/1 192.168.150.60 Gi0/0 10.89.16.226 06 0016 12CA 1 Gi0/0 192.168.13.97 Gi0/1 192.168.60.28 06 0B3E 232A 5 Gi0/0 192.168.10.17 Gi0/1 192.168.60.97 06 0B89 232A 1 Gi0/0 10.88.226.1 Gi0/1 192.168.202.22 11 007B 007B 1 Gi0/0 192.168.12.185 Gi0/1 192.168.60.239 06 0BD7 232A 1 Gi0/0 10.89.16.226 Gi0/1 192.168.150.60 06 12CA 0016 1 Gi0/0 192.168.48.69 Gi0/1 192.168.62.49 11 CB42 8B61 7 Gi0/0 192.168.0.74 Gi0/1 192.168.60.81 06 D542 0050 3 Gi0/0 192.168.0.53 Gi0/1 192.168.60.223 06 34C7 01BB 4 Gi0/0 192.168.221.121 Gi0/1 192.168.175.14 06 187B 34AA 11 Gi0/0 192.168.0.50 Gi0/1 192.168.60.185 06 4445 0050 5 Gi0/0 192.168.247.75 Gi0/1 192.168.123.123 11 BBA5 76E1 5 Gi0/0 192.168.0.183 Gi0/1 192.168.60.66 06 D0A8 232A 1 Gi0/0 192.168.216.117 Gi0/1 192.168.83.71 06 D102 9D1C 10 Gi0/0 192.168.135.87 Gi0/1 192.168.60.226 11 BBF9 0045 4 router#
Nell'esempio precedente, sono presenti più flussi per la porta TCP 9002 (valore esadecimale 232A).
Per visualizzare solo i flussi di traffico per i pacchetti sulla porta TCP 9002 (valore esadecimale 232A), usare il comando show ip cache flow | include SrcIf|_06_.*232A visualizzerà i record TCP NetFlow correlati, come mostrato di seguito:
Flussi TCProuter#show ip cache flow | include SrcIf|_06_.*232A SrcIf SrcIPaddress DstIf DstIPaddress Pr SrcP DstP Pkts Gi0/0 192.168.10.201 Gi0/1 192.168.60.102 06 0984 232A 1 Gi0/0 192.168.11.54 Gi0/1 192.168.60.158 06 0911 232A 3 Gi0/0 192.168.13.97 Gi0/1 192.168.60.28 06 0B3E 232A 5
Gi0/0 192.168.10.17 Gi0/1 192.168.60.97 06 0B89 232A 1 Gi0/0 192.168.12.185 Gi0/1 192.168.60.239 06 0BD7 232A 1 Gi0/0 192.168.0.183 Gi0/1 192.168.60.66 06 D0A8 232A 1 router#
Per proteggere la rete dal traffico che entra nei punti di accesso in entrata, che possono includere punti di connessione Internet, punti di connessione fornitori e partner o punti di connessione VPN, si consiglia agli amministratori di distribuire gli ACL per applicare la policy. Gli amministratori possono costruire un ACL autorizzando esplicitamente solo il traffico autorizzato ad accedere alla rete dai punti di accesso in entrata o autorizzando il traffico autorizzato a transitare sulla rete in base alle configurazioni e ai criteri di sicurezza esistenti. Una soluzione ACL non può fornire una protezione completa da queste vulnerabilità quando l'attacco ha origine da un indirizzo di origine attendibile.
Il criterio ACL nega i pacchetti non autorizzati sulla porta TCP 9002 che vengono inviati ai dispositivi interessati. Nell'esempio seguente, 192.168.60.0/24 è lo spazio di indirizzi IP utilizzato dai dispositivi interessati e l'host con indirizzo 192.168.100.1 è considerato una fonte attendibile che richiede l'accesso ai dispositivi interessati. È necessario prestare attenzione a consentire il traffico richiesto per il routing e l'accesso amministrativo prima di rifiutare tutto il traffico non autorizzato.
Per ulteriori informazioni sugli ACL, consultare il documento Access Control Lists: Filtering at Your Edge (Liste di controllo dell'accesso in transito: filtraggio sul perimetro della rete).
!
!-- Include explicit permit statements for trusted sources
!-- that require access on the vulnerable port
! access-list tACL-Policy extended permit tcp host 192.168.100.1 192.168.60.0 255.255.255.0 eq 9002 !
!-- The following vulnerability-specific access control entry
!-- (ACE) can aid in identification of attacks
! access-list tACL-Policy extended deny tcp any 192.168.60.0 255.255.255.0 eq 9002 !
!-- Permit or deny all other Layer 3 and Layer 4 traffic in accordance
!-- with existing security policies and configurations
!
!-- Explicit deny for all other IP traffic
! access-list tACL-Policy extended deny ip any any !
!-- Apply tACL to interface(s) in the ingress direction
! access-group tACL-Policy in interface outside
Dopo aver applicato l'ACL a un'interfaccia, gli amministratori possono usare il comando show access-list per identificare il numero di pacchetti sulla porta TCP 9002 che sono stati filtrati. Gli amministratori sono invitati a indagare sui pacchetti filtrati per determinare se sono tentativi di sfruttare queste vulnerabilità. Di seguito è riportato un output di esempio per show access-list tACL-Policy:
firewall#show access-list tACL-Policy access-list tACL-Policy; 3 elements access-list tACL-Policy line 1 extended permit tcp host 192.168.100.1 192.168.60.0 255.255.255.0 eq 9002 (hitcnt=34) access-list tACL-Policy line 2 extended deny tcp any 192.168.60.0 255.255.255.0 eq 9002 (hitcnt=119)
access-list tACL-Policy line 3 extended deny ip any any (hitcnt=8)
firewall#
Nell'esempio precedente, l'elenco degli accessi tACL-Policy ha scartato 119 pacchetti sulla porta TCP 9002 ricevuti da un host o da una rete non attendibile.
Il messaggio syslog del firewall 106023 verrà generato per i pacchetti negati da una voce di controllo di accesso (ACE) che non dispone della parola chiave log. Per ulteriori informazioni sul messaggio syslog, consultare il messaggio Cisco ASA serie 5500 System Log, 8.2 - 106023.
Le informazioni sulla configurazione del syslog per Cisco ASA serie 5500 Adaptive Security Appliance sono disponibili in Monitoraggio - configurazione della registrazione. Per informazioni sulla configurazione del syslog sul modulo FWSM per gli switch Cisco Catalyst serie 6500 e i router Cisco serie 7600, consultare il documento sul monitoraggio del modulo Firewall Services.
Nell'esempio seguente, il comando show logging | il comando grep regex estrae i messaggi syslog dal buffer di registrazione sul firewall. Questi messaggi forniscono informazioni aggiuntive sui pacchetti rifiutati che potrebbero indicare potenziali tentativi di sfruttare le vulnerabilità descritte in questo documento. È possibile utilizzare diverse espressioni regolari con la parola chiave grep per cercare dati specifici nei messaggi registrati.
Per ulteriori informazioni sulla sintassi delle espressioni regolari, vedere Creazione di un'espressione regolare.
firewall#show logging | grep 106023 Sep 14 2011 00:15:13: %ASA-4-106023: Deny tcp src outside:192.0.2.18/2944 dst inside:192.168.60.191/9002 by access-group "tACL-Policy" Sep 14 2011 00:15:13: %ASA-4-106023: Deny tcp src outside:192.0.2.200/2945 dst inside:192.168.60.33/9002 by access-group "tACL-Policy" Sep 14 2011 00:15:13: %ASA-4-106023: Deny tcp src outside:192.0.2.99/2946 dst inside:192.168.60.240/9002 by access-group "tACL-Policy" Sep 14 2011 00:15:13: %ASA-4-106023: Deny tcp src outside:192.0.2.100/2947 dst inside:192.168.60.115/9002 by access-group "tACL-Policy" Sep 14 2011 00:15:13: %ASA-4-106023: Deny tcp src outside:192.0.2.88/2949 dst inside:192.168.60.38/9002 by access-group "tACL-Policy" Sep 14 2011 00:15:13: %ASA-4-106023: Deny tcp src outside:192.0.2.175/2950 dst inside:192.168.60.250/9002 by access-group "tACL-Policy" firewall#
Nell'esempio precedente, i messaggi registrati per il tACL tACL-Policy mostrano i pacchetti per la porta TCP 9002 inviati al blocco di indirizzi assegnato ai dispositivi interessati.
Per ulteriori informazioni sui messaggi syslog per le appliance di sicurezza ASA, consultare la guida Cisco ASA serie 5500 System Log Messages, versione 8.2. Per ulteriori informazioni sui messaggi syslog per il modulo FWSM, consultare i messaggi log del sistema di registrazione dello switch Catalyst serie 6500 e del router Cisco serie 7600 Firewall Services Module.
Per ulteriori informazioni sull'analisi degli incidenti tramite eventi syslog, consultare il white paper Identificazione degli incidenti tramite firewall e eventi syslog del router IOS Applicati Intelligence.
Le informazioni complete sulla segnalazione delle vulnerabilità della sicurezza nei prodotti Cisco, su come ottenere assistenza in caso di incidenti relativi alla sicurezza e su come registrarsi per ricevere informazioni sulla sicurezza da Cisco, sono disponibili sul sito Web di Cisco all'indirizzo https://sec.cloudapps.cisco.com/security/center/resources/security_vulnerability_policy.html. Ciò include istruzioni per le richieste della stampa relative agli avvisi di sicurezza Cisco. Tutti gli avvisi sulla sicurezza Cisco sono disponibili all'indirizzo http://www.cisco.com/go/psirt.