1. INTRODUZIONE

Senza alcun dubbio, i costi derivanti dagli attacchi alla rete sono in netta crescita. Secondo il "Computer Crime Survey" ( www.crime-research.org ), una ricerca condotta ogni anno dal Computer Security Institute ( www.gocsi.com ) in collaborazione con l’Fbi, nel 2004 le 494 società esaminate hanno subito danni complessivamente per circa 142 milioni di dollari, con cause che vanno dagli attacchi di tipo denial of service, al furto di informazioni attraverso ad esempio attacchi alle password o intercettazione di pacchetti (packet sniffing), all’abuso delle risorse informatiche con attacchi all'infrastruttura della rete (name server, access provider, etc...) da parte di utenti non privilegiati, e ai guasti provocati dai virus.

La grande maggioranza dei worm e degli altri attacchi che provengono da Internet sono resi possibili dalle vulnerabilità presenti in un numero molto limitato di servizi dei più diffusi sistemi operativi.

Ciò si deve al fatto che coloro che effettuano gli attacchi agiscono in modo opportunistico, ovvero scelgono la strada più semplice e comoda, sfruttando le vulnerabilità più conosciute e impiegando gli strumenti di aggressione più efficaci e diffusi. Contano sul fatto che le organizzazioni spesso non pongono rimedio ai problemi e quindi spesso si conducono attacchi indiscriminati, scegliendo gli obiettivi dai risultati di una serie di scansioni in Internet per rilevare i sistemi vulnerabili.

La facile e distruttiva diffusione di worm come Blaster, Slammer e Code Red, ad esempio, può essere direttamente addebitata allo sfruttamento di vulnerabilità per le quali non sono state tempestivamente applicate le opportune correzioni.

Nel 2001, Il SANS Institute e il National Infrastructure Protection Center (NIPC) presso l'FBI pubblicarono un documento che elencava le dieci vulnerabilità più critiche per la sicurezza in Internet. Da allora migliaia di organizzazioni hanno utilizzato quella lista, e le sue evoluzioni in Venti vulnerabilità diffuse negli anni seguenti, come guida per risolvere rapidamente i buchi di sicurezza più pericolosi.

Il nostro scopo è quello di far conoscere uno strumento per prevenire lo sfruttamento di eventuali vulnerabilità presenti in una rete. Tale strumento è lo scanner di vulnerabilità Nessus.

Nel capitolo 2 parleremo delle vulnerabilità, introducendone il concetto e mostrando alcuni esempi delle vulnerabilità più diffuse. Nel capitolo 3 introdurremo gli scanner di vulnerabilità ovvero gli strumenti veri e propri per individuare le falle dei nostri sistemi al fine di evitarne lo sfruttamento. Nel capitolo 4 presenteremo il Nessus, lo scanner di vulnerabilità più diffuso e funzionale; ne illustreremo i vantaggi e le caratteristiche per poi fornire nel capitolo 5 un esempio pratico del suo utilizzo.

 

2. VULNERABILITA'

La vulnerabilità è la debolezza di un sistema di sicurezza che può essere sfruttata per causare danni. La vulnerabilità di un sistema può essere rappresentata da:

- Disastri naturali
- Errori umani
- Buchi software o hardware
- Attacchi

Vulnerabilità comuni per i client di una rete sono, ad esempio, la presenza di porte NetBIOS aperte per la condivisione di file e stampanti, o programmi non autorizzati come un server Web o in software per la condivisione peer-to-peer dei file.

Vediamo ora alcune tra le principali vulnerabilità dei sistemi operativi.

2.1 Autenticazione di utenti

In quasi tutte le interazioni tra gli utenti e i sistemi informativi vengono utilizzate password, frasi identificative o codici di sicurezza. La maggior parte delle forme di autenticazione, come la maggior parte delle protezioni per file e dati, si basa su password fornite dall'utente. Dal momento che gli accessi correttamente autenticati spesso non vengono registrati, o anche se vengono registrati non lo sono in modo da fornire alcun segnale di allarme, una password compromessa rappresenta un'opportunità potenziale di esplorare un sistema dall'interno senza essere identificati. Un aggressore avrebbe accesso completo a qualsiasi risorsa disponibile per quell'utente e sarebbe molto vicino ad essere in grado di accedere ad altri account, a macchine vicine e forse anche ad ottenere privilegi di amministrazione.

