Introduzione
Questo documento descrive il modello di sicurezza alla base della crittografia della password Cisco e i limiti di sicurezza di tale crittografia.
Introduzione
Un programma realizzato da una fonte esterna a Cisco permette di decriptare le password degli utenti (e altre password) nei file di configurazione Cisco. Il programma non decrittografa le password impostate enable secret
La preoccupazione inaspettata che il programma abbia causato tra gli utenti Cisco ha fatto nascere il sospetto che molti di essi si affidino alla crittografia della password Cisco per una sicurezza maggiore di quella per cui è stata progettata.
Nota: Cisco consiglia a tutti i dispositivi Cisco IOS® di implementare il modello di sicurezza autenticazione, autorizzazione e accounting (AAA). AAA può utilizzare database locali, RADIUS e TACACS+.
Prerequisiti
Requisiti
Nessun requisito specifico previsto per questo documento.
Componenti usati
Il documento può essere consultato per tutte le versioni software o hardware.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Convenzioni
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Password utente
Password utente e la maggior parte delle altre password (non enable secret
s) nei file di configurazione di Cisco IOS, sono crittografati con uno schema molto debole rispetto ai moderni standard di crittografia.
Sebbene Cisco non distribuisca un programma di decrittografia, almeno due diversi programmi di decrittografia per le password Cisco IOS sono disponibili al pubblico su Internet; la prima versione pubblica di un programma di questo tipo, di cui Cisco è a conoscenza, è stata rilasciata all'inizio del 1995. Ci aspetteremmo che qualsiasi crittografo dilettante sia in grado di creare un nuovo programma con poco sforzo.
Lo schema usato da Cisco IOS per le password degli utenti non è mai stato pensato per resistere ad un attacco determinato e intelligente. Lo schema di crittografia è stato progettato per evitare il furto della password tramite semplici operazioni di snooping o sniffing. Non è mai stato progettato per proteggere il file di configurazione da utenti che tentano di intercettare le password.
A causa dell'algoritmo di crittografia vulnerabile, è sempre stato Cisco che gli utenti trattassero i file di configurazione che contengono password come informazioni riservate, allo stesso modo in cui gestirebbero un elenco di password in formato testo non crittografato.
Comandi enable secret e enable password
OSPF (Open Shortest Path First) enable password
non è più consigliabile utilizzare il comando. Utilizzare il enable secret
per una maggiore sicurezza. L'unico caso in cui il enable password
può essere testato quando il dispositivo è in modalità di avvio che non supporta enable secret
L'hash dei segreti di abilitazione viene eseguito con l'algoritmo MD5. A quanto ne sanno tutti in Cisco, è impossibile recuperare un segreto di abilitazione in base al contenuto di un file di configurazione (a parte ovvi attacchi da dizionario).
Nota: questa opzione è valida solo per le password impostate con enable secret
e non alle password impostate con enable password
. Infatti, la forza della crittografia utilizzata è l'unica differenza significativa tra i due comandi.
Quale immagine Cisco IOS supporta l'abilitazione del segreto?
Osservare l'immagine d'avvio con show version
dalla modalità operativa normale (immagine Cisco IOS completa) per verificare se l'immagine di avvio supporta enable secret
In caso affermativo, rimuovere enable password
. Se l'immagine d'avvio non supporta enable secret
, tenere presente quanto segue:
-
L'utilizzo di una password di abilitazione può non essere necessario se si dispone della protezione fisica in modo che nessuno possa ricaricare il dispositivo sull'immagine di avvio.
-
Se qualcuno ha accesso fisico al dispositivo, può facilmente sovvertire la sicurezza del dispositivo senza dover accedere all'immagine d'avvio.
-
Se si imposta il enable password
allo stesso modo del enable secret
, è stato creato il enable secret
è incline ad attaccare in quanto enable password
.
-
Se si imposta enable password
a un valore diverso perché l'immagine d'avvio non supporta enable secret
, gli amministratori del router devono ricordare una nuova password che viene utilizzata raramente nelle ROM che non supportano enable secret
Con una password di abilitazione separata, gli amministratori devono ricordare la password quando forzano un downtime per un aggiornamento software, che è l'unico motivo per accedere alla modalità di avvio.
Altre password
Quasi tutte le password e le altre stringhe di autenticazione nei file di configurazione di Cisco IOS vengono crittografate con lo schema debole e reversibile usato per le password degli utenti.
Per determinare lo schema utilizzato per crittografare una password specifica, controllare la cifra prima della stringa crittografata nel file di configurazione. Se la cifra è 7, la password è stata crittografata con l'algoritmo di protezione vulnerabile. Se la cifra è un 5, la password è stata sottoposta a hashing con l'algoritmo MD5 più avanzato.
Ad esempio, nel comando configuration:
enable secret 5 $1$iUjJ$cDZ03KKGh7mHfX2RSbDqP.
Il segreto enable è stato sottoposto a hashing con MD5, mentre nel comando:
username jdoe password 7 07362E590E1B1C041B1E124C0A2F2E206832752E1A01134D
La password è stata crittografata con l'algoritmo vulnerabile e reversibile.
File di configurazione
Quando si inviano informazioni di configurazione tramite posta elettronica, eliminare la configurazione dalle password di tipo 7. È possibile utilizzare il show tech-support
, che per impostazione predefinita purifica le informazioni. Esempio show tech-support
l'output del comando è mostrato di seguito:
...
hostname routerA
!
aaa new-model
aaa authentication login default local
aaa authentication ppp default if-needed local
enable secret 5
!
username jdoe password 7
username headquarters password 7
username hacker password 7
...
Quando si salvano i file di configurazione su un server TFTP (Trivial File Transfer Protocol), modificare i privilegi su tale file quando non è in uso o posizionarlo dietro un firewall.
È Possibile Modificare L'Algoritmo?
Cisco non prevede di supportare immediatamente un algoritmo di crittografia più avanzato per le password degli utenti Cisco IOS. Se Cisco decide di introdurre una funzionalità di questo tipo in futuro, la funzionalità in questione imporrà sicuramente un ulteriore onere amministrativo agli utenti che scelgono di sfruttarla.
In generale, non è possibile passare le password utente all'algoritmo basato su MD5 utilizzato per abilitare i segreti, in quanto MD5 è un hash unidirezionale e la password non può essere recuperata dai dati crittografati. Per supportare alcuni protocolli di autenticazione (in particolare la protezione CHAP), il sistema deve accedere al testo non crittografato delle password utente, che devono quindi essere memorizzate con un algoritmo reversibile.
I problemi di gestione delle chiavi renderebbero non banale il passaggio a un algoritmo reversibile più avanzato, ad esempio il DES (Data Encryption Standard). Sebbene sia facile modificare Cisco IOS in modo che utilizzi DES per crittografare le password, questo approccio non offre vantaggi in termini di sicurezza se tutti i sistemi Cisco IOS utilizzassero la stessa chiave DES. Se i diversi sistemi utilizzassero chiavi diverse, verrebbe introdotto un onere amministrativo per tutti gli amministratori di rete Cisco IOS e la portabilità dei file di configurazione tra i sistemi ne risulterebbe danneggiata. La richiesta da parte degli utenti di una crittografia più avanzata e reversibile delle password è stata ridotta.
Informazioni correlate