La Top Twenty List, che può essere consultata sul sito del SANS all’indirizzo www.sans.org/top20, si configura come un insieme di regole accomunate da una struttura unitaria: descrizione della vulnerabilità e sistemi operativi colpiti; numero di Cve (Common Vulnerabilities and Exposures, una lista di nomi standardizzati relative a flaw e rischi di security derivante dall’organizzazione Mitre) inerente alla debolezza in questione; metodologia per stabilire se il proprio sistema ne è affetto e contromisure da approntare.
Ecco in dettaglio la top ten
1 - Internet Information Services (IIS)
IIS, il server Web di Microsoft, è soggetto a tre tipi di vulnerabilità: errata gestione di richieste Http composte in modo sbagliato o malizioso; buffer overflow relativamente ad estensioni Isapi (il worm Code Red, ad esempio, sfrutta una falla nell’estensione .idq) e presenza di applicazioni di esempio. I sistemi affetti sono Windows NT (e derivati) su cui è installato IIS 4; Windows 2000 Server con IIS 5; Windows XP Professional con IIS 5.1. I metodi di protezione suggeriti sono l’applicazione di patch, l’uso del tool a linea di comando hfnetcheck.exe (o dell’agente di sistema Windows Update ove disponibile), l’eliminazione delle applicazioni di esempio (quali code.asp, ism.dll o newdsn.exe), l’unmap delle estensioni Isapi non necessarie ed il filtraggio delle richieste http.
2 - Data Access Components (Mdac) e Remote Data Services (Rds)
Il componente Rds delle versioni più datate di Microsoft Data Access Components presenta un bug nella libreria msadcs.dll che consente ad utenti remoti di eseguire comandi locali con privilegi da amministratore.
In unione con una falla presente nel motore database di Microsoft Jet versione 3.5, la vulnerabilità permette un accesso esterno anonimo a database locali. I sistemi soggetti sono macchine NT 4.0 con Iis 3.0 o 4.0, Remote Data Services 1.5 o Visual Studio 6.0. La presenza sul sistema di msadcs.dll rivela l’esistenza della vulnerabilità. A parte alcuni tutorial sull'argomento si consiglia di fare riferimento ai bollettini MS98-004 e MS99-025 o di aggiornare Mdac alla versione 2.1 o successiva, scaricabile dal sito microsoft
3 - Microsoft SQL Server
Numerose vulnerabilità di SQL Server possono portare, di volta in volta, ad esporre informazioni riservate, alterare i contenuti della base dati, procurare malfunzionamenti ed arresti del servizio e, in alcune configurazioni, estendere il danno agli host.
Le flaw di SQL Server sono tra le più note, e non è un caso che il worm Spida – risalente al maggio 2002 – faccia leva su di esse; tra l’altro, la porta 1433 su cui il servizio è eseguito per default è una delle prime su cui si concentrano le scansioni di rete per preparare attacchi. I sistemi a rischio sono tutte le versioni di Windows su cui sia installato SQL Server 7.0, SQL Server 2000 o SQL Server Desktop Engine 2000.
La via migliore per scoprire vulnerabilità consiste nell’affidarsi al tool Microsoft Baseline Security Analyzer
I metodi di protezione consistono nell’installazione di service pack aggiornati, applicazione di patch cumulative o patch individuali disponibili dopo l’ultima cumulativa e fortificare l’architettura della rete.
3 - Microsoft SQL Server
Numerose vulnerabilità di SQL Server possono portare, di volta in volta, ad esporre informazioni riservate, alterare i contenuti della base dati, procurare malfunzionamenti ed arresti del servizio e, in alcune configurazioni, estendere il danno agli host.
Le flaw di SQL Server sono tra le più note, e non è un caso che il worm Spida – risalente al maggio 2002 – faccia leva su di esse; tra l’altro, la porta 1433 su cui il servizio è eseguito per default è una delle prime su cui si concentrano le scansioni di rete per preparare attacchi. I sistemi a rischio sono tutte le versioni di Windows su cui sia installato SQL Server 7.0, SQL Server 2000 o SQL Server Desktop Engine 2000.
La via migliore per scoprire vulnerabilità consiste nell’affidarsi al tool Microsoft Baseline Security Analyzer (Mbsa).
I metodi di protezione consistono nell’installazione di service pack aggiornati, applicazione di patch cumulative o patch individuali disponibili dopo l’ultima cumulativa e fortificare l’architettura della rete.
4 - NetBios e condivisioni di rete non protette
Le capacità di networking di tutte le versioni di Windows prevedono la possibilità di condividere in rete file e cartelle con altre macchine aventi lo stesso sistema operativo, sfruttando i protocolli Smb (Server Message Block) o Cifs (Common Internet File System), che permettono di accedere e modificare risorse remote come se fossero locali.
Una configurazione di rete di questi componenti non correttamente implementata presta il fianco a diverse vulnerabilità: il virus Sircam o il worm Nimda hanno avuto facile e rapida propagazione proprio in base ad esse. Per Windows NT 4.0 SP4, 2000 ed XP l’accertamento di condivisioni non protette passa per il tool mbsa a tal uopo, sono disponibili molte applicazioni di terze parti. Politiche di protezione prevedono la disabilitazione di condivisioni non necessarie, l’uso di tunneling e Vpn, la restrizione di permessi al minimo indispensabile o il vincolo all’indirizzo Ip numerico, oltre al blocco delle porte su cui girano i servizi, ovvero Tcp/Udp 137-139 e Tcp/Udp 445 (la cosiddetta Microsoft-ds port).
5 - Logon anonimo
Il logon anonimo (o sessione nulla) è il meccanismo che permette ad un utente anonimo di acquisire informazioni presenti in rete (quali user name e condivisioni) o di effettuare connessioni senza autenticazione. È usato da applicazioni quali Esplora Risorse o Risorse di Rete per tenere conto delle connessioni su server remoti. Tuttavia, molti servizi critici su NT/2000/Xp sono eseguiti a livello locale, vale a dire con privilegi illimitati e senza autenticazione. Così come le macchine usano sessioni nulle per avere informazioni da altri sistemi, lo stesso può compiere un attacker. La vulnerabilità è subito identificabile: basta eseguire da shell il comando net use \\a.b.c.d\ipc$ “” /user:”” (con a.b.c.d che rappresenta un indirizzo di rete) e constatare la risposta positiva del sistema richiamato. La soluzione consiste nel restringere l’accesso anonimo mediante modifica della chiave RestrictAnonymous del registro di sistema, e nella disabilitazione di NetBios e del print sharing ove non necessari.
6 - Autenticazione da rete – Hash debole
Il sistema di immagazzinamento di password per risorse di rete adottato da Microsoft nel caso del vecchio LAN Manager (LM) ha uno schema crittografico debole, se confrontato alle più recenti implementazioni della stessa azienda, quali Ntlm e Ntlm2. Un attacco di tipo brute force su password così conservate ha elevate possibilità di successo in un breve lasso di tempo. Varie sono le cause della debolezza: il limite massimo di 14 caratteri delle password, la possibilità di padding con spazi per raggiungere questo limite, la conversione in lettere maiuscole delle stesse e – non ultima – la loro suddivisione in due blocchi da sette caratteri l’uno. L’autenticazione di Windows in ambiente di rete, quindi, è debole nel caso sia previsto – tipicamente per motivi di compatibilità con sistemi datati – il supporto di Lan Manager. Determinare la vulnerabilità è possibile con uno scanner di password; la soluzione passa per la sostituzione dell’autenticazione Lm con ntml2 e la rimozione degli hash Lm dalle Active Directory
7 - Autenticazione senza password o con password deboli
Grazie ad account utente (a maggior ragione quelli con privilegi amministrativi) basati su password deboli o inesistenti, sulla base di algoritmi conosciuti e dei relativi hash posti in percorsi noti, è possibile compromettere la sicurezza di qualsiasi sistema. La difesa più ovvia ed al contempo efficace è una politica di password forte: istruzioni per il loro buon uso ed il frequente controllo d’integrità.
Lo strumento più idoneo è uno scanner di password (anche il vecchio tool John the Ripper è utile alla causa) in grado di verificarne la robustezza. I rimedi, dunque, vertono su password forti e ben protette, account ridotti al minimo indispensabile e la periodica verifica dei cambiamenti attuati in ambienti distribuiti.
8 - Internet Explorer
Tutte le versioni del browser Web di Microsoft hanno evidenziato nel tempo falle di sicurezza. È possibile fare leva su tali vulnerabilità mediante pagine Web con Url malformati, controlli ActiveX maliziosi, spoofing, tecniche di Active Script, volontaria errata gestione di tipi Mime e buffer overflow. Le conseguenze sono varie: esposizione di cookie o dati locali, esecuzione di programmi locali o di codice arbitrario, fino alla completa presa di possesso del sistema vulnerabile.
Strumenti per scoprire la presenza delle falle sono Windows Update o hfnetch oltre al citato Mbsa. Meccanismi di protezione sono l’installazione dei più recenti service pack e di security patch. Eppure, anche questi sistemi non risolvono del tutto il problema del cross site scripting di Internet Explorer; è quindi consigliabile disabilitare il supporto agli script in tutti i casi in cui tale supporto non sia strettamente necessario.
9 - Accesso remoto al Registro di sistema
In ogni sistema Windows, la gestione del software, le configurazioni delle periferiche e le impostazioni degli utenti sono demandate ad un database centralizzato, organizzato gerarchicamente: il Registro di Sistema.
Permessi inappropriati o impostazioni di sicurezza lasche possono permettere l’accesso remoto a questo componente: in tal modo vengono cambiate associazioni e permessi di file, od eseguito codice maligno. La quasi totalità dei malware, ad esempio, esegue modifiche sul registro per rimanere residente nella memoria di sistema od aprire backdoor.
Per determinare se è possibile l’accesso remoto al registro di sistema di una macchina, Microsoft mette a disposizione il tool regdump. Proteggersi da questa eventualità è possibile creando una chiave di registro per restringere l’accesso di rete, o manipolando il registro stesso per limitare gli accessi remoti autorizzati.
10 - Windows Scripting Host
Windows Scripting Host è un componente del sistema operativo che permette l’esecuzione di ogni file di test con estensione .vbs come script Visual Basic. Questa caratteristica è sfruttata da molti worm (eclatante il caso di I love you nel 2000), che si propagano richiamando da script Visual Basic file dannosi che vengono in tal modo eseguiti. È questo il tipico caso dell’apertura di un allegato di Outlook o – se questo è vulnerabile per la gestione dei tipi Mime – della sola anteprima.
I sistemi a rischio sono macchine Windows 98, ME, 2000 ed XP (su cui Wsh è abilitato per default) e macchine 95/NT su cui esso sia stato installato manualmente.
Sulla vulnerabilità di Wsh sono presenti in rete documenti dettagliati [1, 2]; sostanzialmente, la protezione è demandata alle capacità di blocco degli script da parte degli scanner di cui sono dotati gli antivirus.
fonte: pcprofessionale
Ecco in dettaglio la top ten
1 - Internet Information Services (IIS)
IIS, il server Web di Microsoft, è soggetto a tre tipi di vulnerabilità: errata gestione di richieste Http composte in modo sbagliato o malizioso; buffer overflow relativamente ad estensioni Isapi (il worm Code Red, ad esempio, sfrutta una falla nell’estensione .idq) e presenza di applicazioni di esempio. I sistemi affetti sono Windows NT (e derivati) su cui è installato IIS 4; Windows 2000 Server con IIS 5; Windows XP Professional con IIS 5.1. I metodi di protezione suggeriti sono l’applicazione di patch, l’uso del tool a linea di comando hfnetcheck.exe (o dell’agente di sistema Windows Update ove disponibile), l’eliminazione delle applicazioni di esempio (quali code.asp, ism.dll o newdsn.exe), l’unmap delle estensioni Isapi non necessarie ed il filtraggio delle richieste http.
2 - Data Access Components (Mdac) e Remote Data Services (Rds)
Il componente Rds delle versioni più datate di Microsoft Data Access Components presenta un bug nella libreria msadcs.dll che consente ad utenti remoti di eseguire comandi locali con privilegi da amministratore.
In unione con una falla presente nel motore database di Microsoft Jet versione 3.5, la vulnerabilità permette un accesso esterno anonimo a database locali. I sistemi soggetti sono macchine NT 4.0 con Iis 3.0 o 4.0, Remote Data Services 1.5 o Visual Studio 6.0. La presenza sul sistema di msadcs.dll rivela l’esistenza della vulnerabilità. A parte alcuni tutorial sull'argomento si consiglia di fare riferimento ai bollettini MS98-004 e MS99-025 o di aggiornare Mdac alla versione 2.1 o successiva, scaricabile dal sito microsoft
3 - Microsoft SQL Server
Numerose vulnerabilità di SQL Server possono portare, di volta in volta, ad esporre informazioni riservate, alterare i contenuti della base dati, procurare malfunzionamenti ed arresti del servizio e, in alcune configurazioni, estendere il danno agli host.
Le flaw di SQL Server sono tra le più note, e non è un caso che il worm Spida – risalente al maggio 2002 – faccia leva su di esse; tra l’altro, la porta 1433 su cui il servizio è eseguito per default è una delle prime su cui si concentrano le scansioni di rete per preparare attacchi. I sistemi a rischio sono tutte le versioni di Windows su cui sia installato SQL Server 7.0, SQL Server 2000 o SQL Server Desktop Engine 2000.
La via migliore per scoprire vulnerabilità consiste nell’affidarsi al tool Microsoft Baseline Security Analyzer
I metodi di protezione consistono nell’installazione di service pack aggiornati, applicazione di patch cumulative o patch individuali disponibili dopo l’ultima cumulativa e fortificare l’architettura della rete.
3 - Microsoft SQL Server
Numerose vulnerabilità di SQL Server possono portare, di volta in volta, ad esporre informazioni riservate, alterare i contenuti della base dati, procurare malfunzionamenti ed arresti del servizio e, in alcune configurazioni, estendere il danno agli host.
Le flaw di SQL Server sono tra le più note, e non è un caso che il worm Spida – risalente al maggio 2002 – faccia leva su di esse; tra l’altro, la porta 1433 su cui il servizio è eseguito per default è una delle prime su cui si concentrano le scansioni di rete per preparare attacchi. I sistemi a rischio sono tutte le versioni di Windows su cui sia installato SQL Server 7.0, SQL Server 2000 o SQL Server Desktop Engine 2000.
La via migliore per scoprire vulnerabilità consiste nell’affidarsi al tool Microsoft Baseline Security Analyzer (Mbsa).
I metodi di protezione consistono nell’installazione di service pack aggiornati, applicazione di patch cumulative o patch individuali disponibili dopo l’ultima cumulativa e fortificare l’architettura della rete.
4 - NetBios e condivisioni di rete non protette
Le capacità di networking di tutte le versioni di Windows prevedono la possibilità di condividere in rete file e cartelle con altre macchine aventi lo stesso sistema operativo, sfruttando i protocolli Smb (Server Message Block) o Cifs (Common Internet File System), che permettono di accedere e modificare risorse remote come se fossero locali.
Una configurazione di rete di questi componenti non correttamente implementata presta il fianco a diverse vulnerabilità: il virus Sircam o il worm Nimda hanno avuto facile e rapida propagazione proprio in base ad esse. Per Windows NT 4.0 SP4, 2000 ed XP l’accertamento di condivisioni non protette passa per il tool mbsa a tal uopo, sono disponibili molte applicazioni di terze parti. Politiche di protezione prevedono la disabilitazione di condivisioni non necessarie, l’uso di tunneling e Vpn, la restrizione di permessi al minimo indispensabile o il vincolo all’indirizzo Ip numerico, oltre al blocco delle porte su cui girano i servizi, ovvero Tcp/Udp 137-139 e Tcp/Udp 445 (la cosiddetta Microsoft-ds port).
5 - Logon anonimo
Il logon anonimo (o sessione nulla) è il meccanismo che permette ad un utente anonimo di acquisire informazioni presenti in rete (quali user name e condivisioni) o di effettuare connessioni senza autenticazione. È usato da applicazioni quali Esplora Risorse o Risorse di Rete per tenere conto delle connessioni su server remoti. Tuttavia, molti servizi critici su NT/2000/Xp sono eseguiti a livello locale, vale a dire con privilegi illimitati e senza autenticazione. Così come le macchine usano sessioni nulle per avere informazioni da altri sistemi, lo stesso può compiere un attacker. La vulnerabilità è subito identificabile: basta eseguire da shell il comando net use \\a.b.c.d\ipc$ “” /user:”” (con a.b.c.d che rappresenta un indirizzo di rete) e constatare la risposta positiva del sistema richiamato. La soluzione consiste nel restringere l’accesso anonimo mediante modifica della chiave RestrictAnonymous del registro di sistema, e nella disabilitazione di NetBios e del print sharing ove non necessari.
6 - Autenticazione da rete – Hash debole
Il sistema di immagazzinamento di password per risorse di rete adottato da Microsoft nel caso del vecchio LAN Manager (LM) ha uno schema crittografico debole, se confrontato alle più recenti implementazioni della stessa azienda, quali Ntlm e Ntlm2. Un attacco di tipo brute force su password così conservate ha elevate possibilità di successo in un breve lasso di tempo. Varie sono le cause della debolezza: il limite massimo di 14 caratteri delle password, la possibilità di padding con spazi per raggiungere questo limite, la conversione in lettere maiuscole delle stesse e – non ultima – la loro suddivisione in due blocchi da sette caratteri l’uno. L’autenticazione di Windows in ambiente di rete, quindi, è debole nel caso sia previsto – tipicamente per motivi di compatibilità con sistemi datati – il supporto di Lan Manager. Determinare la vulnerabilità è possibile con uno scanner di password; la soluzione passa per la sostituzione dell’autenticazione Lm con ntml2 e la rimozione degli hash Lm dalle Active Directory
7 - Autenticazione senza password o con password deboli
Grazie ad account utente (a maggior ragione quelli con privilegi amministrativi) basati su password deboli o inesistenti, sulla base di algoritmi conosciuti e dei relativi hash posti in percorsi noti, è possibile compromettere la sicurezza di qualsiasi sistema. La difesa più ovvia ed al contempo efficace è una politica di password forte: istruzioni per il loro buon uso ed il frequente controllo d’integrità.
Lo strumento più idoneo è uno scanner di password (anche il vecchio tool John the Ripper è utile alla causa) in grado di verificarne la robustezza. I rimedi, dunque, vertono su password forti e ben protette, account ridotti al minimo indispensabile e la periodica verifica dei cambiamenti attuati in ambienti distribuiti.
8 - Internet Explorer
Tutte le versioni del browser Web di Microsoft hanno evidenziato nel tempo falle di sicurezza. È possibile fare leva su tali vulnerabilità mediante pagine Web con Url malformati, controlli ActiveX maliziosi, spoofing, tecniche di Active Script, volontaria errata gestione di tipi Mime e buffer overflow. Le conseguenze sono varie: esposizione di cookie o dati locali, esecuzione di programmi locali o di codice arbitrario, fino alla completa presa di possesso del sistema vulnerabile.
Strumenti per scoprire la presenza delle falle sono Windows Update o hfnetch oltre al citato Mbsa. Meccanismi di protezione sono l’installazione dei più recenti service pack e di security patch. Eppure, anche questi sistemi non risolvono del tutto il problema del cross site scripting di Internet Explorer; è quindi consigliabile disabilitare il supporto agli script in tutti i casi in cui tale supporto non sia strettamente necessario.
9 - Accesso remoto al Registro di sistema
In ogni sistema Windows, la gestione del software, le configurazioni delle periferiche e le impostazioni degli utenti sono demandate ad un database centralizzato, organizzato gerarchicamente: il Registro di Sistema.
Permessi inappropriati o impostazioni di sicurezza lasche possono permettere l’accesso remoto a questo componente: in tal modo vengono cambiate associazioni e permessi di file, od eseguito codice maligno. La quasi totalità dei malware, ad esempio, esegue modifiche sul registro per rimanere residente nella memoria di sistema od aprire backdoor.
Per determinare se è possibile l’accesso remoto al registro di sistema di una macchina, Microsoft mette a disposizione il tool regdump. Proteggersi da questa eventualità è possibile creando una chiave di registro per restringere l’accesso di rete, o manipolando il registro stesso per limitare gli accessi remoti autorizzati.
10 - Windows Scripting Host
Windows Scripting Host è un componente del sistema operativo che permette l’esecuzione di ogni file di test con estensione .vbs come script Visual Basic. Questa caratteristica è sfruttata da molti worm (eclatante il caso di I love you nel 2000), che si propagano richiamando da script Visual Basic file dannosi che vengono in tal modo eseguiti. È questo il tipico caso dell’apertura di un allegato di Outlook o – se questo è vulnerabile per la gestione dei tipi Mime – della sola anteprima.
I sistemi a rischio sono macchine Windows 98, ME, 2000 ed XP (su cui Wsh è abilitato per default) e macchine 95/NT su cui esso sia stato installato manualmente.
Sulla vulnerabilità di Wsh sono presenti in rete documenti dettagliati [1, 2]; sostanzialmente, la protezione è demandata alle capacità di blocco degli script da parte degli scanner di cui sono dotati gli antivirus.
fonte: pcprofessionale