Le più comuni vulnerabilità delle password sono dovute a:

- Account utente senza password o con password deboli.
- Al fatto che, a prescindere dalla robustezza delle password, spesso gli utenti non le proteggono adeguatamente.
- Al fatto che il sistema operativo o il software applicativo creano account di amministrazione con password deboli o privi di password.
- Al fatto che gli algoritmi di hashing delle password sono noti e spesso gli hash vengono memorizzati in modo da essere accessibili a chiunque.

La difesa migliore e la più corretta contro queste vulnerabilità è una solida politica che includa le istruzioni per creare delle buone password e che riassuma i comportamenti corretti per conservarne la riservatezza, unita a una verifica attiva dell'integrità delle password.

2.2 Browser Internet Explorer

Microsoft Internet Explorer (IE) è il web browser installato di serie sulle piattaforme Microsoft Windows. Tutte le versioni esistenti di Internet Explorer presentano vulnerabilità critiche, se non sono mantenute aggiornate con le patch più recenti. È possibile progettare pagine Web che sfruttino queste vulnerabilità sull'Internet Explorer dell'utente che visualizza tali pagine.

Le vulnerabilità possono essere classificate in diverse categorie che comprendono lo spoofing di pagine Web o dell'interfaccia Windows, le vulnerabilità dei controlli ActiveX, le vulnerabilità da Active scripting, l'interpretazione non corretta di MIME-type e di content-type e i buffer overflow. Le conseguenze possono riguardare la rivelazione del contenuto di cookie, file o dati in locale; l'esecuzione di programmi in locale; il download e l'esecuzione di codice arbitrario, fino al controllo completo del sistema vulnerabile.

2.3 Condivisione di rete con NETBIOS

Microsoft Windows fornisce alle macchine host la possibilità di condividere attraverso la rete file o cartelle con altri host tramite le condivisioni di rete. I meccanismi che permettono questa funzione sono il protocollo Server Message Block (SMB) o il Common Internet File System (CIFS). Questi protocolli permettono agli host di operare su file remoti come se risiedessero in locale.
Per quanto questa funzione di Windows sia utile e valida, la configurazione impropria delle condivisioni di rete può mettere in pericolo i file di sistema o può favorire processi che portino utenti o programmi ostili ad ottenere il pieno controllo dell'host. Uno dei metodi tramite i quali il worm I-Worm.Klez.a-h (della famiglia Klez), il virus Sircam (vedi il CERT Advisory 2001-22) e il worm Nimda (vedi il CERT Advisory 2001-26) si sono diffusi così rapidamente nel 2001 era proprio quello di scoprire le condivisioni di rete non protette e di replicarsi in queste. Molti possessori di computer aprono inconsciamente i loro sistemi agli hacker quando vogliono favorire i colleghi o i collaboratori esterni condividendo i loro dischi in lettura e in scrittura per gli utenti della rete. Facendo attenzione quando si configura le condivisione di rete, i rischi possono essere adeguatamente mitigati.

2.4 Condivisione di file Peer-to-Peer

Usando il software P2P si va incontro a un certo numero di vulnerabilità. Queste possono essere raggruppate in tre tipologie: vulnerabilità tecniche, quelle che possono essere sfruttate da remoto; vulnerabilità di condivisione, che possono essere sfruttate alterando o mascherando i contenuti binari che altri richiedono; vulnerabilità legali, che possono derivare da violazioni delle leggi sui diritti d'autore o quelle che non permettono la diffusione di materiale di contenuto deplorevole.

2.5 Altre vulnerabilità

Esistono molte altre vulnerabilità, l'elenco completo delle 20 vulnerabilità più critiche per la sicurezza in internet è reperibile all'indirizzo http://www.datasecurity.it/top20/index.html

 

 

3. SCANNER DI VULNERABILITA'

Per poter identificare le debolezze della propria rete e dei propri sistemi, al fine di evitarne uno sfruttamento da parte di utenti maliziosi, esistono strumenti appositi: gli scanner di vulnerabilità.

