Panda Logo    

Il problema dei Malware

Home
Home Virus

Cos'è un Malware: il Problema

La definizione secondo Panda Software di Malware, o Codice Maligno (e non malizioso, come certi traducono l'inglese Malicious Code), coniata dal Presidente della Società sig. Mikel Urizzalbarrena, amplia la comune definizione di Virus informatico nata oltre vent'anni, ed è la seguente:

 

Malware: qualsiasi programma, documento, messaggio in grado di causare danni diretti e/o indiretti ai sistemi informatici, alle reti informatiche ed ai loro utilizzatori e gestori.

 

Nell'intercalare quotidiano la locuzione Virus è ancora molto adottata: la si può per brevità e consuetudine considerare come sinonimo di Malware, benchè nel Malware ricadano molte categorie di Codici Maligni che non sono propriamente Virus.

Si pone l'accento sui seguenti fatti:

  1. il Malware non è necessariamente soltanto un "programma" (come nel caso dei Virus e dei Worm, ad esempio) veicolato da un supporto di memoria (Floppy, CD, USB Key ecc.), o da un documento informatico (Macro Virus "annegato" in un documento Word, ad esempio) o da un messaggio e-mail (l'allegato), ma può essere considerato Malware il messaggio e-mail stesso (è il caso di Hoax, Spam e Phishing).

  2. Lo scopo maligno di un Malware non necessariamente è mirato a danneggiare la disponibilità e integrità dei dati o il regolare funzionamento di un sistema informatico (danno che ha sempre e comunque l'effetto di causare perdite di tempo, produttività e denaro) ma può essere finalizzato a causare un danno pecuniario all'utilizzatore anche senza "danneggiare", ma solo riconfigurando (caso dei Dialer) il sistema informatico stesso.

  3. Ancora peggio, lo scopo maligno può essere finalizzato a ingannare ed irretire l'utilizzatore (caso di Hoax e Phishing) convincendolo ad effettuare azioni dannose per sè stesso (ovviamente non fisicamente ma in senso etico/morale) con tecniche di cosiddetta "Ingegneria sociale", in certi casi senza alterare minimamente il funzionamento del sistema informatico.

La Catena della Sicurezza

Al di là della sola minaccia costituita dai Malware, per poter gestire in sicurezza il patrimonio di dati informatici in nostro possesso occorre implementare una catena della sicurezza della quale l'antimalware è solo un anello: senza gli altri, esso non può mantenere protetto il nostro sistema informatico dall'attacco delle nuove minacce provenienti soprattutto da Internet, ma anche da quelle interne: questa catena è costituita da strumenti tecnologici (da 3 a 7) e da strumenti sociologici (1 e 2): a parere dell'estensore di questa pagina non a caso questi ultimi sono ai primi posti, e non a caso l'Antimalware, oggetto di questo sito, è all'ultimo:

 
  1. Sensibilizzazione degli utenti contro i pericoli dell'Ingegneria Sociale (Formazione e Informazione)
  2. Normative d'uso degli strumenti informatici (Responsabilizzazione)
  3. Aggiornamento costante dei sistemi operativi (Windows Update)
  4. Implementazione, ove possibile, di Policy di sicurezza
  5. Procedure di Backup efficienti (ed altri sistemi di Disaster Recovery, UPS)
  6. Firewall, sistemi di Intrusion Detection
  7. Antimalware efficienti e costantemente aggiornati
 
  1. Lungi da voler analizzare l'evoluzione (o rivoluzione) sociale che la tecnologia in generale, ed il personal computer in particolare, hanno prodotto nella società (esistono interi libri sull'argomento), si osserva che la diffusione dell'utilizzo degli strumenti informatici non è andata di pari passo con l'acculturamento informatico della società stessa. Ovviamente non è pensabile che ogni utilizzatore di uno strumento informatico ne divenga un esperto in ogni suo aspetto: il cardine della diffusione del personal computer ad ogni livello, compreso quello casalingo, è e deve essere la facilità d'uso da parte di chiunque. Tuttavia è necessario essere al corrente di alcuni aspetti "intimi" della struttura dell'hardware e del software che si utilizza, e delle caratteristiche della simbiosi di hardware e software che si sta utilizzando (il Tutto è ben più che la somma delle sue parti) per poterne conoscere anche i lati vulnerabili... ed il lato più vulnerabile di un sistema informatico è la persona alla tastiera, che per disinformazione, ingenuità o, peggio, dolo può concorrere a far sì che un malware possa eludere gli strumenti tecnologici messi in essere per difendere il sistema informativo. Ad ogni livello è quindi opportuno, mediante Informazione (per i singoli) e Formazione (per i gruppi) imparare/divulgare le nozioni basilari sulla sicurezza: si ricordi che molti codici maligni sfruttano tecniche di Ingegneria sociale (una branca della Psicologia) per ingannare gli utenti e portarli ad eseguire azioni dannose per il proprio sistema informativo.

  2. In ambiente Aziendale il computer è uno strumento di lavoro. Anche qui, lungi dal voler entrare in argomenti con risvolti sindacali, si sottolinea che uno strumento di lavoro dovrebbe essere utilizzato solo per gli scopi a cui è preposto (più realisticamente, è noto che esso viene usato anche per certi scopi "tollerati"). In questo ambiente, determinati utilizzi non necessariamente "impropri" (escludiamo il caso limite del dolo) dovuti a ingenuità ed a disinformazione possono risultare dannosi non solo per il singolo utilizzatore, ma per l'intera Azienda: la Formazione e l'Informazione devono allora essere accompagnate da una Normativa che responsabilizzi l'utilizzatore sulle operatività che possono e, soprattutto, che non possono essere svolte con il sistema informatico in dotazione.

  3. Un sistema operativo è un software estremamente complesso che, semplificando al massimo, ha lo scopo di interfacciare applicazioni ad alto livello di astrazione con il substrato fisico costituito dall'hardware. Tale software è costituito da centinaia di moduli scritti in diverse decine di milioni di istruzioni di codice sorgente: benchè la stesura di un algoritmo debba condurre ad un risultato deterministico ("questo modulo fa queste operazioni in base a questi dati") l'Ingegneria del Software non è ancora in grado di testare a fondo tutti i possibili comportamenti ottenuti interfacciando numerosi moduli e/o alimentandoli con dati non conformi a quelli di progetto. L'elasticità di Windows (per citare il sistema più diffuso al mondo), che mette a disposizione del programmatore diverse API (Application Program Interfaces) e DLL (Dynamic Link Libraries) rende possibile usare questi oggetti per scopi non originariamente previsti, scopi che possono essere dannosi: si tratta di vulnerabilità del sistema operativo, ovvero di particolari programmi e routines che, usate in modo improprio, possono aprire delle "falle" nella sicurezza del computer eseguendo operazioni che non era possibile realisticamente prevedere. Frequentemente i produttori dei sistemi operativi (Microsoft in testa) rilasciano delle patch o hotfix ("pezze" e "riparazioni a caldo") che fixano (riparano) i bug (errori) e le vulnerabilità della sicurezza, così come periodicamente rilasciano dei Service Pack che comprendono tutte le patch e le hotfix precedenti, quando queste hanno raggiunto un numero tale da giustificare la release del Service Pack. E' opportuno configurare il proprio sistema operativo in modo che scarichi automaticamente gli aggiornamenti del sistema operativo o, perlomeno, informi l'utilizzatore del rilascio degli stessi.

  4. In ambiente Aziendale, oltre a vincolare da una normativa d'uso gli utilizzatori dei sistemi informativi, è opportuno predisporre dei Criteri di Protezione sui sistemi operativi e sui Dominii, in modo che gli utenti non possano compiere azioni pericolose nè per dolo, ma neanche per disinformazione o per errore. Questi Criteri non possono sostituire la Normativa del punto 2 nè la Formazione del punto 1, poichè la gestione di un sistema informativo "troppo" vincolato diventa difficoltosa e poco elastica (se si teme che alcuni utenti possano cancellare per errore una cartella è meglio farli partecipare ad un corso sull'uso del computer piuttosto che proteggere la cartella dalla cancellazione; se si teme che alcuni utenti possano fare un uso improprio di certi dati a cui devono accedere, non c'è tecnologia che tenga...). In ogni caso è opportuno concedere agli utilizzatori di una postazione di lavoro soltanto i diritti a loro effettivamente necessari in modo che non possano per errore, ingenuità, disattenzione, disinformazione o dolo, eseguire operazioni pericolose o installare software non autorizzato di dubbia provenienza che potrebbe contenere dei malware, oltre che incorrere in altre implicazioni che non sono argomento di questo trattato.

  5. C'è un nemico della sicurezza dei nostri dati che viene a volte sottovalutato: i componenti dei computer si possono guastare. Poco male, possono essere riparati o si sostituiscono, i programmi si re-installano... ma i dati? Se si guastasse un hard disk, in mancanza di un backup recente potremmo avere perso il nostro patrimonio informatico, fosse esso costituito dalle migliaia di foto digitali delle nostre vacanze, dall'archivio di contabilità della nostra piccola azienda, o magari peggio... La salvaguardia dei dati, anche per ottemperare a normative di legge, deve essere garantita sia dall'adozione di un server "robusto" (con dischi in RAID) sia da un sistema di salvataggio periodico degli stessi su un supporto esterno (CD-ROM, DVD-ROM, nastro magnetico ecc.) il cui funzionamento venga verificato frequentemente. L'implementazione, in una piccola azienda, di un sistema di salvataggio incrementale quotidiano, e completo settimanale o bisettimanale consentirà, in caso di guasto irreparabile di un hard disk o di corruzione irrecuperabile dei dati in esso contenuti, di ripristinare i dati fino al giorno precedente al guasto, perdendo solo l'ultimo giorno di lavoro. Ove possibile, un sistema di Backup dotato di generazione di dischi di Disaster Recovery consentirà di ripristinare l'operatività ed il business in tempi molto brevi. Siccome una mancanza improvvisa di alimentazione elettrica può provocare la corruzione dei file e dei database aperti, è opportuno dotare i server più critici di un sistema di alimentazione di emergenza UPS (Uninterrupted Power Supply).

  6. Semplificando, un Firewall è un computer (un'Appliance hardware+software, o un computer standard che esegue un programma firewall software, come MS-ISA Server per Windows) dotato di due o più schede di rete che ha, tra gli altri possibili, fondamentalmente due compiti: implementare la NAT (Network Address Translation) tra gli indirizzi privati e l'indirizzo pubblico di una rete connessa a Internet (eseguendo la funzione di un Proxy Server), e gestire una serie di regole che autorizzino o meno il transito dei diversi tipi di traffico (HTTP, FTP; SMTP ecc.) su porte ben definite, in entrata ed in uscita dalla rete (comprendere il meccanismo di funzionamento di un Firewall richiede una certa conoscenza del protocollo TCP/IP). Per la protezione del traffico su singoli computer sono diffusi i Personal Firewall, implementati via software e disponibili come parte integrante del sistema operativo (come il Personal Firewall di Windows XP disponibile con il Service Pack 2) o come programmi di terze parti, a volte integrati in un programma Antimalware (come il Personal Firewall di Panda Titanium e di Panda Platinum Internet Security): i Personal Firewall hanno il solo compito di gestire delle regole di autorizzazione del traffico. Mediante un Firewall è possibile lasciare aperte le sole porte di comunicazione dal mondo esterno verso il computer, e viceversa, effettivamente necessarie ai programmi in esecuzione su computer stesso. L'uso corretto di un Firewall, ed in particolare di un Personal Firewall, presuppone una discreta conoscenza dei processi di un computer che devono accedere alla rete per i loro scopi: bloccare la comunicazione di un programma del sistema operativo può causare un degrado o un malfunzionamento di certi programmi o del computer stesso. In ogni caso, un Firewall ben configurato consente il transito dall'esterno della rete all'interno (e viceversa) solo di particolari categorie di traffico definite come autorizzate, e quindi blocca sia i tentativi di intrusione eseguiti su porte non autorizzate, proteggendo il computer dall'azione dannosa di codici maligni che tentano di sfruttare delle vulnerabilità, sia la trasmissione occulta di dati privati generata da certi codici maligni.

  7. Last, but not least, l'Antimalware completa la catena della sicurezza: esso verifica che ogni file che viene aperto sul computer non sia infetto e che il traffico autorizzato a transitare da e verso il computer non veicoli codici maligni (un firewall lascia passare una mail contenente un allegato infetto, poichè la posta elettronica costituisce traffico autorizzato, l'antimalware deve processare l'allegato infetto facendo giungere al destinatario una mail disinfettata). Esistono diversi moduli antimalware specifici per i compiti che un computer deve svolgere: personal computer, workstation, file server, mail server ecc. Per funzionare correttamente, un antimalware deve essere costantemente aggiornato in modo che possa efficacemente rilevare ogni nuovo codice maligno venga immesso in rete dagli hacker, e se ne deve verificare frequentemente il corretto funzionamento.

Inizio pagina

Categorie

Home Virus