Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Guida alla Sicurezza
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
SOMMARIO
1. Premessa
2. Luoghi comuni
3. Approccio del tipo "step by step"
4. Il decalogo della sicurezza
5. Che cos'è un firewall e come funziona
6. Perché impiegare un firewall a difesa personale?
7. L’importanza di una buona configurazione
8. L’aggiornamento del software
9. I firewall a livello di applicazione
10. Software da utilizzare
11. Che cos'è un antivirus e come funziona
12. Caratteristiche di un buon antivirus
13. L’aggiornamento del file delle firme
14. Software Antivirus
15. Altri strumenti ed accorgimenti
16. Cosa sono i "malicious software" o malware
17. I Virus
18. Macro Virus
19. Cavalli di Troia
20. Worm
21. Meccanismi di propagazione
22. Strumenti di difesa
23. Cosa si intende per vulnerabilità dei programmi
24. Microsoft ActiveX
25. Java
26. Il codice nascosto nei tag html
27. Vulnerabilità dei cookies
28. Vulnerabilità derivanti dall'uso della posta elettronica
29. Strumenti e tecniche di difesa
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Generalità
1. Premessa
Definizione del problema: maggiore è la navigazione sulla rete maggiore è l'esposizione ai rischi
Connettersi ad altri computer all'interno di una LAN (casalinga o aziendale) per condividere un documento, navigare
sulla rete alla ricerca dell'offerta del mutuo più conveniente o dell'ultima versione di un software da scaricare, ricevere
una comunicazione nella propria casella di posta elettronica sono ormai diventate azioni comuni grazie all'utilizzo
sempre più crescente del PC sia in casa propria sia sul posto di lavoro. D'altra parte, al di là degli innegabili vantaggi
che l'era telematica ha apportato alle nostre abitudini di vita e lavorative, esistono anche altri aspetti da considerare ed,
in particolar modo, quelli legati all'esistenza di una serie di "rischi" che possono derivare dall'espletamento di una tra le
tante attività precedentemente citate a titolo soltanto esemplificativo. Le fonti di questi rischi potenziali possono essere
veramente molteplici: dai virus informatici, ormai creati in quantità industriali, al codice alterato scaricato da qualche
sito "corrotto" fino ad arrivare, nel peggiore dei casi, all'azione distruttiva di qualche hacker. Indubbiamente non è facile
rendersi conto della complessità e della vastità della problematica oggi comunemente nota con il nome di Sicurezza
informatica, ma è evidente che quest'ultima non può più essere né trascurata né sottovalutata da parte di chi usa un PC
per un scopo non soltanto ludico. In questa breve introduzione faremo pertanto delle considerazioni di carattere generale
sulla tematica della sicurezza informatica mentre, nel seguito degli altri paragrafi, verranno approfonditi soprattutto gli
aspetti tecnici e le soluzioni pratiche.
2. Luoghi comuni
Analizziamo i luoghi comuni che spesso si incontra parlando di sicurezza telematica
Per introdurre l'argomento può essere utile analizzare alcuni luoghi comuni che spesso ricorrono quando ci si occupa di
sicurezza informatica:
Quali prodotti devo acquistare per sentirmi veramente al sicuro?
Al riguardo possiamo affermare con assoluta certezza che la sicurezza non si identifica in un prodotto specifico ma in
un processo lungo e ripetitivo che consiste nell'adottare una serie di misure volte a prevenire e scoprire i tentativi di
accesso non autorizzato ad un sistema informatico. In questa prospettiva dunque non è sufficiente acquistare un
antivirus od un firewall per risolvere tutti i problemi poiché, come prima cosa, occorre cambiare le nostre abitudini in
modo da riadattarle ad una nuova prospettiva in cui la sicurezza è l'obiettivo finale.
Perché dovrei occuparmi degli aspetti inerenti la sicurezza del mio sistema?
Per il semplice motivo che ormai l'uso del computer non è più limitato alle sole ore d'ufficio ma investe svariati altri
aspetti della nostra vita privata (dal divertimento, all'acquisizione e scambio di notizie, al disbrigo di pratiche
burocratiche, ecc.). Nel momento stesso in cui accediamo a quell'immenso database di risorse che rappresenta la rete
Internet noi diventiamo parte integrante di quest'ultima e siamo sicuramente interessati ad evitare che qualunque
individuo possa penetrare nel nostro sistema ed usarlo come base per sferrare attacchi contro altri oppure per rubare la
nostra e-mail o carpire qualsiasi altro genere di informazione rilevante.
Chi può essere interessato ad accedere al mio sistema?
Praticamente chiunque sia motivato da intenzioni non proprio encomiabili. Per un aggressore l'identità della persona cui
appartiene un determinato sistema non ha alcuna importanza poiché l'unico obiettivo è penetrare il sistema stesso per
poterlo successivamente riutilizzare o per compiere attività dannose od anche per il solo gusto di farlo.
Con quale facilità è possibile irrompere in un sistema informatico?
In alcuni casi si tratta di una facilità disarmante. Purtroppo la complessità del software che viene oggigiorno prodotto si
accompagna in alcuni casi ad un livello di imperfezione tale da determinare l'insorgenza di gravi problemi di sicurezza.
Queste vere e proprie "falle" sono quelle alla cui ricerca si spingono gli hacker e sono quelle che vengono sfruttate (da
chi non appare motivato da una solida etica) per penetrare illecitamente nei sistemi informatici. Per far fronte a queste
lacune i produttori di software sono costretti a rilasciare frequenti patch di aggiornamento la cui applicazione rientra
però nella sola responsabilità di noi utenti finali. Inoltre non va dimenticato che la complessità del software può a volte
investire gli aspetti attinenti la sua corretta configurazione ad un livello tale da spingere l'utente ad usare configurazioni
cd di default che aprono la strada a pericolose inadeguatezze in termini di sicurezza.
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Chi mi garantisce che seguendo un certo tipo di approccio il mio sistema diventa veramente sicuro?
Nessuno. Qualunque siano le azioni intraprese o le procedure seguite non sarà mai possibile ottenere una garanzia di
protezione al 100%. Nella realtà l'unica cosa di cui si può veramente essere certi è che quanto più si affronta con criterio
la tematica tanto minore sarà la probabilità che qualcuno o qualcosa riesca a procurarci un danno..
La sicurezza informatica si basa sulla difesa della privacy!
Questa affermazione è vera soltanto in minima parte: in effetti la privacy, intesa come diritto alla tutela delle notizie e
delle informazioni riguardanti la propria identità personale e sociale, è senza dubbio uno degli aspetti principali
riguardanti la problematica della sicurezza ma non è l'unico né tanto meno il più importante. Fatta questa precisazione, è
tuttavia importante sapere che esiste il rischio reale che qualcuno possa catturare informazioni inerenti le nostre
abitudini in rete oppure possa carpire altre notizie attraverso gli stessi strumenti che normalmente utilizziamo (ad
esempio il browser) ma, al tempo stesso, occorre anche sapere che esistono dei rimedi utilizzabili per scongiurare
questo genere di attività. Peraltro, fermo restando che l'analisi di questi rimedi non è l'obiettivo di questa guida,
possiamo ricordare che il modo migliore per proteggere la nostra privacy consiste nell'adottare comportamenti prudenti
ed ispirati al buon senso come potrebbe essere quello di non diffondere ingenuamente informazioni di carattere
riservato riempiendo spesso inspiegabili forms di registrazione oppure quello di usare forme di navigazione e di posta
elettronica di carattere anonimo (ne esistono ormai in buon numero sulla rete).
3. Approccio del tipo "step by step"
I passi principali per analizzare il problema della sicurezza del proprio personal computer
Definizione dello scenario
Questa prima fase consiste nell'individuare con esattezza le entità da proteggere (ad es. dati personali, documenti ed
informazioni riservate, messaggi di posta elettronica, sistema operativo, ecc.) nonché la natura e le fonti dei possibili
eventi dannosi (ad es. virus, intrusioni ed attacchi dall'esterno, malfunzionamenti, ecc.). Sicuramente in questa fase è di
fondamentale importanza fare una considerazione generale su quale sia l'uso principale che si fa del PC poiché questo
influisce molto nella successiva definizione dello scenario risultante. E' evidente infatti che le preoccupazioni di chi usa
il computer soltanto per redigere documenti devono essere molto diverse da quelle di chi invece ne fa uso
principalmente per navigare in rete e scaricare software.
Valutazione dei rischi
In secondo luogo occorre valutare il rischio del verificarsi degli eventi dannosi individuati nella precedente fase (ad es.
qual'è la probabilità di subire intrusioni durante la navigazione su Internet ? qual'è il rischio che un allegato di posta
elettronica od un software scaricato dalla rete contenga un virus od un cavallo di troia ?...).
Adozione di possibi li azioni correttive
Una volta completate le prime due fasi siamo già in possesso di uno scenario ed in relazione a questo possiamo
individuare una serie di azioni correttive da adottare che siano in grado di ridurre al minimo i rischi del verificarsi degli
eventi dannosi (ad es. cominciare ad evitare i comportamenti "ingenui" nell'utilizzo del PC, oppure acquistare ed
installare software come un antivirus od anche un firewall ad uso personale, oppure applicare al sistema operativo le
varie patch rilasciate dal produttore, ecc.). Lo sviluppo di un approccio di questo tipo ha degli innegabili vantaggi
poiché in primo luogo aiuta a focalizzare l'attenzione soltanto sugli aspetti veramente importanti ed, in secondo luogo,
si basa su un processo decisionale aperto e flessibile che in quanto tale può sempre essere riadattato ai mutamenti
tecnologici e abitudinari che nel tempo possono intervenire.
4. Il decalogo della sicurezza
Dieci passi chiari e specifici per poter aumentare velocemente la sicurezza del proprio personal computer
Sebbene non sia possibile individuare un complesso ideale di misure di prevenzione possiamo con certezza affermare
che molti dei problemi che tipicamente si presentano quando si tratta della sicurezza di un sistema informatico possono
essere evitati attraverso l'adozione delle seguenti azioni correttive che, nel loro complesso, possono essere trattate come
una sorta di decalogo:
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
− usare un buon antivirus: qualunque computer connesso alla rete Internet deve esserne munito; inoltre è
altrettanto importante provvedere con regolarità all'aggiornamento del file delle firme;
− usare un firewall: può sembrare eccessivo ma l'uso di dispositivi di filtraggio come i firewall, purché
opportunamente configurati, è in grado di offrire un discreto grado di protezione contro determinati tipi di attacco e
soprattutto contro tutta una serie di attività preparatorie (come ad es. la scansione delle porte TCP/UDP) che un
aggressore in genere compie prima di tentare un accesso non autorizzato;
− non aprire ingenuamente allegati di posta elettronica: questa semplice regola vale anche per i messaggi di posta
che sembrano originati da un indirizzo conosciuto; in ogni caso è sempre opportuno salvare in un file l'allegato e
sottoporlo ad una scansione virale prima di aprirlo;
− non eseguire ingenuamente programmi di ogni tipo: è buona regola accertarsi sempre della genuinità di
qualsiasi programma prima di eseguirlo e lo stesso dicasi per tutti quei documenti che possono contenere delle
macro;
− applicare sempre le più recenti patch: questo vale non soltanto per il sistema operativo ma anche per il
software applicativo;
− prestare la massima attenzione al funzionamento anomalo del sistema operativo: è assolutamente opportuno
guardare sempre con sospetto ai funzionamenti apparentemente inspiegabili del sistema operativo e cercare di
individuarne le cause per quanto possibile anche con l'uso di strumenti specifici;
− disabilitare Java, JavaScript ed ActiveX: queste tecnologie possono costituire una vera spina nel fianco durante
la navigazione su Internet; in alternativa, per non rendere la navigazione su alcuni siti frustrante, è possibile
proteggersi, ma entro certi limiti, facendo uso di software specifico che funge da filtro per i contenuti interattivi che
vengono normalmente ricevuti o utilizzando forme di navigazione anonime tramite proxy server;
− disabilitare le funzionalità di scripting nei client di posta elettronica: spesso infatti le maggiori vulnerabilità che
colpiscono i browser, legate alla presenza di contenuti interattivi, si presentano anche in questo genere di software;
− fare un backup regolare di tutti i dati sensibili: ugualmente importante è tenere in posti sicuri le copie generate;
− creare un disco di boot: ciò può aiutare in un eventuale attività di recovery di un sistema compromesso a patto
però che la copia sia assolutamente genuina e sia conservata in un luogo sicuro.
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
I Firewall
5. Che cos'è un firewall e come funziona
Introduzione ai firewall, i dispositivi in grado di bloccare informazioni nocive che transitano in Internet
I firewall sono dispositivi software od hardware posti a protezione dei punti di interconnessione eventualmente esistenti
tra una rete privata interna (ad es. una Intranet) ed una rete pubblica esterna (ad. es. Internet) oppure tra due reti
differenti. Usando una metafora è come se questi dispositivi rappresentassero i punti di una dogana: la loro funzione
principale è quella di agire come dei filtri controllando tutto il traffico di rete che proviene dall'esterno, nonché quello
che viene generato dall'interno, e permettendo soltanto quel traffico che risulta effettivamente autorizzato. Prima di
addentrarci nel discorso è opportuno fare una breve premessa per ricordare i principi di funzionamento sui quali si basa
il TCP/IP (Transport Control Protocol/Internet Protocol) poiché questa diffusissima suite di protocolli garantisce ormai
la stragrande maggioranza dei servizi all'interno sia delle reti private che di quelle pubbliche. In un network basato sul
TCP/IP ciascun sistema è identificato in modo univoco da un indirizzo IP, costituito da quattro ottetti del tipo
aaa.bbb.ccc.ddd, e comunica con altri sistemi scambiando messaggi sotto forma di pacchetti, detti anche datagrammi,
tramite un determinato protocollo. In sostanza ogni forma di comunicazione tra i sistemi di un network di questo tipo
presuppone l'esistenza di due punti distinti ciascuno dei quali è rappresentato da un coppia univoca di elementi costituiti
oltre che da un indirizzo IP anche da una porta di comunicazione: l'indirizzo IP, analogamente ad un numero di
telefono, garantisce la possibilità di instaurare una comunicazione con un determinato sistema mentre la porta non è
altro che un numero che serve a differenziare il servizio di rete, cioè l'applicazione usata per la comunicazione stessa
(ad es. il servizio http ha tipicamente un numero di porta uguale ad 80, quello ftp la 21, ecc...). Il meccanismo che sta
alla base dell'intero scambio informativo è quello che permette l'instaurazione di una connessione ed è chiamato threeway handshake termine che, tradotto letteralmente, significa "stretta di mano a tre vie": senza di esso nessun successivo
flusso comunicativo potrebbe esistere tra due sistemi differenti. Volendo ricorrere ad una metafora possiamo dire che la
logica sulla quale si fonda questo meccanismo è molto simile a quella delle raccomandate con ricevuta di ritorno
(Figura 1):
− il client che intende connettersi ad un server invia a quest'ultimo un messaggio di sincronizzazione attivo ed uno di
conferma non attivo;
− sull'altro capo della connessione il server risponde con un messaggio di conferma attivo ed uno di sincronizzazione
attivo;
− infine il client risponde con un messaggio di conferma attivo ed uno di sincronizzazione non attivo.
Terminata l'ultima fase la connessione può dirsi instaurata mentre nel caso in cui il messaggio di conferma non arriva
entro un tempo stabilito si procede alla ritrasmissione.
Client
Messaggio
Server
SINCRONIZZA=SI - CONFERMA=NO
SINCRONIZZA=SI - CONFERMA=SI
SINCRONIZZA=NO - CONFERMA=SI
Figura 1
Per poter agire come un filtro il firewall ha la necessità di analizzare tutti i pacchetti che lo attraversano in modo da
prendere una decisione conforme ad un set di regole definito dall'utente. In linea generale queste regole sono specificate
in modo da comportare l'accettazione od il blocco dei pacchetti in transito sulla base di quelli che sono i loro elementi
distintivi, vale a dire indirizzo IP e porta della sorgente nonché indirizzo IP e porta della destinazione. Tuttavia dal
punto di vista del funzionamento interno i firewall possono essere ulteriormente distinti in due gruppi separati:
− firewall a filtraggio di pacchetti;
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
− firewall a livello di circuito.
I primi sono i più comuni ed anche i meno costosi: essi esaminano le informazioni contenute nella intestazione del
pacchetto relativa al protocollo IP e le confrontano con il loro set di regole interno permettendone o bloccandone il
transito. Il vantaggio di questi dispositivi, oltre al costo contenuto, è rappresentato dalla velocità mentre per converso i
punti deboli sono costituiti da una certa sensibilità verso determinati tipi di attacco come quelli basati sull'IP spoofing.
Inoltre un altra vulnerabilità è data dal fatto che in questo caso sussiste una connessione diretta tra sorgente e
destinazione per cui, una volta che il firewall lascia transitare il pacchetto, esso non garantisce più alcuna ulteriore
difesa contro ogni successivo attacco portato in essere. Al contrario i firewall a livello di circuito, molto più costosi,
forniscono un livello di protezione più elevato poiché esaminano non soltanto l'intestazione ma anche il contenuto dei
pacchetti in transito. Questo meccanismo di funzionamento viene anche detto "stateful packet inspection" proprio
perché l'esame del contenuto del datagramma è diretto a verificare lo stato della comunicazione in corso e, quindi, ad
assicurare che il sistema di destinazione abbia effettivamente richiesto la comunicazione stessa. In questo modo c'è la
garanzia che tutte le comunicazioni si svolgano soltanto con indirizzi sorgente effettivamente conosciuti per effetto di
precedenti interazioni.
6. Perché impiegare un firewall a difesa personale?
I motivi che ci spingono ad utilizzare un firewall per la sicurezza del pc personale
Quando un PC accede ad Internet esso diventa, a tutti gli effetti e per tutta la durata del collegamento, un nodo della
rete. Il sistema connesso, come del resto qualsiasi altro nodo, può esporre dei servizi di rete cioè delle applicazioni che
hanno delle funzionalità specifiche e che rimangono in ascolto su una porta determinata (ad es. un server ftp o telnet od
anche il classico servizio di condivisione dei file e delle stampanti di Windows). In alcuni casi può capitare che questi
servizi nascondano al loro interno delle vulnerabilità o, comunque, rendano manifesti dei difetti di configurazione tali
da poter essere sfruttati per guadagnare l'accesso non autorizzato ad un sistema. In genere prima di tentare una qualsiasi
forma di intrusione un aggressore fa uso di un software specifico per effettuare la scansione del target alla ricerca di
eventuali porte in ascolto. Una volta individuate queste porte è molto facile risalire al tipo di applicazione in esecuzione
e, da qui, al genere di problemi di sicurezza che affliggono l'applicazione stessa e, di conseguenza, diventa possibile
sfruttare un exploit (una tecnica di attacco particolare che si basa sulla presenza di vulnerabilità note) in modo da
ottenere l'accesso al sistema. Naturalmente, nella realtà dei fatti, quasi mai le cose sono così semplici ma l'esempio è
diretto a sottolineare un dato di fatto di fondamentale importanza: l'uso di un firewall, in combinazione con altri
strumenti, può effettivamente garantire un livello di protezione discreto non soltanto contro i tentativi di sfruttare
vulnerabilità più o meno note di un servizio ma anche e soprattutto contro l'attività di scansione delle porte che
normalmente costituisce sempre il preludio di un attacco.
7. L’importanza di una buona configurazione
L'efficacia di un buon firewall è basata innanzitutto su una buona configurazione
I firewall, come già accennato, non sono dispositivi "autonomi" nel senso che devono essere istruiti nel prendere
decisioni in merito alla ammissibilità del traffico in transito attraverso delle regole ben precise definite dall'utente. La
predisposizione di questo set di regole può richiedere una fase di studio ed implementazione più o meno lunga e
laboriosa a seconda di quali siano effettivamente le esigenze di difesa che si pongono nel caso specifico ma, in ogni
caso, il fulcro dell'intero funzionamento di questi dispositivi sta proprio nella loro corretta configurazione. Essere in
possesso del prodotto software più evoluto sul mercato non è di alcuna utilità se lo stesso prodotto non può essere
utilizzato nella pienezza delle sue funzionalità proprio a causa di una cattiva configurazione. In questi casi anzi è molto
meglio rinunciare all'utilizzo di un firewall perché lo stesso può ingenerare un falso senso di sicurezza in chi lo utilizza.
8. L’aggiornamento del software
Il firewall è un'applicazione come le altre e la sua efficienza va verificata periodicamente applicando le patch necessarie
I firewall che non hanno natura di dispositivi hardware sono delle vere e proprie applicazioni ed, in quanto tali, possono
essere affetti da imperfezioni così come qualsiasi altro prodotto di questo genere. L'unica differenza con le applicazioni
tradizionali è che in questi casi il firewall rappresenta l'ultimo baluardo di difesa per cui se un aggressore riesce a
superare questa barriera sfruttando una vulnerabilità specifica del prodotto egli può avere pieno accesso al sistema
protetto e compiere di conseguenza ogni tipo di attività. Per evitare che ciò accada è assolutamente necessario applicare
sempre tutte le patch rilasciate dal produttore del software, anche quelle che non sono dirette a risolvere uno specifico
problema di sicurezza, dal momento che questa abitudine è in grado di migliorare non soltanto la longevità del prodotto
ma anche la sua resistenza intrinseca a forme di attacco più o meno note.
9. I firewall a livello di applicazione
Un'altra tipologia di firewall basato sul controllo delle funzioni del programma
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Un altra tipologia di prodotti è quella dei firewall a livello di applicazione: si tratta di dispositivi che "vedono" il traffico
passante non come una sequenza di pacchetti ma come un flusso di dati e verificano la legittimità delle connessioni
permettendo soltanto il tipo di traffico che risponde a delle funzionalità specifiche (ad es. l'accesso alla rete Internet
oppure lo scambio dei messaggi di posta elettronica). In linea generale questa classe di prodotti è spesso rappresentata
da sistemi con servizi di proxy che funzionano agendo da tramite tra un client ed un qualsiasi server esterno. In pratica
il client invia la sua richiesta di connessione ad una rete esterna al server proxy il quale, dopo aver verificato
l'ammissibilità del traffico in base alle regole definite, la inoltra al sistema di destinazione. Una volta ricevuta la risposta
da parte del target essa viene reinoltrata al client che di conseguenza è sempre nascosto e non instaura mai una
connessione diretta con il sistema esterno. I vantaggi derivanti da questo differente meccanismo di funzionamento sono
principalmente costituiti da un migliore controllo sui protocolli applicativi (vedi http, ftp, smtp, ecc..) dal momento che
il software, se opportunamente configurato, è in grado anche di riconoscere la presenza di vulnerabilità specifiche ed
evitare di conseguenza lo sfruttamento di exploit noti da parte di un aggressore. Altri benefici sono inoltre costituiti
dalla minore suscettibilità agli attacchi basati sulle tecniche di occultamento dei dati all'interno del traffico legittimo
(cd. tunneling), dalla possibilità di produrre log dettagliati ed, in alcuni casi, dalla capacità di interfacciamento con altri
sistemi (ad esempio gli IDS o sistemi di scoperta delle intrusioni) con un conseguente miglioramento dei livelli di
sicurezza complessivi. Purtroppo invece, a causa della differente filosofia di progetto che sta alla base di questi prodotti,
il rovescio della medaglia consiste nella introduzione di una inevitabile lentezza nello smistamento del traffico di rete il
che, peraltro, rende questi dispositivi anche più esposti ad una certa tipologia di attacchi (vedi D.o.S o Denial of
Service).
10. Software da utilizzare
Tre firewall software per mantenere sotto controllo la propria connessione ad Internet
In rete esiste un buon numero di prodotti freeware, shareware o commerciali che rientrano nella fascia di mercato dei
cd. firewall a difesa personale ma prenderemo in esame soltanto i più diffusi e conosciuti. Il primo prodotto è
ZoneAlarm per Windows 9.x,Me,NT4,2000/XP in versione freeware scaricabile dall'indirizzo
http://www.zonelabs.com
Questo prodotto combina le funzionalità di un firewall con quelle di un sistema di controllo delle applicazioni e
presenta una serie di caratteristiche quali:
− possibilità di scegliere tra tre livelli di protezione predefiniti (Basso,Medio,Alto);
− flessibilità e facilità di configurazione;
− analisi in tempo reale dei tentativi di connessione verso l'esterno (l'utente conserva la possibilità di scegliere se
continuare o bloccare la connessione);
− produzione di file di log.
Il secondo prodotto è Tiny Personal Firewall per Windows 9.x,Me,NT4,2000 freeware, liberamente scaricabile
all'indirizzo
http://www.tinysoftware.com
Questo prodotto oltre a fornire le classiche funzioni di filtraggio dei pacchetti è anche in grado di costruire dei filtri a
livello delle applicazioni e mette a disposizione una serie di ulteriori funzionalità quali :
− amministrazione remota;
− verifica della impronta MD5 delle applicazioni;
− capacità di memorizzare le informazioni di log su un server syslog centralizzato;
− creazione dinamica delle regole di filtro;
− possibilità di definire una lista di indirizzi di fiducia;
− possibilità di applicare le regole di filtro soltanto durante un preciso intervallo temporale;
− possibilità di scegliere tra tre livelli predefiniti di comportamento (blocco di tutto il traffico, richiesta esplicita di
conferma per ciascuna connessione per la quale non sia presente una regola di filtraggio oppure nessun tipo di blocco).
L'ultimo prodotto è Black Ice Defender per Windows 9.x,NT4,2000 disponibile all'indirizzo
http://www.networkice.com
Si tratta di un prodotto commerciale (il costo è di $ 39.95) che unisce le funzionalità tipiche di un firewall con quelle di
un sistema per la scoperta delle intrusioni (IDS). Il software analizza in tempo reale tutti i pacchetti in transito e, grazie
ad un database interno aggiornabile che raccoglie le impronte caratteristiche delle varie tipologie di attacco, è in grado
di riconoscere svariati tentativi di intrusione e di bloccarli prima che essi siano portati a compimento fornendo un
immediato riscontro all'utente e raccogliendo in un file di log le informazioni relative all'aggressore quali l'indirizzo IP,
l'eventuale nome NETBIOS della macchina utilizzata ed il suo indirizzo hardware.Altre caratteristiche interessanti
sono:
− possibilità di scegliere tra quattro tipologie differenti di livelli: trusting, cautious, nervous e paranoid;
− possibilità di definire gruppi di indirizzi di fiducia;
− produzione di log dettagliati.
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Gli Antivirus
11. Che cos'è un antivirus e come funziona
Gli antivirus, gli strumenti più utili per la salvaguardia della sicurezza di un Personal Computer
Ogni giorno nel mondo vengono creati e diffusi nuovi virus sempre più sofisticati ed in possesso di tecniche offensive
evolute in grado di attaccare un sistema e renderlo instabile fino a provocarne il malfunzionamento od il blocco totale.
Questo scenario non riguarda più soltanto le grandi entità che, peraltro, spendono centinaia di milioni per proteggersi
ma anche e soprattutto l'utente comune che accede alla rete dal PC di casa per compiere operazioni di vario genere.
In effetti con l'avvento dell'era telematica i veicoli di una possibile infezione virale si sono enormemente moltiplicati ed
il pericolo non è più rappresentato soltanto dai classici virus ma anche da una nuova classe di codice nocivo costituita
da cavalli di Troia e backdoor: i primi sono in genere programmi che, all'insaputa dell'utente, compiono operazioni
dannose sul sistema mentre le backdoor sono applicazioni che lasciano aperti dei varchi che consentono ad un
aggressore di riacquisire in un momento successivo il possesso di un determinato sistema.
Naturalmente non esiste un rimedio unico per far fronte a questo tipo di attacchi ma un insieme di accorgimenti e
strumenti da adottare primo fra i quali un buon prodotto antivirus.
12. Caratteristiche di un buon antivirus
Guida alla scelta di un antivirus. Come distinguere un antivirus efficace da un antivirus inutile
Quali sono allora le caratteristiche di cui deve essere in possesso un antivirus per poter essere considerato un prodotto
veramente efficace ? Innanzitutto è necessario sottolineare che, a causa della continua evoluzione ed affinamento delle
tecniche di programmazione impiegate per la costruzione di codice virale, un antivirus non può più limitarsi a rilevare
ed eliminare soltanto i virus noti ma deve anche essere progettato per identificare, anche se in modo probabilistico,
nuove tipologie di virus. Di conseguenza il primo requisito fondamentale è rappresentato dalla presenza di un motore di
scansione cd. euristico in grado di ricercare all'interno dei file la presenza di particolari sequenze di byte che possono
essere sintomo tipico di codice nocivo. Ovviamente poiché questo tipo di scansione non fa uso di metodi deterministici
essa non è in grado di offrire lo stesso livello di protezione ed affidabilità della scansione tradizionale, basata invece
sull'individuazione di una impronta nota, e di conseguenza può generare un numero più o meno frequente di falsi
allarmi chiamati anche falsi positivi che, pur richiedendo una ulteriore fase di analisi, svolgono tuttavia un compito
importantissimo vale a dire richiamare l'attenzione dell'utente sull'esistenza di una possibile fonte di rischio.
In ogni caso, al di là di questa precisazione, è utile suddividere in due gruppi distinti le funzionalità che possono essere
rinvenute in un prodotto antivirus: nel primo gruppo comprendente funzionalità cd. di base rientrano le seguenti
caratteristiche:
− verifica della integrità del settore di boot, del Master Boot Record (MBR) e dei file di sistema durante la fase
iniziale di avvio del sistema;
− scansione in tempo reale della memoria;
− scansione in tempo reale dei file;
− scansione degli allegati di posta elettronica;
− capacità di individuazione delle altre tipologie di codice nocivo (cavalli di troia, backdoor, macro virus, ecc.);
− possibilità di creare dischetti di emergenza da utilizzare in caso di ripristino del sistema;
− rilascio da parte del produttore di frequenti aggiornamenti del file delle firme;
Nel secondo gruppo invece rientrano alcune funzionalità che possiamo considerare avanzate nel senso che esse
facilitano l'utilizzo del prodotto od il suo aggiornamento ma non hanno alcuna influenza sulla sua efficacia ed
affidabilità:
− possibilità di programmare scansioni del file system ad intervalli regolari;
− distribuzione centralizzata degli aggiornamenti (utile soprattutto in un ambiente di rete);
− possibilità di effettuare gli aggiornamenti attraverso Internet;
− capacità di isolare i file infetti per i quali il prodotto non sia in grado di compiere operazioni di pulizia;
− presenza di una guida esauriente che descriva le tipologie note di virus, cavalli di troia e backdoor e le loro
caratteristiche principali.
13. L’aggiornamento del file delle firme
L'importanza dell'aggiornamento. Come rendere sempre efficiente un antivirus
Generalmente il funzionamento degli antivirus si basa sulla presenza di un motore di scansione che, operando in
background, disassembla in tempo reale i vari file e ricerca all'interno degli stessi la presenza di determinate sequenze di
byte che costituiscono l'impronta digitale identificativa di un virus. Pertanto, considerata la frequenza con la quale i
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
nuovi virus vengono messi in circolazione, l’aggiornamento periodico del file delle definizioni diventa fondamentale
per garantire l’individuazione e ove possibile la rimozione anche dei virus più recenti
14. Software Antivirus
I principali software antivirus in circolazione. Collegamenti per lo scaricamento del download
In commercio esistono svariati prodotti antivirus ma tra questi i migliori sono sicuramente Symantec Norton AntiVirus
2001, McAfee VirusScan 5, PC-Cillin 2000 i quali si distinguono per la facilità d’uso, le numerose funzioni e la
disponibilità di frequenti aggiornamenti del file delle firme. Di seguito viene riportata una lista di indirizzi utili:
Prodotto
Symantec Norton AntiVirus
2001
URL
McAfee VirusScan 5
http://www.mcafee.com
PC-Cillin 2000
F-Sicure AntiVirus
AntiViral ToolKit Pro
http://www.antivirus.com
http://www.datafellows.com
http://www.avp.it
Panda AntiVirus
http://www.pandasoftware.com
http://www.symantec.it
15. Altri strumenti ed accorgimenti
Quando l'antivirus non basta: difendersi dagli altri attacchi con codice nocivo.
L'utilizzo di un antivirus rappresenta sicuramente un primo passo decisivo per rafforzare la sicurezza di un sistema
informatico ma in alcuni casi può non essere del tutto sufficiente. Per questo motivo diventa opportuno affiancare ad un
prodotto di questo tipo altri strumenti complementari. Dal momento che stiamo parlando di codice nocivo è bene
sottolineare che in un sistema operativo Windows tre sono le componenti a più alto rischio che occorre tenere sotto
controllo: il file system, il registro di configurazione ed i processi. Per quanto riguarda il primo aspetto la misura
precauzionale più efficiente consiste nel creare ad intervalli regolari una lista di directory e di file da confrontare con
elenchi generati precedentemente e memorizzati su supporti removibili conservati in luoghi sicuri. A tal proposito nei
sistemi Windows NT/2000 è assolutamente necessario usare strumenti in grado di individuare la presenza nei file dei
flussi di dati alternativi (ADS o Alternate Data Streaming). Il file system NTFS presenta infatti una interessante
funzionalità che permette di aggiungere ad un file esistente degli ulteriori flussi, cioè dei dati di qualsiasi genere, senza
per questo modificare gli attributi ed il contenuto originario del file stesso: per esempio se ad un file di testo viene
aggiunto, sotto forma di ADS, un eseguibile contenente un cavallo di troia il file di testo continuerà ad essere
visualizzato correttamente ma, per converso, il cavallo di troia potrà essere eseguito dall'interno dello stesso file
rimanendo completamente nascosto a meno che non vengano utilizzati per l'appunto strumenti specifici. Un altro
rimedio che aiuta nella identificazione di attività sospette aventi per oggetto il file system può inoltre consistere
nell'abilitazione delle attività di auditing (Windows NT/2000) e/o nell'utilizzo di altre applicazioni dirette a garantire
l'integrità dei file. L'adozione di questi accorgimenti vale per tutti i sistemi, compresi quelli Windows 2000, anche se
questi ultimi mettono a disposizione un nuova funzionalità chiamata WFP (Windows File Protection) che dovrebbe
garantire un certo livello di protezione dei file di sistema da possibili operazioni di modifica e manomissione ma che ha
evidenziato in alcune ipotesi dei comportamenti anomali. Anche il registro di configurazione di Windows necessita di
un controllo continuo poiché esso rappresenta purtroppo uno dei punti deboli più critici sotto il profilo della sicurezza.
Nel
caso
specifico
l'attività
di
monitoraggio
deve
riguardare
soprattutto
una
serie
di
chiavi
e
cioè
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run,
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce,
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx,
utilizzate per memorizzare informazioni relative ad applicazioni che devono essere avviate in modo automatico durante
il boot del sistema (per gli stessi motivi occorre anche verificare periodicamente il contenuto della cartella Esecuzione
Automatica nonché i file win.ini e system.ini).
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Infine un altra misura cautelare è data dal monitoraggio dei processi attivi che dovrebbe essere compiuto possibilmente
con strumenti in grado di identificare per ogni processo anche l'eventuale porta TCP/UDP utilizzata.
Prodotto
CrucialAds
Tripwire
MD5Sum
FPort
DumpReg
Area
Integrità file system
Integrità file system
Integrità file system
Monitoraggio
processi
Monitoraggio
registro
URL
http://www.crucialsecurity.com/
http://www.tripwire.com
http://sourceware.cygnus.com/cygwin/
http://www.foundstone.com
http://www.somarsoft.com
Un ultimo consiglio, ma non certo per importanza, riguarda l'adozione di comportamenti ispirati al buon senso ed alla
prudenza che, spesso, sono di per sé stessi sufficienti ad evitare molti problemi.
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Attacchi derivanti da codice nocivo
16. Cosa sono i "malicious software" o malware
Introduzione agli attacchi da codice nocivo: worm, cavalli di troia e macro virus.
Le cronache informatiche di questi ultimi tempi hanno fornito la dimostrazione pratica di un dato di fatto innegabile:
nessuno può dirsi veramente al sicuro dagli attacchi portati attraverso il cosiddetto codice nocivo. Ma che cosa si
intende per codice nocivo ed in quale modo questo può effettivamente produrre un danno? Con il termine inglese di
"malware", contrazione di malicious software, generalmente si intende un qualsiasi frammento di codice di lunghezza
variabile che, penetrato all'interno di un computer, si dimostra potenzialmente in grado di danneggiarlo. Dunque la
caratteristica che giustifica l'appellativo di nocivo è l'attitudine a causare danni a prescindere dalla circostanza che poi
questi effettivamente si verifichino. Per questo motivo in questa categoria rientrano tradizionalmente i virus, i macro
virus, i worm ed i cavalli di troia
17. I Virus
I Virus informatici, classificazioni e principali caratteristiche di attacco.
La RFC 1135 definisce come virus qualsiasi porzione di codice che si installa all'interno di un programma host al fine di
utilizzare quest'ultimo come mezzo di propagazione. Un virus non può essere eseguito in maniera autonoma ed
indipendente ma richiede che sia stato attivato un programma host. Due sono gli elementi che è necessario prendere in
considerazione quando si parla di virus: il meccanismo di propagazione ed il tipo di operazioni eseguite (cd. payload)
una volta che il virus sia attivo e residente in memoria. Il meccanismo di propagazione è forse l'aspetto più importante
nel valutare la pericolosità di una determinata classe di codice nocivo. Infatti mentre in passato il pericolo di una
infezione da virus poteva dirsi limitato a pochi pc ed il mezzo di diffusione era costituito principalmente da floppy disk
o da cassette attualmente l'avvento di Internet ha dato un forte impulso alla crescita delle infrastrutture di rete per cui
negli scenari odierni i danni causati dai virus possono colpire centinaia di migliaia di sistemi in poco più di una
settimana sfruttando mezzi di connettività globale velocissimi come ad esempio la posta elettronica. A seconda delle
caratteristiche di diffusione di cui sono in possesso i virus appartengono a due distinte categorie:
− virus di tipo parassita: infettano i classici file eseguibili (.com, .exe e .dll) lasciandoli perfettamente utilizzabili ma
al tempo stessi utilizzandoli come mezzi di propagazione;
− virus del settore di avvio: copiano se stessi nel settore di avvio dei dischetti o del disco rigido e si dimostrano
particolarmente subdoli poiché sono in grado di acquisire il controllo del sistema al momento del suo bootstrap e
quindi molto prima che sia caricato il sistema operativo e, conseguentemente, qualsiasi programma antivirus.
In quest'ultimo gruppo rientra anche il codice virale che, anziché colpire il settore di avvio, infetta il Master Boot
Record vale a dire quell'insieme di istruzioni localizzate all'inizio di qualsiasi disco fisso, cioè nel primo settore del
primo cilindro del primo piatto, in grado di interpretare la tabella delle partizioni che contiene la mappa della
configurazione dell'intero disco. Peraltro è proprio questa tipologia di virus quella che presenta le particolarità più
insidiose in quanto tende ad acquisire il controllo dell'MBR rilocandolo altrove ed inserendo il proprio codice nocivo
all'interno dello stesso. In questo modo, durante il riavvio della macchina, il virus riesce ad eseguire qualsiasi tipo di
operazione: modificare le chiamate del BIOS od intercettare quelle dirette a leggere lo stesso MBR dirottandole verso la
copia precedentemente rilocata (l'uso di queste tecniche cosiddette stealth è normalmente diretto ad evitare
l'identificazione da parte dei normali antivirus). Infine non è raro trovare anche virus cosiddetti multi-partiti capaci non
soltanto di infettare l'MBR od il settore di boot del disco ma anche di esporre caratteristiche di tipo parassita che li
rendono idonei a sfruttare una ampia gamma di mezzi di diffusione.
Per quanto riguarda invece le operazioni compiute va detto che non tutti i virus sono caratterizzati dalla presenza di un
payload mentre, tra quelli che ne sono in possesso, alcuni sono programmati in modo tale da avere una sorta di trigger
che al verificarsi di determinate circostanze scatena l'esecuzione delle operazioni nocive.
L'uso di tecniche evolute nei moderni virus
L'evoluzione delle tecniche di programmazione ha portato negli ultimi anni alla proliferazione di una nuova generazione
di codice virale sempre più insidioso e subdolo rappresentato da:
− virus polimorfici;
− virus crittografati;
La prima specie raccoglie quei virus che adottano tecniche particolari per rendere la loro impronta virale diversa di
volta in volta. Attraverso un complesso e sofisticato processo di recodifica essi creano delle varianti di se stessi
ostacolando o rendendo molto più difficoltosa la loro identificazione da parte dei programmi antivirus. Il secondo
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
genere invece si caratterizza per l'utilizzo di metodi di occultamento della impronta virale che sfruttano la crittografia.
In questo caso la logica di crittografia/decrittografia può essere contenuta all'interno dello stesso codice virale oppure
può impiegare apposite routine fornite di default dallo stesso sistema operativo limitando tuttavia in questo caso la
propria capacità offensiva soltanto ad tipo sistema (quello di cui vengono sfruttate le API crittografiche). Peraltro nulla
esclude l'impiego congiunto di polimorfismo e crittografia al fine di produrre virus altamente evoluti anche se ciò
inevitabilmente si traduce in un codice di maggiori dimensioni la cui realizzazione è alla portata di pochi individui in
possesso di capacità tecniche non comuni.
18. Macro Virus
I Virus portati da script inclusi all'interno dei documenti
Rappresentano l'evoluzione dei tradizionali virus poiché fondamentalmente ereditano da questi ultimi un
comportamento di tipo parassita pur presentando di fatto delle caratteristiche completamente differenti. Questi virus non
attaccano i comuni file eseguibili ma un altro genere di file: i macro virus sono generalmente script incorporati
all'interno di particolari documenti (come ad esempio un template di Microsoft Word) i quali comprendono una serie di
comandi codificati in base al linguaggio specifico di una determinata applicazione. La diffusione di questa nuova classe
di codice virale è stata ispirata dalla possibilità di sfruttare alcune interessanti caratteristiche presenti nelle applicazioni
tradizionalmente legate alla produttività individuale. Per la prima volta nella storia questi virus hanno sovvertito un
punto fermo rappresentato dal fatto che, in passato, non era possibile concepire del codice virale in una forma tale che
potesse prescindere dall'esistenza di un file eseguibile mentre oggi tutto questo è divenuto realtà proprio grazie alle
accresciute potenzialità che nel tempo queste applicazioni sono venute ad acquisire. Tale processo di evoluzione,
purtroppo, ha comportato un indiscriminato sviluppo delle potenzialità anche per questo genere di macro comandi che
ormai sono in grado di eseguire le operazioni più svariate: aprire, modificare e cancellare files, avviare l'esecuzione di
altri programmi, leggere ed impostare proprietà di sistema, in una parola sfruttare tutte le eventuali lacune di sicurezza
che le applicazioni possono presentare. Tuttavia, proprio per il fatto di essere codificati facendo uso di un linguaggio
generalmente interpretato, i macro virus richiedono per la propria operatività l'attivazione di un ambiente host che funge
da interprete e/o esecutore dei comandi stessi, il che potrebbe rappresentare una forte limitazione alla loro espansione
(anche se di fatto ciò non sempre si verifica). Indubbiamente uno degli esempi più lampanti di questa tipologia di codice
è rappresentato dal macro Virus denominato Melissa che recentemente è assurto alle cronache informatiche per la sua
rapida diffusione nonché per il semplice ma efficace stratagemma che esso usa per replicarsi. Melissa è stato scritto in
VBA (Visual Basic for Application) ed opera infettando la macro Document.Open() di Microsoft Word in modo tale
che qualsiasi porzione di codice racchiusa all'interno di questa routine venga automaticamente eseguita durante
l'apertura di un file Word. Come se ciò non bastasse il virus è in grado di propagarsi auto inviandosi ai primi 50
indirizzi presenti nella rubrica di Microsoft Outlook sfruttando in tale modo un mezzo di diffusione straordinariamente
veloce come la posta elettronica.
19. Cavalli di Troia
I programmi che sfruttano la fiducia dell'utente per insinuarsi nel sistema
I cavalli di Troia derivano il loro nome dal celebre episodio dell'Iliade di Omero che vide i Greci sopraffare i Troiani in
virtù di uno stratagemma geniale. Un cavallo di Troia basa tutta la sua potenza sull'inganno in quanto è un programma
che dichiara di svolgere determinate funzioni, per di più di utilità, ma che in realtà compie sul sistema dell'utente, e ad
insaputa di quest'ultimo, una serie di operazioni dannose che possono essere le più svariate. Ciò che caratterizza dunque
questa tipologia di codice è l'approfittamento della fiducia che l'utente ripone nel codice che accetta di eseguire perché
spinto in qualche modo a farlo. Peraltro, per converso, questa stessa caratteristica è anche la maggiore limitazione di un
cavallo di Troia che non può in alcun modo operare sul sistema se non viene attivato da parte dell'utente. La diffusione
di questo genere di codice oggigiorno è talmente elevata che tutti i maggiori produttori di antivirus hanno ormai
aggiornato i propri prodotti in modo tale da non identificare più soltanto i tradizionali virus informatici ma anche i ben
più subdoli cavalli di troia.
20. Worm
I codici che non modificano le risorse di sistema ma le consumano
Il concetto di worm è molto simile a quello di virus con la sola differenza che un worm non si riproduce localmente ma
semplicemente si propaga attraverso sistemi differenti. La stessa RFC 1135 fornisce una chiave interpretativa definendo
i worm come frammenti di codice autonomi ed indipendenti che esistono solo in memoria consumando le risorse del
sistema ed auto-propagandosi. Questa importante precisazione è stata introdotta in onore del primo worm della storia
informatica denominato "Morris Worm", dal nome del suo autore, che il giorno 2 Novembre 1988 colpì svariati sistemi
UNIX. Il codice era concepito in modo tale da sfruttare un buffer overflow presente nei demoni fingerd e sendmail per
irrompere all'interno dei sistemi che adottavano il sistema operativo Berkeley UNIX. Tuttavia era il payload del codice
quello che senza dubbio maggiormente destò la maggior attenzione al punto da giustificare l'interessamento addirittura
di una RFC. Infatti, dopo aver eseguito il crack degli hash delle password di autenticazione sfruttando un motore di
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
decifratura molto veloce ed un dizionario dati presenti al suo interno, il worm eseguiva una scansione dell'intero sistema
alla ricerca di informazioni relative ad altri host (file .rhost, indirizzi dei gateways ricavati dalle tabelle di
instradamento, ecc...) che successivamente tentava di compromettere.
21. Meccanismi di propagazione
I principali mezzi con cui si propaga il codice nocivo
Per comprendere in che modo difendersi è innanzitutto necessario capire quali sono i principali meccanismi di
propagazione del codice nocivo. Nell'epoca in cui viviamo il sistema di trasmissione delle informazioni più diffuso e
veloce è senza dubbio rappresentato dalla posta elettronica per cui, inevitabilmente, questo è anche il veicolo primario
di propagazione del codice nocivo esistente. Fatta questa considerazione le principali modalità di diffusione di codice
nocivo all'interno dei messaggi di posta elettronica sono rappresentate da:
− Macro: costituiscono un meccanismo efficiente, soprattutto per quanto riguarda i macro virus ed i worm, poiché
normalmente vengono eseguite in modo trasparente e non richiedono una interazione con l'utente. Il punto debole è
invece rappresentato dal fatto che esse richiedono la presenza di uno specifico client di posta elettronica in grado di
interpretare correttamente i comandi in esse contenuti ed, in questa prospettiva, la mancanza di un ambiente universale
potrebbe limitarne in un certo senso la diffusione;
− Allegato di posta: è tuttora il principale veicolo per i virus ed i cavalli di troia ma presenta due punti deboli noti. Il
primo è dato dal fatto che esso richiede una interazione con l'utente il quale deve essere spinto ad aprire l'allegato
mentre il secondo è costituito dalla sua offensività che è ovviamente limitata ad una specifica piattaforma in relazione
alla forma assunta dall'allegato stesso (ad esempio file .exe). Questa ultima limitazione è tuttavia soltanto fittizia se si
pensa alla enorme diffusione di cui godono oggigiorno le piattaforme Windows rispetto a tutte le altre.
Non dimentichiamo inoltre che, accanto alla e-mail, un altro mezzo di diffusione del codice nocivo è rappresentato dal
web ed in questo caso il pericolo assume principalmente la forma di programmi che vengono scaricati dagli
innumerevoli archivi software esistenti in rete.
22. Strumenti di difesa
Come difendersi dagli attacchi portati con codice nocivo: quattro passi obbligatori
Non esiste uno strumento unico di difesa contro il codice nocivo ma un complesso di misure cautelari che occorre
adottare per ridurre al minimo i rischi. Indubbiamente una delle migliori protezioni, prima ancora della installazione e
dell'uso di un prodotto specifico, è quella che passa attraverso la consapevolezza e l'educazione degli utenti,
principalmente di quelli domestici, maggiormente esposti per ovvie ragioni agli attacchi di questo tipo. La
consapevolezza implica una reale presa di coscienza dei rischi ai quali chiunque si espone nel momento stesso in cui
accede alla rete e compie operazioni che possono apparire banali, come scaricare la posta elettronica oppure visitare un
determinato sito od ancora prelevare risorse di altro genere. L'educazione, invece, comporta un continuo esercizio
diretto ad acquisire e sviluppare una propria ed autonoma capacità di giudizio su ciò che è opportuno scaricare dalla rete
oppure sul genere di allegati di posta elettronica che possono considerarsi, con un buon margine di probabilità, "sicuri".
In ogni caso l'obiettivo finale, costituito dal raggiungimento di un buon livello di sicurezza, richiede senza dubbio le
seguenti precauzioni:
− adozione di atteggiamenti ispirati alla prudenza ed al buon senso: è difficile tipizzare con esattezza questi
comportamenti ma sicuramente tra di essi rientrano il guardare con sospetto agli allegati di posta elettronica, da
qualunque fonte provengano, l'evitare di operare con un utente di sistema avente privilegi amministrativi, il guardare
con forte sospetto a tutti i comportamenti anomali (uso elevato delle risorse di sistema, improvvisi reboot, finestre di
prompt che appaiono ingiustificatamente durante il riavvio, porte TCP/UDP "sospette" in ascolto, cambiamento delle
dimensioni e degli attributi di file eseguibili, ecc...).
− impostazione delle caratteristiche di sicurezza dei browser web: il web si è ormai talmente evoluto nei suoi
contenuti che la linea di demarcazione tra ciò che rappresenta un puro dato e ciò che invece ha natura eseguibile si è
molto assottigliata. Questo evoluzione che sicuramente arricchisce l'esperienza del navigatore indubbiamente comporta
dei compromessi spesso gravi sotto il profilo della sicurezza. A ciò aggiungasi che la presenza di bachi di sicurezza nei
moderni browser è diventata talmente probabile da rendere addirittura insensata la navigazione senza la preventiva
disabilitazione dei vari meccanismi di Active Scripting, JavaScript, ActiveX e quanto altro la moderna tecnologia offre.
− installazione ed uso di un antivirus: la presenza di un antivirus in possesso di adeguate caratteristiche è una misura
di fondamentale importanza che tuttavia deve essere accompagnata anche da frequenti aggiornamenti del file delle
firme pena l'assoluta inutilità del prodotto.
− installazione ed uso di prodotti complementari: la notevole diversità di codice nocivo in circolazione oggigiorno
può rendere necessaria l'adozione di ulteriori strumenti da affiancare ad un antivirus. In questa categoria rientrano
strumenti di cui il mercato del software è abbastanza prodigo come quelli per la verifica della integrità dei file oppure
prodotti specifici per l'identificazione e la rimozione di svariate fattispecie di cavalli di troia e quanto altro possa avere
una giustificazione in relazione alle proprie esigenze di difesa.
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Attacchi basati sulla vulnerabilità dei programmi
23. Cosa si intende per vulnerabilità dei programmi
Le vulnerabilità sono causate da errori o mancanze di programmazione
Qualsiasi applicazione può essere affetta da malfunzionamenti di vario genere che producono un impatto più o meno
decisivo sulla sicurezza del sistema in cui essa viene eseguita, ma quando si parla di vulnerabilità dei client si intende
fare un riferimento specifico a quei programmi che rientrano nel tipico modello client/server. L'espressione vulnerabilità
è da intendere in senso lato per indicare la presenza di errori di programmazione, difetti o anche di semplici mancanze
da cui possono scaturire una serie di comportamenti inattesi. La serietà della problematica legata alle anomalie del
software, ed in particolare di quello il cui funzionamento presuppone la ricezione di dati da parte di una sorgente
esterna, risiede nel fatto che attualmente la stragrande maggioranza di individui fa uso di questo genere di prodotti per
svolgere la maggior parte del proprio lavoro o per curare i propri interessi personali. Infatti l'enorme diffusione degli
strumenti informatici unita con la problematica menzionata ha determinato il prodursi di un nuovo scenario in cui il
fulcro è costituito dalle informazioni che devono essere tutelate e protette a prescindere dal fatto che esse risiedano su
un grande server web di carattere pubblico o sul personal computer di un individuo qualsiasi. Fatta questa importante
precisazione vediamo allora quali sono in concreto i rischi di cui stiamo parlando e di conseguenza gli strumenti e le
tecniche di difesa più opportuni.
24. Microsoft ActiveX
Cosa sono gli ActiveX e quali problemi di sicurezza possono causare
ActiveX è il nome della tecnologia sviluppata da Microsoft che rappresenta la naturale evoluzione della precedente
OLE (Object Linking & Embedding) e risponde all'esigenza, molto avvertita, di disporre di un set di funzionalità esteso
in grado di favorire la rapida realizzazione e distribuzione di documenti di carattere composito. L'utilizzo di questa
tecnologia rende possibile l'implementazione di particolari "controlli" in possesso di funzionalità specifiche i quali, una
volta realizzati, possono essere letteralmente incorporati all'interno di altre applicazioni od ambienti differenti al fine di
permettere lo sfruttamento delle loro caratteristiche tipiche. Naturalmente, trattandosi di una tecnologia ormai
consolidata, l'elenco delle applicazioni che garantiscono il completo supporto agli ActiveX è veramente ampio ed in
questa lista non poteva di certo mancare il browser Microsoft Internet Explorer, fatto quest'ultimo che ha suscitato non
poche perplessità a causa degli inevitabili problemi che l'uso degli ActiveX pone in termini di sicurezza. In effetti
l'impiego di questa tecnologia in un ottica distribuita come quella di Internet comporta, di fatto, lo scaricamento e
l'esecuzione sul lato client di porzioni di codice senza che ciò si accompagni all'esistenza di meccanismi di sicurezza
simili a quelli previsti, ad esempio, per le applet Java, con tutte le conseguenze negative che ne derivano nell'ipotesi in
cui il codice sia stato volutamente confezionato in modo da svolgere operazioni dannose sul computer dell'utente. Per
comprendere al meglio le implicazioni di questo meccanismo ricordiamo che quando il browser si imbatte in una pagina
Web contenente un controllo ActiveX, incorporato mediante l'uso dei tag <object></object> , per prima cosa verifica
attraverso l'esame del registro di configurazione se il controllo è disponibile sul sistema locale: se esso risulta presente
allora la pagina viene visualizzata con il contestuale caricamento del controllo nello spazio della memoria del browser e
la successiva esecuzione del codice mentre, nell'ipotesi contraria, l'ActiveX viene scaricato ed installato seguendo le
istruzioni presenti all'interno dello stesso tag <object>. La debolezza intrinseca insita in questo automatismo ha spinto
Microsoft ad introdurre dei correttivi individuati nell'adozione della tecnologia Authenticode che, in breve, permette
agli sviluppatori di firmare i controlli attraverso l'uso della crittografia e la successiva validazione da parte di Internet
Explorer e di un entità terza (in genere Verisign Corporation). Attraverso questo ulteriore meccanismo gli utenti
dovrebbero essere "assicurati" circa la genuinità della fonte da cui proviene un determinato controllo ActiveX ed
impiegarlo senza remore ma, purtroppo, esiste anche il rovescio della medaglia, una scappatoia che consente di aggirare
facilmente la procedura di controllo della firma da parte di Authenticode e consiste nell'abilitazione del flag cd. "safe
for scripting". In presenza di questo flag nessun tipo di avvertimento viene fornito quando l'ActiveX è eseguito nel
contesto del browser web con la conseguente esposizione del sistema dell'utente a rischi di intuibile portata,
considerevolmente aumentati dalla presenza di due fattori critici:
− l'estrema facilità con la quale risulta possibile impostare il flag, considerato che, a tal fine, è sufficiente che il
controllo implementi l'interfaccia IObjectSafety oppure che esso sia contrassegnato come "sicuro" nel registro di
configurazione di Windows tramite l'aggiunta alle "Implemented Categories" della chiave 7DD95801-9882-11CF9FA9-00AA006C42C4;
− la circostanza data dal fatto che in alcuni casi i componenti sono in grado di eseguire operazioni "privilegiate" sul
sistema locale come la lettura e la scrittura sul disco;
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
Naturalmente non sono mancate valide dimostrazioni della vulnerabilità insita nel trattamento dei controlli cosiddetti
"safe" da parte di Internet Explorer e tra queste vanno citate principalmente quella di Georgi Guninski
(http://www.guninski.com), relativa ai controlli Scriptlet.Typelib e Eyedog.ocx forniti con Internet Explorer 4 e versioni
precedenti, ed un altra relativa invece al ben più recente controllo OUA installato di default insieme con la suite
Microsoft Office 2000 (http://www.l0pht.com/advisories/ouahack/index.html). Per entrambe le vulnerabilità la
Microsoft ha rilasciato delle patch risolutive disponibili agli indirizzi
http://www.microsoft.com/technet/security/bullettin/ms99-032.asp
http://officeupdate.microsoft.com/2000/downloadDetails/Uactlsec.htm
ma, purtroppo, va ricordato che questi rilasci risolvono soltanto i problemi specifici riscontrati con questi controlli e non
pongono riparo ai possibili abusi che possono presentarsi per tutti gli altri ActiveX.
25. Java
Le vulnerabilità delle applicazioni scritte in Java
Java è un linguaggio progettato da Sun Microsystem agli inizi degli anni 90 con l'intento di risolvere alcuni dei
problemi insiti nella programmazione tradizionale. In effetti, grazie anche ad un buon disegno progettuale, questo
linguaggio può dirsi effettivamente in grado di impedire quei classici errori del programmatore che possono condurre a
ben più seri problemi di sicurezza, come ad esempio i buffer overflow, e ciò perché si tratta di un linguaggio che non
permette di accedere né tantomeno manipolare gli indirizzi di memoria attraverso i puntatori. Inoltre questa non è
l'unica caratteristica di sicurezza poiché Java è un linguaggio fortemente tipizzato e la sua rigidità in fatto di tipi è
rafforzata sia in fase di compilazione sia in fase di esecuzione del codice attraverso la Java Virtual Machine ed un
verificatore di bytecode che ha il compito di proteggere le aree di memoria alle quali il programma accede. La stessa
Java Virtual Machine si caratterizza per la presenza di un Security Manager che impone un controllo sulla legittimità
dell'accesso alle risorse di sistema sulla base di criteri di protezione che possono essere definiti e modellati dall'utente in
base alle sue esigenze reali. L'insieme di tutte queste peculiarità ha fatto sì che, nel corso di quest'ultimo decennio, Java
si dimostrasse un linguaggio sicuro almeno dal punto di vista formale. Ciò che invece ha causato i maggiori problemi in
termini di sicurezza sono state alcune implementazioni della Java Virtual Machine, forse non completamente aderenti
alle specifiche del linguaggio, fornite da alcune note case produttrici di software per Internet. In particolare nel corso
del 1999 è stato scoperto un bug nella implementazione della JVM di Netscape Communicator che impediva alla Java
Virtual Machine di controllare tutto il codice caricato con la conseguente possibilità per un eventuale aggressore di
eseguire codice Java in violazione dei criteri di protezione fissati. Lo stesso tipo di difetto nella implementazione della
sandbox della JVM ha afflitto anche il browser Microsoft Internet Explorer. Nel corso invece del 2000 ulteriori difetti
sono stati riscontrati nelle implementazioni Java di Netscape Communicator, nelle versioni dalla 4.0 alla 4.74 per le
piattaforme Windows, Macintosh e Unix. Questi difetti riguardano alcune classi Java, tra cui java.net.Socket,
netscape.net.URLConnection e netscape.net.URLInputStream, che esponevano metodi che, o non richiamavano
esplicitamente il metodo check del SecurityManager per verificare se un applet fosse in possesso delle autorizzazioni
necessarie, oppure ignoravano l'eccezione risultante nel caso in cui la verifica fallisse. Peraltro un proof-of-concept di
questi bug è stato prodotto e denominato "BrownOrifice" ed è disponibile all'indirizzo
http://www.brumleve.com/BrownOrifice/
26. Il codice nascosto nei tag html
L'utilizzo di script "nocivi" in normali pagine HTML
Un utente Internet può inconsciamente eseguire script maligni quando naviga tra collegamenti ipertestuali di cui non
conosce l'origine presenti all'interno di pagine web, di messaggi di posta elettronica oppure di newsgroup. Può sembrare
una esagerazione ma in realtà si tratta di una forma di attacco particolarmente subdola poiché usando una tecnica
chiamata "cross-site scripting" un aggressore può, in alcune circostanze, riuscire ad incorporare all'interno di pagine
web generate dinamicamente (come ad esempio quelle prodotte da un qualsiasi motore di ricerca) dei collegamenti
ipertestuali contenenti script maligni opportunamente nascosti all'interno dei comuni tag html. Quando l'ignaro utente
clicca sul collegamento esso finisce per inviare, oltre alla sua richiesta, anche il codice incorporato: a questo punto se il
server web non si preoccupa di validare l'input ricevuto oppure non adotta alcun meccanismo per assicurare che la
pagina generata sia stata propriamente codificata esso restituirà una pagina html contenente il codice incorporato che
verrà automaticamente eseguito dal client esponendo quest'ultimo a pericolose falle di sicurezza che possono
comportare:
− l'accesso completo a qualsiasi informazione, comprese quelle di carattere confidenziale, fornite al server web;
− l'invio contestuale di informazioni confidenziali anche ad altre pagine o siti web;
− l'alterazione dell'apparenza o del normale funzionamento delle pagine web;
− la rivelazione di dati usati da particolari meccanismi di autenticazione dal momento che l'esecuzione dello script
può precedere l'instaurazione di una connessione protetta;
− l'avvelenamento dei cookies in modo da rendere l'attacco di tipo persistente: in particolar modo se il sito web
vulnerabile usa un campo del cookie per generare dinamicamente le proprie pagine, la modifica del cookie stesso può
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
far sì che tutti i futuri accessi al medesimo sito, persino se effettuati sulla base di collegamenti ipertestuali "puliti",
siano compromessi;
− l'accesso non autorizzato da parte dell'aggressore ai dati di un server web vulnerabile posto all'interno della stessa
intranet in cui si trova il client tramite la costruzione ad hoc di URL.
Dunque questa tipologia di attacco deriva il suo caratteristico nome dalla circostanza che una sorgente inietta del codice
nocivo all'interno delle pagine web generate da una fonte differente ma, comunque, il fulcro di questa particolare
tecnica è costituito da una violazione della fiducia derivante dal fatto che lo script "iniettato" viene eseguito in un
contesto di apparente legittimità in quanto sembra provenire dal sito con il quale l'utente ha instaurato una connessione
ed al quale egli si dimostra particolarmente interessato.
27. Vulnerabilità dei cookies
Alcuni possibili utilizzi scorretti dei cookies
Sicuramente uno dei meccanismi più delicati insiti nella navigazione in rete è rappresentato dai cd. cookies attraverso i
quali i vari siti web riescono non soltanto a personalizzare l'esperienza di navigazione dell'utente ma soprattutto a
riconoscere quando egli torna a far visita alle pagine del sito. Questi cookies, il cui funzionamento è descritto nella RFC
2109, possono essere impostati per sessione ed in questo caso rimangono nella memoria di sistema fino alla chiusura del
browser oppure, caso assai più frequente, possono avere una determinata scadenza o essere addirittura permanenti ed
allora essi vengono memorizzati in una apposita cartella del disco fisso locale sotto forma di file di testo in modo da
poter essere successivamente recuperati. Peraltro proprio i cookie di quest'ultimo tipo, soprattutto se utilizzati per
finalità di autenticazione, sono quelli che presentano le maggiori vulnerabilità poiché, essendo persistenti, un aggressore
potrebbe riuscire ad acquisirne una copia ed assumere successivamente l'identità on-line di un altro individuo. In effetti
è stato scoperto che attraverso un semplice clic su un URL costruito ad hoc gli utenti di Internet Explorer diventano
potenzialmente vulnerabili alla rivelazione dei cookies presenti sulla loro macchina (un proof-of-concept di questa
vulnerabilità è stato pubblicato all'indirizzo
http://www.peacefire.org/security/iecookies/
28. Vulnerabilità derivanti dall'uso della posta elettronica
I molti attacchi derivanti dall'uso scorretto della posta elettronica
Molte sono le vulnerabilità che possono implicitamente derivare dall'uso della posta elettronica e ciò per il semplice
fatto che quest'ultima rappresenta senza dubbio il mezzo più efficace e veloce per lo scambio delle informazioni oggi
esistente. La prima categoria di rischi che affrontiamo è quella legata alla possibilità di una contraffazione delle
intestazioni dei messaggi di posta elettronica (cd. "email spoofing") in modo tale che essi sembrano provenire da una
sorgente mentre, in realtà, sono originati da una fonte completamente diversa. Questa forma di attacco viene in genere
utilizzata per spingere l'utente a rivelare informazioni sensibili che lo riguardano attraverso un approfittamento dello
stato di fiducia che egli ripone nel messaggio il quale sembra provenire da una fonte legittima (es. l'amministratore di
sistema del proprio Internet Service Provider che chiede di modificare la password di accesso alla rete in un determinato
modo). Una seconda categoria di vulnerabilità è quella che comporta l'esecuzione di codice arbitrario attraverso i
messaggi di posta: in questi casi la pericolosità maggiore è insita nel fatto che il codice è normalmente nascosto
all'interno di comuni tag HTML che ormai la maggior parte dei moderni client di posta elettronica sono in grado di
interpretare. Fatta questa premessa va ricordato che gli stessi problemi messi in evidenza con riferimento ai controlli
ActiveX muniti del flag cd. "safe for scripting" ed incorporati all'interno della pagine web si ripropongono
integralmente anche per quanto riguarda la posta elettronica. Anzi una vulnerabilità, a detta di molti, ancora più infida,
poiché è in grado di aggirare qualunque meccanismo di protezione applicato agli ActiveX, è quella scoperta da Georgi
Guninski ed è legata alla possibilità di "eseguire" documenti di Microsoft Office attraverso la tecnica di incapsulamento
dei controlli ActiveX che fa uso dei ben noti tag <object></object>. In pratica il problema risiede in una carenza nel
meccanismo di verifica che il sistema operativo Windows compie quando, ad esempio, un tipico file di database con
estensione .mdb viene caricato dal browser o dal client di posta attraverso i tag citati: non appena il client ha terminato
di scaricare il file esso invoca immediatamente l'applicativo Access per aprirlo e tutto questo accade prima che l'utente
abbia ricevuto una notifica sulla pericolosità della operazione con la conseguenza che, se il file contiene qualche macro
VBA nociva, essa viene eseguita in modo del tutto automatico. Infine la terza ed ultima categoria di vulnerabilità che
affrontiamo è quella concernente gli attacchi tramite gli allegati di posta elettronica. In questi casi il rischio è quello
della esecuzione di codice infido che può nascondere al suo interno virus, worm e cavalli di troia. Peraltro le tecniche
che si possono adottare al riguardo sono molto varie e vanno dalla persuasione, diretta a convincere l'utente ad aprire o
salvare il file allegato, fino all'impiego di tecniche più sofisticate che producono come risultato l'esecuzione nascosta
del file oppure il suo salvataggio sul disco locale e la successiva esecuzione senza nessun intervento o consapevolezza
da parte dell'utente stesso. In particolare una delle forme di attacco più insidiosa è quella che prevede l'impiego dei file
cd. scrap aventi una estensione del tipo .shs o .shb.
Questi file, la cui estensione viene nascosta per default in base all'impostazione della chiave di registro
HKEY_CLASSES_ROOT\ShellScrap\NeverShowExt, sono dei wrapper, cioè una sorta di contenitori per altri oggetti
incorporati che possono essere non soltanto documenti di Office ma anche altri tipi di file. Quando un file shs, la cui
Per ulteriori informazioni rivolgersi a [email protected]
Il seguente tutorial è stato scaricato dal sito www.html.it in data 25/09/02
icona assomiglia molto a quella dei comuni file di testo, viene eseguito automaticamente viene anche eseguito l'oggetto
incorporato. Inoltre, tramite l'Object Packager di Microsoft, è addirittura possibile associare dei comandi all''oggetto
incorporato con tutte le conseguenze che ciò può comportare.
29. Strumenti e tecniche di difesa
I principali strumenti di difesa e le precauzioni da adottare
La miglior difesa contro i problemi di sicurezza appena esposti è ricorrere ad un corretta configurazione delle aree di
protezione di Microsoft Internet Explorer. Questo meccanismo consente di assegnare livelli di fiducia differenti al
codice scaricato da quattro possibili sorgenti rappresentate da internet, intranet, siti attendibili e siti con restrizioni.
Naturalmente l'area più importante di cui impostare i livelli di sicurezza è la prima ed, a tal fine, è sufficiente cliccare
due volte sull'icona Opzioni Internet all'interno del Pannello di Controllo di Windows, portarsi sulla scheda Sicurezza,
selezionare l'area Internet, scegliere come livello predefinito Alta e usare il pulsante Personalizza livello per meglio
ritoccare le impostazioni generali in modo da disattivare completamente i controlli ed i plugin ActiveX; inoltre, anche
se fastidiosa, si consiglia di impostare una richiesta di conferma esplicita per l'esecuzione degli script. Per non rendere
inutile la navigazione su quei siti veramente affidabili che fanno uso delle tecnologia ActiveX è invece possibile
aggiungere l'indirizzo di questi ultimi all'area siti attendibili ed impostare la protezione per quest'area ad un livello
inferiore (ma non troppo basso). Per far fronte al difetto della Java Virtual Machine di Netscape Communicator nonchè
alla vulnerabilità nota come Brown Orifice è possibile aggiornare il browser alla più recente versione o disabilitare
completamente le funzioni Java scegliendo dal menu Edit la voce Preferences, selezionando Advanced e quindi
deselezionando la casella di controllo Enable Java. Invece per risolvere i difetti della sandbox Java di Microsoft occorre
scaricare l'apposita patch Aggiornamento della Virtual Machine Sandbox disponibile all'indirizzo
http://www.microsoft.com/windows/ie/security/default.asp.
Prima però è opportuno verificare di essere effettivamente in possesso di una versione difettosa lanciando dal prompt
dei comandi l'utility jview e controllando il numero della build restituito corrispondente agli ultimi quattro numeri della
versione (deve trattarsi di un numero compreso tra 2000 e 2438 oppure tra 3000 e 3167).
Per il problema della sottrazione dei cookies tramite URL è disponibile una patch all'indirizzo
http://www.microsoft.com/technet/security/bullettin/ms00-033.asp.
Tuttavia, a prescindere da questa vulnerabilità specifica di Internet Explorer, è sempre opportuno tenere sotto controllo
il contenuto dei cookies attraverso uno dei tanti software disponibili in rete. Ancora più utile, anche per finalità più
generali di controllo del traffico, potrebbe essere dotarsi di un apposito sniffer cioè di un software che cattura i pacchetti
inviati e ricevuti. A tale proposito forse uno dei migliori prodotti è Spynet/PeepNet, disponibile negli archivi di
PacketStorm all'indirizzo
http://packetstormsecurity.com
che, oltre ad essere gratuito, incorpora al suo interno delle utilissime funzionalità che permettono la ricostruzione in
forma leggibile dei dati relativi ad una sessione di navigazione sul web. Contro lo sfruttamento, via posta elettronica,
degli exploit relativi agli ActiveX Scriptlet/Eyedog è necessaria l'applicazione della patch, già precedentemente
menzionata, disponibile all'indirizzo
http://www.microsoft.com/technet/security/bullettin/ms99-032.asp.
Tuttavia, anche nel caso della posta elettronica, per evitare molte delle vulnerabilità legate alla gestione dei contenuti
interattivi occorre impostare l'area di sicurezza predefinita di Outlook ed Outlook Express sul livello "Area siti con
restrizioni" scegliendo la voce Opzioni dal menù Strumenti e successivamente cliccando sulla scheda Sicurezza.
Caldamente consigliata è inoltre l'applicazione della patch di sicurezza disponibile all'indirizzo
http://officeupdate.microsoft.com/2000/downloadDetails/Out2ksec.html
che rende più difficoltosa (ma non impossibile) per gli utenti l'esecuzione dei file eventualmente allegati ai messaggi di
posta elettronica. Analogamente per la vulnerabilità relativa all'esecuzione di documenti Office tramite ActiveX
esistono due indirizzi utili cui fare riferimento:
http://www.microsoft.com/technet/security/bullettin/MS00-049.asp
http://www.microsoft.com/windows/ie/download/critical/patch11.htm
Infine per il problema degli attacchi attraverso i file scrap possono essere adottati una serie di utili accorgimenti
illustrati all'indirizzo:
http://www.pc-help.org/security/scrap.htm
Per ulteriori informazioni rivolgersi a [email protected]