Lo scanning delle vulnerabilità è dunque il processo di controllo di tutti i metodi potenziali di attacco, atti a manomettere la rete di un’organizzazione.
Tra gli elementi a rischio che questi software sono in grado di rilevare troviamo le varie vulnerabilità citate nel paragrafo precedente come i bug delle applicazioni, i virus o le politiche troppo deboli per il controllo degli accessi come ad esempio sistemi di autenticazione degli utenti non sicuri, soprattutto nel caso in cui si usano password facilmente identificabili. Gli scanner per la rilevazione delle vulnerabilità sono anche in grado di rilevare le applicazioni configurate in modo non corretto, che possono minare le difese di una rete.

Due passi che ci permettono l'analisi di un sistema su una rete sono il probing sistematico di un server posto in rete e lo scanning.Con il primo possiamo ottenere informazioni sul sistema allo scopo di conoscere le vulnerabilità relative a:

-amministratori e utenti della rete

-posizione del server

-presenza o meno di intranet

-sistemi di rilevamento delle intrusioni

-server dns e sua configurazione

-indirizzi IP assegnati

-eventuale accesso telefonico

Il secondo ci permette di rilevare quali sono le macchine attive e raggiungibili via internet e quali servizi sono disponibili usando tecniche come:

-il ping sweep (utili per rilevare se un determinato host sia attivo o meno)

-il portscanning (processo di connessione a porte TCP e UDP sul sistema nel quale si vuole tentare una penetrazione al fine di determinare quali servizi siano in esecuzione o in stato di LISTENING)

-il rilevamento del sistema operativo tramite stack TCP/IP fingerprinting

I punti deboli di una rete possono essere quindi innumerevoli e nascosti nei servizi e nei sistemi più disparati. Vediamo ora uno scanner di vulnerabiltà, il Nessus, per evitare che questi punti deboli siano sfruttati.

 

 

4. NESSUS

Nessus è un portscanner, ovvero un software che verifica la sicurezza di un sistema tentando di accedervi mediante le porte di uno o più protocolli. Il fine è quello "nobile" di scoprire eventuali debolezze in un sistema ed evitarne lo sfruttamento da parte di utenti maliziosi.

Il progetto Nessus nacque in Francia da Renaud Deraison agli inizi del 1998 ed in soli quattro mesi vide la luce la prima versione. Il suo scopo era quello di colmare un vuoto: non esistevano infatti software gratuiti di questo tipo abbastanza recenti!
Deraison voleva costruire un prodotto che fosse free, open-source, in continua evoluzione. A questi primi obiettivi se ne aggiunse un altro: quello di rendere sicure le trasmissioni sulla rete generate dal programma. Di questo si occupò Jordan Hrycaj. Durante il suo lavoro Deraison riuscì inoltre a corredare il suo prodotto di altre importanti qualità. Ad esempio Nessus non dà niente per scontato: se deve controllare la robustezza della configurazione di un webserver non lo va a cercare alla porta 80, ma le verifica tutte!

Nessus è quindi un progetto che ha come scopo quello di fornire alla comunità uno strumento potente, facile, free per analizzare e scoprire le vulnerabilità di una rete ed evitare la riuscita di eventuali attacchi. E' probabilmente il più completo ed evoluto strumento di vulnerability scanning disponibile nel mondo open source.

4.1 Architettura

4.1.1 Client/Server


Il pacchetto Nessus è formato da due programmi: il client ed il server. Il server (nessusd) è il motore che esegue lo scan vero e proprio, esiste solo in versione Unix-like ed è quindi la parte del pacchetto che offre i servizi: in questo caso un servizio è semplicemente un test, per esempio testare se il servizio FTP è configurato in modo tale da temere qualche attacco. Il client (nessus) è l'interfaccia (disponibile in diversi linguaggi per diversi sistemi operativi) con cui si può configurare una sessione di scan (indirizzi target, tipi di check da eseguire ecc.) da far eseguire sul server. Attraverso il client nessus è possibile impostare gli host (computer) della rete da sottoporre ai test, quali e che tipo di test effettuare, oltre ad altre opzioni (es. dove salvare i risultati, in quale formato, ...). Il client (nessus) e il server (nessusd) possono essere installati nella stessa macchina oppure su macchine diverse. Esistono inoltre client grafici per Windows, Posix/GTK+ (Linux, Solaris, ...) e JAVA.

