Difendersi dai rootkit: guida alla protezione del nostro Pc
(1/1)
ridethesnake:
Dopo un lungo periodo in cui sono rimasti un tema specialistico per gli appassionati, gli esperti di informatica e gli addetti ai lavori, oggi i rootkit sono sulla bocca di tutti e sono diventati i protagonisti del mondo informatico.
Le Software House di sicurezza più importanti e famose includono nei loro sistemi antivirus funzioni antirootkit, e rilasciano gratuitamente tool che dovrebbero assicurare la loro rilevazione ed eliminazione dai nostri Pc, mentre programmi come Rootkit Revealer e Gmer un tempo conosciuti e utilizzati solo da una ristretta cerchia di utenti più esperti sono improvvisamente diventati famosi.
Tanto che nei forum di informatica si sta diffondendo la tendenza a postare il log di RR o Gmer dopo la scansione del proprio sistema e chiedere aiuto nella sua interpretazione, come già da tempo si fa con Hijackthis.
Del resto la diffusione a livello mondiale dell’insidiosissimo malware Gromozon – che i più conoscono con il nome di Link -Optimizer – il cui componente più pericoloso e maligno è appunto un rootkit, e che continua a infettare nuovi sistemi riproducendosi in sempre nuove varianti, ha definitivamente fatto entrare i rootkit nella dimensione più nota e universale dei fenomeni e degli eventi informatici.
Il fatto che finalmente l’esistenza e soprattutto l’alto grado di pericolosità dei rootkit, o meglio della specie maligna dei rootkit, stia diventando di dominio pubblico e sia ora familiare anche ai friendly user è certamente positivo, ma per quanto riguarda la comprensione della loro natura e la difesa dei nostri sistemi dalle loro insidie le idee sono ancora vaghe, per non dire confuse. Il che rappresenta un fatto altamente negativo, perché questa famiglia di malware oltre ad essere molto insidiosa ha anche delle caratteristiche proprie che la differenziano molto da tutte le altre minacce conosciute finora, e proprio per questo occorrerebbe esserne informati accuratamente.
Per la definizione della loro struttura e del loro funzionamento rimandiamo all’articolo sui rootkit di Alessandro, da cui ci limitiamo a riprendere un concetto di fondo che è molto importante ricordare per capire anche come difendersi: i rootkit sono in grado di modificare il kernel stesso del sistema riscrivendone parte di codice, possono nascondere processi e cartelle, porte di sistema, chiavi del registro, servizi, possono perfino creare utenti fittizi creati dallo stesso malware e farli comunicare all’esterno, nel web. I rootkit inoltre si insediano molto profondamente nel sistema operativo, tra il livello user ed il livello kernel: in questo modo modo i comandi dell’utente, ma anche le attività dei software di sicurezza come antivirus, firewall ecc possono essere intercettati dal rootkit prima che questi arrivino al kernel, rendendo i nostri sistemi di difesa inutilizzabili.
La conseguenza è che un rootkit può arrivare – a seconda delle funzioni inserite nel codice dai suoi creatori – a dirigere a piacimento la struttura fondamentale di un sistema operativo ad un livello molto profondo: controllo del pc da remoto, zombizzazione, disattivazione o distruzione o manipolazione di applicazioni e servizi fondamentali, trasmissione a terzi di informazioni e dati personali.
Visti così, e la realtà è proprio questa, i rootkit possono sembrare invincibili, ma per fortuna non è così. Per organizzare un sistema di sicurezza che protegga da loro il nostro pc occorre però tenere presente alcuni concetti:
1) I rootkit non entrano spontaneamente nei sistemi, perché inizino ad esercitare le loro funzioni occorre che qualcuno o qualcosa li faccia entrare.
2) Quando però vi sono penetrati può essere troppo tardi per difendersene e neutralizzarli efficacemente.
3) Anche ammesso di riuscire a stanarli ed eliminarli può accadere che ormai – soprattutto se hanno riscritto o cancellato parti di codice e del kernel – il nostro sistema operativo sia definitivamente compromesso e occorra formattarlo e reinstallarlo.
4) I metodi di rilevazione dei rootkit sono al momento tutti indiretti, e si basano essenzialmente sulla ricerca di tracce della loro presenza in un sistema scansionandolo a due diversi livelli: si esegue una prima scansione delle normali funzioni API (Application Programming Interface) , poi una seconda scansione opera a bassissimo livello e accede direttamente ai dati contenuti nel disco rigido. La scoperta di eventuali differenze nei risultati è spesso, ma non sempre, sintomo della presenza di uno o più rootkit che operano a livello del kernel in modalità hidden occultando la propria presenza e intercettando, modificare o eliminando ogni informazione su se stessi dalle API.
Se analizziamo e consideriamo il significato di questi punti possiamo anche cercare di costruire un sistema di sicurezza più adeguato.
1) Un rootkit ben progettato può fare, come abbiamo detto, molte cose, anche molto distruttive per il nostro sistema , ma una cosa non può fare: mettersi le gambe ed entrare da solo nel nostro computer. Bisogna che qualcuno, o noi stessi inavvertitamente, ve lo introduciamo.
Solo dopo potrà cominciare ad agire e ad essere pericoloso. Qui dobbiamo intenderci dal punto di vista concettuale e linguistico: allo stato attuale delle cose un rootkit propriamente detto sembra non essere in grado di autoeseguirsi automaticamente non appena viene in contatto nel nostro sistema, ma ha bisogno di esservi veicolato da un’altra struttura o da un altro evento. Se poi vogliamo chiamare – come a volte accade – “ rootkit “ il malware complesso che consente al codice che costituisce il rootkit vero e proprio, possiamo farlo, ma il concetto di base non cambia.
Quindi un rootkit deve essere veicolato da qualcos’altro: può trattarsi di un trojan, attraverso un programma o un file scaricato da noi stessi da internet, o un worm diffuso in allegato via email. Oppure può essere introdotto da terzi: da un hacker che sfrutta porte aperte o non ben difese del nostro sistema, o che sfrutta uno zero-day exploit o anche semplicemente che exploita una falla comunque non patchata del nostro sistema, non necessariamente di Windows ma anche di applicazioni di terze parti ( come quella recente di Flash Player ) o ancora con tecniche di social engineering.
Può essere veicolato sfruttando falle come la nota vulnerabilità WMF, o in mille altre modi durante la nostra navigazione in internet e nelle pagine web ( java script…. ) oppure può penetrare nel nostro pc in maniera casuale, attraverso reti di file-sharing, semplicemente attraverso reti infette, i botnet, o tramite i sistemi di messaggistica istantanea. Ma la sua introduzione può avvenire anche, in sistemi aperti a molti utenti, con un dischetto o una USB Pen Drive. E probabilmente abbiamo dimenticato ancora qualcosa !
2) Senza voler togliere assolutamente niente al meritevolissimo lavoro di specialisti di calibro mondiale come Mark Russinovich, creatore di Rootkit Revealer, e a tool di rilevamento e/o rimozione dei rootkit come appunto RR, o Gmer, o IceSword, il problema di questo tipo di strumenti è che non sono delle vere e proprie difese, o meglio, se lo sono, rischiano di essere tardive e inefficaci. Molto spesso infatti si ricorre ad uno di questi tool, o agli altri analoghi diffusi da varie Software House di sicurezza come F-Secure, Sophos, AVG, Bit Defender…quando il rootkit è realmente insediato nel nostro sistema e ha già cominciato a produrre i suoi effetti maligni: rallentamenti e sovraccarico della memoria e della CPU, crash e o riavvii consecutivi, neutralizzazione di antivirus o altri software che cessano di funzionare e rispondere ai nostri comandi….
Anzi, sono proprio questi effetti che ci hanno indotto a provare una scansione del sistema con i programmi citati. Ma ormai è possibile, soprattutto se il rootkit era programmato per produrre azioni distruttive, per sottrarci o alterarci dati e file, o per radicarsi nel nostro sistema assumendone il controllo, che i danni peggiori – ad esempio il furto di dati, anche personali, finanziari, o di lavoro, la rubrica dei mittenti email… - si siano già verificati, e che anche il rilevamento del rootkit costituisca una ben magra e inutile consolazione.
3) Consideriamo poi che è possibile che il nostro sistema operativo, o alcuni programmi e applicazioni particolarmente importanti, siano irrimediabilmente e definitivamente compromessi. Il codice del rootkit può infatti avere modificato, cancellato o riscritto parti fondamentali del kernel e del sistema, con il risultato che il sistema può essere inutilizzabile o, peggio ancora, diventato utilizzabile e utile solo, a distanza, per i creatori del rootkit. Zombizzato, appunto.
4) Infine gli stessi autori dei programmi di rilevazione dei rootkit dichiarano che, al momento, i loro strumenti non sono infallibili e perfetti nella scoperta e nel riconoscimento dei rootkit, anche a causa appunto del metodo indiretto che sono costretti ad usare. Un rootkit hidden per definizione non manifesta ma nasconde la sua presenza e le sue azioni, e le discrepanze fra ciò che appare, nelle scansioni con quei programmi, fra i livelli più bassi del sistema e le API non dipendono sempre e solo da rootkit e processi maligni, ma anche da molti altri elementi innocui o addirittura importanti per il sistema.
Un esempio, che ho constatato anche personalmente facendo la prova è il processo benigno e assolutamente utile adoperato dall’antivirus Kaspersky e descritto da Alessandro nell’articolo che abbiamo citato all’inizio: è stato rilevato – correttamente - come processo hidden da Rootkit Revealer e da Gmer anche se non è per l’appunto un rootkit maligno.
A proposito di questo punto aggiungiamo poi che l’interpretazione dei risultati dell’analisi e delle scansioni di questi prodotti è relativamente difficile, sempre ammesso che il rootkit non sia stato progettato per modificare a tal punto il codice del kernel da riuscire a celare la propria presenza anche quando i programmi di analisi scansionano i livelli più profondi del sistema.
Proprio la vicenda Gromozon, se ce ne fosse bisogno, rappresenta una dimostrazione concreta e completa di quanto possa essere difficile stanare e soprattutto eliminare in maniera definitiva, completa e sicura un rootkit da un sistema infettato.
La difesa più efficace dai rootkit è quindi la prevenzione.
Un pc adeguatamente protetto, difeso da ogni tipo di intrusione indesiderata possibile, è un pc in cui molto difficilmente un rootkit riuscirà ad entrare. Naturalmente non è possibile rendere il nostro sistema invulnerabile ai rootkit, come non lo è rispetto alle altre minacce informatiche, e a maggior ragione in questo campo in cui al momento c’è un vero e proprio gap fra i creatori di rootkit maligni da una parte, e i ricercatori di software di sicurezza e protezione per dall’altra: questo dipende sia dalla particolare natura di questa insidia,come abbiamo spiegato, sia dal fatto che i compilatori di rootkit sembrano essere sempre vari passi avanti rispetto agli ideatori di strumenti di difesa.
Il risultato è che gli aggressori informatici che utilizzano rootkit sono avvantaggiati e dispongono di armi al momento molto più sofisticati dei mezzi di rilevamento e rimozione.
Ma se allestiamo intorno al nostro sistema un sistema di sicurezza completo e a più strati, in grado cioè di fronteggiare e bloccare minacce diverse fra loro e che colpiscono anche a livelli diversi, possiamo raggiungere un alto livello di sicurezza e protezione, in grado di farci dormire sonni tranquilli.
Lo scopo di questo articolo è dimostrare come raggiungere questo obiettivo senza dover essere dei maghi dell’informatica o degli specialisti della sicurezza, e proprio per questo prenderemo in considerazione principi e applicazioni teoricamente alla portata di tutti, senza toccare i massimi livelli di sofisticazione tecnica.
Il concetto di fondo per prevenire e bloccare all’esterno i rootkit è quello di un sistema di sicurezza stratificato: per blindare adeguatamente il nostro pc occorre predisporre un dispositivo di sicurezza multiplo, costituito da software differenti che siano in grado di rilevare e fronteggiare nello stesso tempo minacce e attacchi informatici che sono di natura diversa e che proprio per questo richiedono difese e risposte ugualmente differenziate.
Abbiamo visto come un rootkit per penetrare nel nostro pc può utilizzare varie tecniche di attacco e di intrusione,a diverso livello, e quindi il nostro dispositivo di sicurezza dovrà essere altrettanto diversificato, in modo da prevenirle e contrastarle tutte.
Possiamo anche pensare a questa situazione, un sistema di protezione complesso, come ad una serie di cerchi concentrici intorno al nostro pc, ma è più adeguato parlare di strati o livelli di protezione: gli aggressori cercano di penetrare in un pc appunto a livelli diversi e con strumenti diversi, e il software che può avere delle performance eccezionali nel difenderci da un certo tipo di attacco, un firewall ad esempio, risulta totalmente inutile nel prevenire una minaccia che colpisce in maniera diversa, ad esempio un trojan celato in un file o in un programma che scarichiamo da internet o da un supporto esterno.
L’adozione di più sistemi di sicurezza comunque crea effettivamente anche un sistema di difesa a cerchi concentrici, per cui un malware non intercettato e bloccato dall’antivirus, ad esempio, potrà però essere rilevato dall’antitrojan o bloccato in attesa di una nostra risposta da un sistema di controllo e analisi dei processi in atto nel nostro pc.
Al di là della molteplicità e varietà di specie, i malware che veicolano rootkit possono entrare nel nostro sistema fondamentalmente in tre modi: attraverso un file scaricato inconsapevolmente da noi stessi ( un virus, un worm, un spyware ) e contenuto in un programma, un’email, un allegato, un’immagine e via dicendo ; attraverso l’attacco diretto effettuato da un hacker che individua una porta aperta nel nostro sistema e la sfrutta per introdurvi codice maligno; attraverso una falla o una vulnerabilità note del sistema operativo, ma anche di altre applicazioni o addirittura tramite una vulnerabilità nuova per la quale, sia essa conosciuta e descritta o meno, non esiste ancora la patch di sicurezza che la chiude, le famose vulnerabilità “ zero-day “.
Di conseguenza un sistema di sicurezza come quello che abbiamo introdotto, stratificato, deve prevenire e bloccare tutte e tre queste potenziali direttive di attacco e penetrazione nel nostro pc, ma anche monitorare il nostro sistema e controllare ciò che accade al suo interno nella maggior misura possibile. Sarà quindi costituito da quattro diversi tipi di strumenti
1) Programmi attivi per rilevare e bloccare i diversi tipi di malware e codici maligni che possono veicolare rootkit: antivirus, antitrojan, antispyware.
2) Firewall ,vale a dire software dedicati a bloccare attacchi effettuati direttamente dagli aggressori, i tentativi di penetrazione degli hacker ( per l’ennesima volta, bisognerebbe usare il termine cracker….).
3) Policy di sicurezza che consentono sia nel configurare browser per la navigazione in internet e client di posta con regole restrittive sia in comportamenti, come gli update o l’apertura di allegati e file ricevuti per email o proposti da siti web, che in realtà dovrebbero già fare parte del nostro bagaglio di utenti informatici.
4) HIPS ( Host intrusion prevention system ): software che assicurino il completo e continuo controllo del nostro pc e di tutte le sue attività impedendo che sia attaccato e modificato nelle parti essenziali del suo sistema o che un processo o un’applicazione indesiderata si attivino a nostra insaputa e al di fuori delle nostre intenzioni.
Programmi attivi: il primo strumento per introdurre i rootkit sono indubbiamente i virus e tutti gli altri malware: trojan, worm, spyware. Si tratta di programmi diversi fra loro, anche se a volte scambiano o incrociano le loro funzioni, e non è detto che debbano avere lo stesso tipo di codice, anzi…
Per questo per prevenirli efficacemente la nostra prima linea di difesa deve essere costituita da software che prevengano tutte le diverse varietà di malware. Come dicevamo prima, attualmente virus, worm, trojan e spyware a volte si sovrappongono gli uni gli altri assumendo contemporaneamente diverse funzioni, ma conservano ancora differenze nel loro proprio codice, e di conseguenza richiedono spesso database diversi per poter essere efficacemente rilevati.
Il nostro primo strato deve allora comprendere almeno un antivirus e un antispyware. Il ruolo degli antivirus viene periodicamente sottovalutato o sopravvalutato: oggi in effetti – a volte forse soprattutto per motivi di mercato – i produttori propongono antivirus onnicomprensivi che si qualificano anche come antitrojan, antispyware e con tante altre funzioni aggiuntive.
La scelta è ovviamente anche personale, e indubbiamente alcune Software House vantano non solo prodotti eccellenti, ma anche centri di ricerca sui virus e sulle nuove infezioni estremamente efficienti. Tuttavia è meglio dotarsi almeno di un antivirus e di un antispyware distinti: in primo luogo i rispettivi database sono diversi, in secondo luogo quello degli spyware è un campo piuttosto variegato in cui difficilmente un solo prodotto è in gradi di rilevare tutti gli spyware in circolazione.
Tanto è vero che già normalmente è abbastanza diffusa l’abitudine di abbinare più prodotti antispy, magari tenendone uno solo attivato in real time ma utilizzando ne almeno un secondo per una scansione manuale ulteriore di controllo. Questo oggi è sempre più indicato perché gli spyware da programmi di monitoraggio e rilevamento della navigazione in internet con fini per lo più pubblicitari e commerciali, stanno diventando veicoli di penetrazione per l’installazione di rootkit. E infatti gli antispy di ultima generazione cominciano ad assumere funzioni più approfondite e sofisticate rispetto ai precedenti
Occorre poi considerare anche i trojan: un tempo nettamente distinti dai virus veri e propri, oggi non è sempre facile distinguerli fra loro, anche perché la maggior parte dei virus ora hanno scopi decisamente fraudolenti e quindi utilizzano sempre più delle funzioni trojan. I software antivirus più sofisticati e curati comprendono spesso molte definizioni e firme di trojan, ma per aumentare il livello di sicurezza è opportuno abbinare all’antivirus un prodotto antitrojan specifico.
Questa è una misura secondo me più utile dell’aggiungere un secondo antivirus a quello già installato, proprio perché gli antitrojan sono appunto specializzati nella rilevazione di questi malware, e poi perché molto raramente interferiscono o creano conflitto con l’antivirus, contrariamente a quello che accade quando in un sistema sono contemporaneamente presenti due antivirus. Infine in alcuni casi è accaduto che un produttore di antitrojan rilevasse un nuovo malware o una sua variante, e ne approntasse le relative definizioni, prima delle case antivirus.
Naturalmente fare regolarmente una scansione approfondita ondine del proprio sistema con uno dei tanti software antivirus che la mettono gratuitamente a disposizione in rete, rimane un accorgimento sempre utile per la sicurezza, anche al di là del tema specifico dei rootkit.
Firewall: qui non c’è molto di nuovo da aggiungere, ritengo che ormai tutti siano al corrente di quanto la presenza di un firewall nel proprio sistema sia un requisito assolutamente indispensabile per garantirne la sicurezza. Ciò di cui purtroppo non molti sono ancora consapevoli è che per assicurare la protezione dai tentativi di intrusione un firewall deve assicurare il controllo anche delle connessioni in uscita dal nostro sistema, e non solo da quelle in entrata, come fa ad esempio l’attuale Windows Firewall di XP SP2.
Infatti molti processi dello stesso Windows, così come anche diversi altri programmi e applicazioni installate da noi stessi, cercano spesso o addirittura continuamente di connettersi all’esterno del nostro sistema, online.
Questo avviene per vari motivi, di solito del tutto legittimi, ma facendo questo espongono ugualmente il nostro sistema all’attenzione ed alla potenziale penetrazione – attraverso porte, vulnerabilità, processi vari – da parte dei malintenzionati sempre alla ricerca di occasioni di attacco. Senza contare che un’applicazione può anche contener a nostra insaputa uno spyware o addirittura un trojan, e quindi comunicare direttamente con un hacker. A questo punto il nostro pc è realmente a rischio. Se applichiamo queste considerazioni al pericolo costituito dai rootkit, comprenderemo quanto sia importante che il firewall abbia la possibilità, e sia configurato, anche per controllare le connessioni in uscita. Il concetto è talmente chiaro e fondamentale che la stessa Microsoft ha perfezionato in tal senso la versione del Windows Firewall installata nel nuovo sistema operativo Vista.
L’altra cosa da sottolineare riguardo l’utilizzo dei firewall e specialmente in relazione al nostro tema prevenzione e protezione dalla penetrazione dei rootkit, e che in genere è ignorata o comunque disattesa, è che per assicurarsi una protezione approfondita e con il massimo gradi di completezza possibile non è sufficiente avere un firewall, anche eccellente: è necessario configurarlo nella maniera più ristretta e personalizzata che ci sia possibile, in modo da autorizzare la connessione, nelle due direzioni inbound e outbound, non solo esclusivamente alle applicazioni strettamente necessarie e selezionate da noi stessi, ma anche solo per quelle porte, e magari addirittura solo per quegli host, per cui sia utile o necessario.
La maggior parte dei firewall moderni propone già, per molti programmi noti e diffusi, una serie di regole preconfigurate di default che si abilitano al momento dell’installazione del firewall o comunque proposte quando iniziamo ad usare questo o quel programma. Questo rappresenta già un passo in avanti rispetto alla scelta, poco indicata per la sicurezza, di concedere automaticamente le autorizzazioni alle nostre applicazioni che ce lo richiedono, ma non rappresenta il massimo livello di protezione raggiungibile: le regole preconfigurate proposte dai firewall sono pensate per utenti che fanno uso di svariate applicazioni in molte situazioni diverse e che non sono in grado di settarsi da soli un firewall.
Per questa ragione queste regole sono ancora troppo larghe e permissive e abilitano al traffico in internet più porte rispetto quelle che potrebbero e dovrebbero essere utilizziate effettivamente, per evitare che un utente si trovi bloccato durante la navigazione o l’uso ondine di un’applicazione – un programma di messaggistica istantanea o di file sharing, ad esempio - senza capire perché e senza sapere cosa fare.
Ma se desideriamo blindare realmente il nostro sistema occorre scegliere di predisporre una configurazione personalizzata, con regole restrittive e dedicate per ogni singola applicazione. E’ vero che di per sé può essere un compito troppo sofisticato e specialistico da affrontare da soli, ma esistono guide e aiuti facilmente reperibili online, anche nel nostro Sito, e si può sempre ricorrere per aiuto e indicazioni ai forum di informatica. Il risultato dopo questo tipo di configurazione del firewall, da aggiornare sempre ogni volta che modifichiamo la configurazione di un programma o aggiungiamo un’applicazione, sarà un livello di sicurezza della nostra navigazione molto più elevato.
Policy di sicurezza: le politiche di sicurezza comprendono tutte quelle attività di configurazione e manutenzione del nostro sistema che contribuiscono ad impedire che sia penetrato o modificato da altre persone o da programmi non installati intenzionalmente da noi stessi. Diamo per scontato tutta una serie di comportamenti che dovrebbero essere ormai cultura e patrimonio comune e universalmente noto – anche se non è sempre così – degli utenti informatici, come navigare usando il proprio sistema operativo con un account utente e non come administrator, disattivare l’anteprima degli allegati di posta nel proprio client email, non aprire o scaricare allegati delle email se vengono da mittenti non conosciuti e possibilmente controllare la reale origine anche di quelli che sembrano provenire da mittenti noti, prima di aprirli, non usare nel nostro pc USB Pen e altri supporti mobili di origine o percorsi informatici ignoti e non sicuri, e così via… Qui ci riferiamo a politiche che sono pur sempre fondamentali ma ancora meno note o praticate, e specificamente a due cose: update e restrizioni.
Update in primo luogo significa, naturalmente, l’aggiornamento costante del sistema operativo, dell’antivirus e degli altri programmi di sicurezza installati, ma comporta anche, fatto meno noto, informarsi e applicare sempre gli aggiornamenti per molte altre applicazioni e programmi non di sicurezza. Da un po’ di tempo i creatori di codici maligni analizzano approfonditamente i programmi di terze parti più diffusi e usati, per individuare vulnerabilità da sfruttare per attacchi e intrusioni. Così occorre seguire anche gli update di applicazioni come Office, naturalmente, ma anche il proprio browser se diverso da Internet Explorer e quindi non compreso negli update della Microsoft, la Java Sun, Acrobat Reader, Open Office, e tanti altri che rilasciano update o nuove versioni anche per chiudere falle scoperte nelle precedenti.
Restrizioni significa adottare regole e un sistema di permessi/divieti anche al browser per la navigazione in internet, prima ancora che farlo attraverso software esterni al browser come il firewall o gli HIPS. Spesso infatti si commette l’errore di pensare che la protezione e la sicurezza di un computer debba essere garantita solo attraverso l’utilizzo di software di terze parti: firewall, antivirus, hips o con l’utilizzo di apparecchiature hardware costose come i router. Questo è senza dubbio vero, perché usare di sistemi di sicurezza accresce il grado di controllo e di protezione del proprio sistema, ma non bisogna dimenticare che la sicurezza di un sistema deriva anche dalla configurazione accurata dei sistemi di allert e filtering che quel sistema dispone già di suo. Sia Internet Explorer che altri browser, soprattutto gli ottimi Opera e Firefox, offrono la possibilità di controllare, con opzioni di permesso, divieto o limitazione, due meccanismi fondamentali della navigazione in internet, ma anche della diffusione dei codici maligni, rootkit compresi: i siti web e determinate applicazioni, a volte indispensabili per la visualizzazione corretta o completa di una pagina web, ma purtroppo spesso utilizzabili anche per introdurre di nascosto malware dal web al vostro sistema.
I browser più importanti consentono di creare regole di restrizione per la navigazione in internet, o inserendo le white list – liste degli unici siti in cui autorizzate il vostro browser a navigare perché sicuri ed affidabili– o, metodo più diffuso, le block list che contengono i siti in cui la navigazione è pericolosa, perché noti diffusori di spyware, trojan, dialer ecc… In rete sono facilmente rintracciabili siti che offrono liste, preparate a questo scopo, di decine di migliaia di indirizzi di siti pericolosi. Fra parentesi sarebbe utile, anche se a volte può creare difficoltà pratiche, utilizzare un analogo sistema di liste consentite e vietate per i mittenti nel nostro client di posta.
L’altra operazione di restrizione da operare sul proprio browser per la navigazione consiste nel limitare l’uso di varie applicazioni in sé utili ma che possono diventare, nelle mani degli hacker, strumento e veicolo per introdurre nel nostro sistema codice dannoso, ovvero righe di codice scritte in un particolare linguaggio di programmazione adattabile al WEB, come per esempio javascript, vbscript, activeX, cookies e tanti altri, che possono compromettere la nostra privacy ma anche la stabilità del nostro sistema operativo. Controlli ActiveX, Applet Java o dei piccoli script in Javascript che formalmente rendono la nostra navigazione più divertente e simpatica animando le foto oppure aprendo finestre in cascata con molti effetti grafici, ma che possono appunto essere sfruttate per far penetrare nel nostro pc codice maligno. Bloccare completamente alcune di queste funzioni, come ad esempio i controlli activeX, e limitarne altre, come i cookies o le applet java, che possono essere indispensabili per consentirci di utilizzare al pieno alcune siti in cui abbiamo bisogno o piacere di navigare, significa chiudere altre porte da cui i malware che contengono rootkit potrebbero penetrare facilmente e nascostamente nel nostro sistema.
Da notare che la possibilità di operare queste restrizioni è offerta anche da vari software di sicurezza, come molti firewall, ma anche in questi casi la vera sicurezza consiste nell’ utilizzare sia l’opzione offerta dal nostro browser che quella proposta dal firewall o dal programma di protezione. E non si tratta di un doppione superfluo o di un’esagerazione, perché nessuna difesa e nessun programma di protezione è perfetto o invulnerabile: anzi, utilizzare molteplici e diversi livelli di protezione per gli stessi pericoli significa proprio realizzare concretamente il sistema di difesa stratificata di cui stiamo parlando.
HIPS: gli HIPS ( Host intrusion prevention system ) come indica il nome, sono dei software di prevenzione delle intrusioni esterne nel proprio sistema, cioè dei programmi solitamente molto sofisticati che monitorano e controllano tutti i servizi, i processi e le applicazioni in attività in un sistema, assegnandoci la possibilità di consentirle, vietarle, o permetterle entro i limiti che noi stessi intendiamo definire. “ Controllare “ infatti in un software come questo non implica solamente rilevare i processi e le applicazioni in uso, come fanno altri tipi di programmi con finalità esclusivamente informative: controllare in questo caso significa letteralmente assumere il controllo completo delle attività in funzione in ogni momento nel nostro sistema, mantenendo una supervisione che monitora l’avvio e il comportamento di qualunque attività in modo che non possa compiere niente che noi non intendiamo consentire e di cui non siamo preventivamente informati. L’HIPS mantiene il controllo su tutte le attività e su tutti i cambiamenti in azione nel nostro sistema, e, se non hanno già una regola che li autorizzi, impedisce loro di attivarsi e lavorare in maniera autonoma e indipendente dalla nostra volontà e dal nostro controllo.
Da questo punto di vista un HIPS si comporta in maniera in qualche modo analoga a quella di un firewall, anche se ad un livello e con funzioni molto diverse. E l’analogia è rafforzata dal fatto che è possibile, anzi indispensabile se vogliamo sfruttare il programma al massimo delle sue capacità e della sua efficacia, configurare regole estremamente ristrette, e quindi molto sicure per il nostro sistema, anche su processi e servizi noti e teoricamente già sicuri, perfino sui servizi delle stesso Windows, autorizzandoli solo per determinate operazioni e entro determinati limiti. Ad esempio, possiamo decidere per ogni applicazione se può o non può accedere ad aree essenziali del nostro sistema, come la memoria fisica o i livelli più bassi del sistema stesso, o se e quali applicazioni possano essere attivate da un’altra applicazione.
Per questo motivo gli HIPS, se sono stati progettati in maniera completa e approfondita e se vengono configurati in modo appropriato, rappresentano i sistemi di protezione attualmente più avanzati e, probabilmente, più adeguati per la difesa del nostro pc dai rootkit. In primo luogo perché l’HIPS costituisce una seconda linea di difesa, dietro quelle primarie rappresentate dai software attivi e dal firewall: un malware sfuggito ad una di queste difese nel momento in cui penetra nel nostro pc verrebbe comunque rilevato come una nuova attività e, come abbiamo detto, bloccato completamente finché noi non diamo una disposizione di autorizzazione o divieto.
In secondo luogo questo tipo di programmi è particolarmente adatto a contrastare i rootkit perché è dedicato a rilevare nuove specie di minacce e codici maligni non tradizionali, di natura diversa dai tipi di malware comunemente conosciuti e affrontati dai normali software di protezione: un HIPS non funziona sul fondamenti di un database di malware noti, o sullo studio del comportamento simile a quello di codici già conosciuti (scansione euristica ) o di codici apparentemente pericolosi ( difesa proattiva ), ma blocca semplicemente tutte le applicazioni, senza distinguere fra quelle che possono essere ritenute buone o cattive, e affidando a noi il potere di consentirle o meno.
Oggi alcuni antivirus, e anche alcuni antispyware, hanno iniziato ad inserire fra le loro opzioni anche alcune opzioni di controllo tipo HIPS, più o meno approfondite e sofisticate. E’ una cosa assolutamente positiva, soprattutto dal punto di vista dell’informazione e della cultura della sicurezza informatica, ma è consigliabile munirsi di un software HIPS autonomo e specializzato, perché solo un sistema di host intrusion prevention completo può offrire e garantire quel controllo su tutte le attività e su tutti i cambiamenti in azione nel nostro sistema che lo rendono così efficace ed importante.
Entra poi in gioco un altro fattore fondamentale, che abbiamo già introdotto e che è essenziale nel concetto di difesa a strati o a più livelli. Diversificare il tipo e le marche dei vari software di sicurezza che utilizziamo aumenta notevolmente il nostro grado di protezione: intanto se tutti i nostri sistemi – antivirus, firewall, antispy…. - sono prodotti dalla stessa Software House, anche se eccellente, è più facile che siano neutralizzati rispetto alla situazione in cui appartengono a Case diverse che utilizzano codici, strategie e programmi di versi fra loro. E poi, l’adozione di più sistemi di sicurezza crea un sistema di difesa complesso, a cerchi concentrici, come dicevamo prima, e ciò fa sì che se uno dei nostri programmi non può o non riesce a rilevare e bloccare un codice maligno, quest’ultimo possa però venire riconosciuto e bloccato da un altro dei nostri sistemi di controllo e sicurezza.
Infine parliamo di un nuovo tipo di programmi, i software di sicurezza che non assicurano la protezione del pc basandosi su di un database di firme dei vari malware già noti e classificati, ma si indirizzano a prevenire minacce nuove e sconosciute che per questo motivo non potrebbero essere rilevati come insidie e bloccati dai comuni antivirus e antitrojan. Questi programmi, come ad esempio SocketShield o Cyberhawk sono dedicati soprattutto alla prevenzione e protezione contro gli zero-day attack, gli attacchi provenienti da exploit che sfruttano nuove vulnerabilità ancora non scoperte o non risolte, e comportano per il loro efficace e completo funzionamento il contatto e l’ interscambio online con la Software House che li produce: questa comunicazione continua nei due sensi – dall’utente al produttore e viceversa - ha lo scopo di raccogliere automaticamente dai pc dei vari utenti del programma sparsi nel mondo ogni segnalazione di un nuova e sconosciuta attività virale maligna o anche solo di comportamenti e attività sospette, in modo che possano essere analizzati e che con un ‘operazione di feedback si possa updatare il software stesso e quindi in tempo reale i pc degli utenti, con i dati dei nuovi tipi di minacce informatiche e delle tattiche di intrusione e attacco.
Questi programmi costituiscono una specie di difesa recentissima, e non si dispone ancora di una statistica indipendente e completa della loro concreta efficacia come strumento di sicurezza, certamente però se il loro uso non crea problemi di stabilità o conflitto con gli altri software di sicurezza nel sistema in cui sono usati, possono rappresentare una linea di difesa ulteriore e accrescerne la sicurezza complessiva. In ogni caso un buon programma HIPS dovrebbe essere comunque in grado di bloccare un malware che sfrutti una falla zero – day: l’HIPS blocca qualunque processo o attività che non sia stata autorizzata in precedenza, buone o maligne che siano, per il solo fatto di costituire un’applicazione attiva.
Per concludere, sottolineiamo che la costruzione di questa sistema di difesa stratificato, a più cerchi o livelli, non può garantire la sicurezza assoluta e perenne, l’invulnerabilità, rispetto ad una minaccia così insidiosa e profonda come quella dei rootkit, specialmente perché, come abbiamo detto all’inizio, creatori di rootkit maligni sono attualmente sempre più avanti, nel produrne nuove specie e forme, rispetto agli specialisti di sicurezza che cercano di contrastarli. Alcuni rootkit poi, come quelli teorizzati mesi fa che potrebbero insediarsi direttamente nel Bios, potrebbero tranquillamente bypassare i sistemi di sicurezza installati nel sistema operativo.
Ma questi sono casi estremi, per ora fortunatamente solo allo stato teorico o addirittura ipotetico, e c’è da sperare che nel frattempo la ricerca antirootkit si sviluppi fino a colmare l’attuale gap. Al momento il concetto di fondo che abbiamo espresso all’inizio rimane assolutamente valido: il rootkit può avere effetti devastanti e inarrestabili dopo che è entrato nel nostro sistema, ma prima deve entrarci. E la strategia del sistema di sicurezza diversificato e stratificato – nella quale gli HIPS giocano un ruolo insostituibile anche se assolutamente non unico né esclusivo, ricordiamolo ! – basato su software e policy, costituisce attualmente il modello di sicurezza antirootkit più adeguato.
Fonte : Pianeta pc
mozagga:
mizzega che faticaccia averlo letto...ma finalmente me so fatto una cultura.
Certo che è proprio un casino sto mondo informatico :(
ridethesnake:
--- Citazione da: mozagga - Gennaio 12, 2009, 21:44:39 pm ---mizzega che faticaccia averlo letto...ma finalmente me so fatto una cultura.
Certo che è proprio un casino sto mondo informatico :(
--- Termina citazione ---
coraggioso... vedi che poi ti interrogo :eheheh:
mozagga:
--- Citazione da: ridethesnake - Gennaio 12, 2009, 21:58:33 pm ---
--- Citazione da: mozagga - Gennaio 12, 2009, 21:44:39 pm ---mizzega che faticaccia averlo letto...ma finalmente me so fatto una cultura.
Certo che è proprio un casino sto mondo informatico :(
--- Termina citazione ---
coraggioso... vedi che poi ti interrogo :eheheh:
--- Termina citazione ---
:esclama:
andras:
...io colpita... affondata e formattata!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1 :wallbash: :wallbash: :wallbash: :pioggia: :pioggia:
Navigazione
[0] Indice dei post
Vai alla versione completa