4.2.2 Plug-in

Nessus presenta una struttura modulare, con dei plug-in che possono essere aggiornati per individuare vulnerabilità recenti. Tale struttura è il punto di forza di Nessus, i plug-in sono veri e propri moduli esterni al progetto originale e ad esso perfettamente integrabili. L'istallazione del pacchetto Nessus fornisce, oltre a client e server, un numero base di plug-in. In qualsiasi momento si possono scaricare dalla rete plug-in aggiuntivi, la loro istallazione si riduce a sistemarli nell'apposita directory.

Sul sito www.nessus.org oltre alla possibilità di scaricare dei nuovi plug-in, il creatore di Nessus ha cercato di costruire quasi una piccola comunità che, ci si augura, faccia crescere sempre di più il progetto Nessus. Sul tale sito infatti si possono trovare varie liste aperte al pubblico ma con la costante supervisione di Deraison. La prima è una lista di bug: chiunque ritenesse di avere scoperto un nuovo bug può segnalarlo alla comunità, fornendo una spiegazione dettagliata del problema. Chiunque volesse scrivere uno script che testi il sistema contro uno dei bug presenti in questa lista, può proporsi come realizzatore. Gli script devono essere scritti in C oppure in NASL (Nessus Attack Scripting Language) un mini linguaggio inventato sempre da Deraison appositamente per scrivere tali test di sicurezza in modo semplice e veloce. I programmi realizzati dall'utenza saranno poi testati e controllati da Renaud Deraison per essere infine resi disponibili a tutti.

Esiste poi un'altra lista di bug, già segnalati, ma per i quali non si realizzerà un plug-in per Nessus, ovviamente per ciascun elemento della lista ci saranno le motivazioni che hanno portato a questa scelta. Infine, esistono le liste dei plug-in attualmente in lavorazione ed ovviamente quella dei plug-in disponibili. La struttura straordinariamente dinamica pensata da Deraison, conferirebbe a Nessus una longevità notevole avvalorata dal fatto che il codice è disponibile a tutti. Tuttavia va osservato che il controllo dei plug-in da parte di Deraison, sebbene necessario a rendere Nessus sicuramente privo di codice malizioso, potrebbe essere vincolante e diventare una delle cause di un futuro abbandono del pacchetto da parte dell'utenza.

4.3 Comunicazioni

Come per qualsiasi software client/server va analizzato il sistema di comunicazione.

Innanzitutto va detto che il server deve girare su una macchina avviata con privilegi di root nel sistema che si intende controllare. Il client, invece, può essere lanciato da qualsiasi macchina in qualche modo connessa alla precedente. Il client può effettuare qualsiasi tipo di richiesta, queste ovviamente verranno eseguite compatibilmente alla topologia della rete! Ovvero, la macchina sulla quale risiede il server di Nessus può effettuare lo scanning solo delle macchine che in qualche modo riesce a raggiungere; inoltre, può effettuare test che richiedono permessi particolari solo sulle macchine presso cui gode di tali permessi.

Client e server comunicano di default sulla porta 3001 del protocollo TCP. Questa impostazione può essere facilmente modificata, indicando al server su quale altra porta TCP mettersi in ascolto. Il traffico generato sulla rete dall'esecuzione di Nessus non è elevato se non nella parte di comunicazione dei risultati. Una volta che il client ha eseguito il login, il server gli invia la lista dei plug-in disponibili, che risulta essere una comunicazione abbastanza leggera, così come la successiva richiesta che il client invierà. Infatti esso dovrà semplicemente indicare quali plug-in desidera siano performati e su quali macchine, indicandone il DNS o l'indirizzo IP. A questo punto il server creerà un thread per ciascuna macchina da controllare. Il nuovo processo si occuperà di effettuare i test richiesti e comunicare al client il costante avanzamento della sua richiesta. Queste informazioni viaggiano sulla rete in modo cifrato e richiedono un flusso di comunicazione continuo. Una volta che il thread ha eseguito il lavoro richiesto, morirà, ed il client potrà fornire all'utente tutti i dettagli dello scanning.

4.4 Cifratura

In principio, non si prevedeva la necessità di fornire un'interazione protetta tra client e server, è per questo motivo che lo strato di cifratura non è visto come parte integrante del software; addirittura è possibile disabilitare questa funzione, anche se fortemente sconsigliato. Il curatore di questo modulo è stato Jordan Hrycaj, il quale ha deciso di adottare lo schema a chiave pubblica El Gamal.

4.5 Caratteristiche di Nessus

In definitiva Nessus presenta le seguenti caratteristiche:

- Supporto CVE ( Common Vulnerabilities and exposures )

- Architettura a plug-in

- Database delle vulnerabilità costantemente aggiornato ( alcuni script vengono rilasciati dallo staff di Nessus poche ore dopo la pubblicazione di un nuovo bug sulle mailing list della sicurezza )

- I nuovi script di test vengono scaricati e installati facilmente ( comando "nessus-update-plugins" )

- E' scritto in C o in NASL ( Nessus Attack Script Language )

- Ricerca intelligente dei servizi ( porte non standard, servizi multipli )

- Test condizionali ( se il servizio web non c'è gli attacchi CGI non vengono lanciati )

- Velocità di esecuzione ( scan in multithread )

- Gratuito e open-source

- Inoltre la comunicazione avviene in maniera Client/Server, dove il sysad è l'utente del server ( amministratore ) il quale stabilisce per ogni untente nome e password. Ogni utente sarà provvisto di una coppia chiave pubblica, chiave privata e l'accesso degli utenti avviene in modo autenticato. Le comunicazioni avvengono in modo cifrato.

 

 

5. ESEMPI DI UTILIZZO DI NESSUS

5.1 Installazione

Il primo passo è quello di installare nessusd (server) e nessus (client). Il software Nessus è reperibile all'indirizzo www.nessus.org . Il nostro test è stato effettuato su una macchina Unix con la distribuzione Linux Suse 8.0 sulla quale abbiamo installato la release Nessus 2.0.

A questo punto dobbiamo settare il server creando un account e poi farlo partire prima di passare al lato client.

5.2 Creazione dell'account nessusd

Il server nessusd ha un proprio database di utenti, quindi bisogna aggiungere un nuovo utente al database del sistema di servizio. Ciascun utente può avere delle restrizioni sul numero delle macchine che può esaminare.

Per creare un nuovo utente utilizziamo il comando

nessusd -P username,passwd.

Per verificare che tutto è andato bene scriviamo

nessusd -L

Possiamo adesso aggiungere un nuovo utente che può eseguire il Nessus con delle regole utilizzando l'utility

nessus-adduser

# nessus-adduser

Addition of a new nessusd user
------------------------------

Login : rafmax
Authentication (pass/cert) [pass] : pass
Password : secret

User rules
----------
nessusd has a rules system which allows you to restrict the hosts
that renaud2 has the right to test. For instance, you may want
him to be able to scan his own host only.

Please see the nessus-adduser(8) man page for the rules syntax

Enter the rules for this user, and hit ctrl-D once you are done :
(the user can have an empty rules set)

//deny 127.0.0.1
accept 127.0.0.1
default deny

Login : rafmax
Password : secret
DN :
Rules :

//deny 127.0.0.1
accept 127.0.0.1
default deny


Is that ok (y/n) ? [y] y

user added.

Abbiamo quindi registrato un utente di nome rafmax che ha il permesso di eseguire il nessus
solamente sul propio sistema quindi se rafmax è l'amministratore, ha il permesso di
fare uno scan dettagliato sul propio sistema per trovare possibbili bug.

5.3 Configurazione del nessus-daemon

Una volta settato il tutto possiamo lanciare il nessus-daemon così da passare subito dopo al
lato client.
Il file di configurazione del nessus-daemon è di default /usr/local/etc/nessus/nessus.conf. Non sono necessarie particolari modifiche per far funzionare un Nessus compilato con le opzioni di default, in ogni caso fra i parametri configurabili, oltre a PATH vari, ci sono alcune impostazioni sul numero di test simultanei da eseguire, sul range di porte su cui fare lo scan nonchè sui settaggi utilizzati per il canale criptato fra client e server.

E' possibile avviare il nessusd come root attraverso il comando

nessusd -D

5.4 Configurazione del client

Possiamo adesso finalmente avviare il client scrivendo in una consolle nessus

Apparirà così la schermata di dialogo

 

 

 

Inseriamo l'indirizzo dell'host su cui è in funzione il nessusd-server e la porta su cui è in ascolto (3001 per default).

 

 

 

 

Eseguiamo il login con relativa password cliccando sul bottone "Log in".

Configurazione del controllo di sicurezza

 

 

 

E' possibile scegliere i vari test a cui siamo interessati. Ogni test utilizza un diverso plugin.

 

 

 

 

 

 

Cliccando sul plugin nel pannello sottostante appare una breve descrizione di cosa fa il plugin selezionato.

Preferenze del plugin

Questa schermata può essere utilizzata per modificare il comportamento di default di un plugin. E' possibile inoltre specificare informazioni addizionali in modo che il controllo e la revisione siano più completi.

Scan options

 

In questa schermata è possibile settare:

-il range di porte da controllare

 

-il numero di host da visionare contemporaneamente

-il numero di plugin da utilizzare contemporaneamente contro un singolo host

 

Target selection

 

 

In questa schermata vengono settati gli indirizzi degli host che vogliamo controllare. E' possibile utilizzare differenti scelte per definire gli indirizzi obbiettivi:

 

10.163.156.1 un solo indirizzo IP

10.163.156.1-254 una serie di indirizzi IP

10.163.156.1-10.163.159.254 un'altra serie di indirizzi IP

10.163.156.1/24 ancora una serie di indirizzi IP in notazione CIDR

hope.fr.nessus.org un hostname in notazione Full Qualified Domain Name

hope un hostname

prof, 10.163.156.0/24, ... una combinazione delle forme menzionate sopra separate da una virgola

Rules section

 

 

 

Rules permettono ad un utente di restringere il suo test. Ad esempio vogliamo esaminare gli indirizzi 10.163.156.1/24 eliminando dalla scansione l'indirizzo 10.163.156.5

A questo punto è possibile avviare la scansione cliccando sul bottone "Start the scan"

 

 

 

 

 

 

 

 

 

Rapporto

Dal rapporto risulta che su 10 host controllati sono stati trovati:

54 buchi di sicurezza

303 warning

113 security note

Considerare che:
- Nessus non è stato pensato come tool per hacker.
- Alcune segnalazione di warning o alert si basano o su assunzioni relativamente paranoiche o su condizioni che di fatto non esistono sul server interessato ("falsi positivi").
- Studiare i report di Nessus e le descrizioni sui buchi trovati è un buon metodo per iniziale a familiarizzare con il mondo variegato dei "Security Alert", che spesso oltre a descrivere il buco trovato, indicano le soluzioni su come correggerlo.
- E' bene abituarsi a lanciare regolarmente un Nessus con i plugin aggiornati sui propri server.


GLOSSARIO

ACCESS PROVIDER Fornitore di accesso a Internet (tramite la connessione fisica con un host di Internet).
API Application to program interface. Software che consente la comunicazione tra programmi altrimenti incompatibili.
ACTIVEX Sistema di programmazione di Microsoft per il Web; consente di creare effetti particolari sulle pagine Web.
BROWSER Programma necessario per navigare lungo la World Wide Web.
BUFFER Memoria RAM dedicata ad immagazzinare dati per il successivo utilizzo. Viene utilizzata quando bisogna aspettare l'esecuzione di una periferica più lenta (es. stampante), per immagazzinare i risultati di un comando o di un' elaborazione, per conservare copia di dati che potrebbero servire di nuovo, oppure per non appesantire la memoria RAM del sistema.
BUFFER OVERFLOW Errore che si verifica quando il dato da memorizzare occupa uno spazio più grande rispetto a quello che può contenere il buffer.
BUG Cattivo funzionamento di un programma.
CGI Common Gateway Interface: programmi, scritti in Perl, che consentono ai siti Internet di elaborare i dati inseriti dall'utente. Sono utilizzati, ad esempio, per effettuare ricerche, interrogazioni di database, invio di moduli… La programmazione in Perl è complessa, ma sono disponibili per essere scaricati da Internet molti programmi CGI già pronti.
COMPUTER CRIME SURVEY indagine annuale condotta e pubblicata dal CSI
COMPUTER SECURITY INSTITUTE Organizzazione che forma i professionisti di informatica sul tema della sicurezza dei sistemi
CONTENT-type Funzionalità di un software di controllo automatico della posta elettronica. Utilizzando una tabella di parole chiave sui nomi dei file e dei messaggi od il loro contenuto, può bloccare l'inoltro o l'ingresso di messaggi e/o di file allegati.
Utilizzando una tabella di indirizzi, può bloccare i messaggi e/o i file allegati da loro provenienti od a indirizzati.
Oltre che bloccati, i messaggi ed i file intercettati possono essere automaticamente inviati ad un determinato indirizzo per il controllo manuale.
CRACKER Cracker è una persona che penetra all'interno delle reti di computer network elude le password o le licenze all'interno dei programmi; o in altri modi infrange la sicurezza dei computer. Un cracker può farlo per profitto, per cattiveria, per una causa, con motivazioni altruistiche o per sfida. Il cracker è quello che i giornalisti definiscono erroneamente un hacker ed i veri hacker non gradiscono questa confusione.
CVE Catalogazione di codici corrispondenti alle vulnerabilità più importanti di un sistema.
DENIAL OF SERVICE impedimento dell'uso delle risorse da parte degli utenti non autorizzati (sovraccaricamento da parte di un utente malizioso del sistema con richiesta di servizi)
DNS Domain Name System. Sistema d'identificazione di Internet basato sull'assegnazione di nominativi alfabetici.
FINGER
Servizio Internet. Fornisce informazioni sulla macchina o sull'utente richiesto compatibilmente con quanto messo a disposizione dall'agente interrogato.
FINGERING
L'atto di effettuare il Finger
FTP Servizio Internet. File Transfer Protocol è il protocollo che permette il trasferimento di files di dati.
HACKER Un termine che sta significare "un abile programmatore" ma che molti, specialmente i giornalisti usano per indicare "qualcuno che cerca di entrare nei sistemi informatici."
Un "good hack" è una brillante soluzione ad un problema di programmazione e "hacking" è il verbo.
HOST
Ospite. Computer della rete che ospita risorse e servizi disponibili ad altri sistemi.
INDIRIZZO IP
Numero di 4 byte identificativo di una macchina su internet.
INTRANET Rete in tutto simile (hardware e software) a quella Internet, ma con accesso riservato agli impiegati di una azienda dalle diverse sedi.
IP
Internet Protocol. Uno dei principali protocolli di comunicazione su Internet.
LISTENING
Dicesi di una porta o di un servizio. Il servizio è su quella porta in attesa di richieste da eseguire.
MAILING LIST Metodo di comunicazione in cui un messaggio e-mail inviato ad un sistema viene inoltrato automaticamente ad una lista di destinatari interessati ad un dato argomento.
MIME Estensione del normale protocollo di posta elettronica, che originariamente era stato progettato per trasmettere solamente messaggi in ASCII puro. Consente l'invio di messaggi con formattazioni del testo, inserti HTML, grafici, audio, video, multimediali, oltre che in linguaggi che usano caratteri diversi da quelli occidentali (es: lingue orientali, arabe, cirilliche...)
E' descritto nelle RFC 1521 e 1522, proposto da Nathan Borenstein nel 1991.
Un particolare blocco di dati, che viene inserito dal server all'inizio del messaggio, descrive il MIME adottato; alla ricezione, questa informazione consente al browser di visualizzare correttamente il messaggio o il file allegato.
NAME SERVER Server che effettua la traduzione di un indirizzo di rete in formato testuale nel corrispondente indirizzo numerico.
NETBIOS

Network Basic Input/Output System. E' una API che puo' essere utilizzata dalle applicazioni in una rete locale (LAN). E' stata inventata da IBM per le sue prime reti di PC ed e' stata poi adottata da Microsoft divenendo di fatto uno standard industriale.

 

OPEN SOURCE

Open source (sorgente aperta) non significa semplicemente accesso al codice sorgente. La distribuzione in termini di programmi open-source deve soddisfare i seguenti criteri:

1. Ridistribuzione Libera e Gratuita

2. Codice Sorgente

3. Prodotti Derivati

4. Integrità del Codice Sorgente dell'Autore

5. Nessuna Discriminazione contro Persone o Gruppi

6. Nessuna Discriminazione contro Campi d'Applicazione

7. Distribuzione della Licenza

8. La Licenza non deve essere Specifica a un Prodotto

9. La Licenza non deve Porre Vincoli su Altro Software

PACKET SNIFFING

intercettamento (cattura) di pacchetti che viaggiano lungo la rete.

PEER-TO-PEER (1)In generale, il peer to peer (P2P) e' un modello di comunicazione nel quale ciascuna delle parti ha le stesse funzionalita' e ognuna delle parti puo' iniziare la sessione di comunicazione, in contrasto con altri modelli come il server/client o il master/slave. In alcuni casi, la comunicazione P2P viene implementata dando ad ognuno dei nodi di comunicazione le funzionalita' di server e client. Nel linguaggio corrente il termine Peer to Peer viene usato per descrivere le applicazioni con le quali gli utenti possono, attraverso Internet, scambiarsi direttamente files con altri utenti.
(2)In particolare, per quanto riguarda Internet, P2P e' un tipo di network transiente che permette ad un gruppo di persone con lo stesso programma, di connettersi e accedere direttamente alle risorse condivise. Napster, Gnutella, Kazaa e altri sono esempi di tali software.
PING
Servizio Internet. Riesce a determinare se una macchina è o meno on line.
PING SWEEP
Fa una scansione di un range di indirizzi IP e informa quali di questi sono in uso e quali no.
PLUG-IN Software accessorio che aggiunge determinate funzioni ai programmi, ad esempio ai programmi di grafica od ai browser. Nei programmi di grafica i plug-in possono consentire l'uso di determinate periferiche, oppure l'esecuzione sull'immagine di effetti e di elaborazioni, di applicazioni di filtri. Ad un browser consentono funzioni come la visualizzazione di video, il collegamento con telecamere in diretta, l'ascolto di musica, il dialogo a voce fra più utenti, ed altro durante la visualizzazione delle pagine Internet.
PORTA
Elemento di comunicazione su un protocollo.
ROOT
In un sistema unix-like indica l'utenza principale: l'amministratore del sistema
SNIFFER Programma che cattura pacchetti in una rete di computer.
SPOOFER "Spoof" era un gioco d’inganni e di misteri inventato prima del 1884 dal commediografo Inglese Arthur Roberts. Nell’era di Internet uno spoofer è una persona che falsifica dati e protocolli con l’intento di apparire un’altra persona o per accedere a luoghi altrimenti a lui vietati.
SPOOFING L'azione di camuffamento effettuata dello spoofer.
SYSAD
System Administrator. Amministratore di sistema.
TCP
Transfer Control Protocol. B20Uno dei principali protocolli di comunicazione su Internet.
THREAD Una sequenza indipendente di operazioni ed eventi. Un processo è composto da uno o più thread. Tutti i thread di un processo condividono la memoria allocata inizialmente al processo.
TCP/IP
Coppia di protocolli utilizzati per ottenere un tipo di collegamento connection-oriented (e quindi affidabile) su Internet.
UDP
User Datagram Protocol. Un'alternativa meno affidabile al TCP
VIRUS programmi che penetrano in un programma ospite modificandolo sia per riprodursi sia per danneggiare dati e/o programmi
WORM Virus informatico che si diffonde in rete danneggiando risorse e dati.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

RIFERIMENTI

www.nessus.org sito ufficiale Nessus

www.datasecurity.it

www.sans.org

www.crime-research.org

www.gocsi.com

 

Bibliografia

Chris Brenton, Cameron Hunt, Active Defense, editore Jackson Libri 2003

Littlejhon Shinder Debra, Networking, editore Jackson Libri 2003