Un sistema IDS basato sull'host analizza diverse aree per determinare l'uso improprio (attività maliziosa ed illecita all'interno della rete) oppure la presenza di un intruso (violazione dall'esterno). Gli IDS basati sull'host, consultano diversi tipi di file log (kernel, del sistema, del server, della rete, firewall e molti altri) e confrontano le registrazioni con un database interno delle firme comuni per gli attacchi già conosciuti. Gli IDS basati sull'host di UNIX e Linux, usano frequentemente syslog e le sue capacità di separare eventi registrati a seconda della loro severità (per esempio, messaggi secondari della stampante contro l'allerta primaria del kernel). L'IDS basato sull'host filtra le registrazioni (le quali, in alcuni eventi di registrazione di rete o del kernel possono essere un pò lunghi) e analizza i messaggi, rietichettando (re-tag) quelli anomali, con il proprio grado di severità, raccogliendoli nel prioprio file log specializzato per l'analisi dell'amministratore.
Gli IDS basati sull'host possono altresì verificare l'integrità dei dati di file importanti e degli eseguibili. Controlla il database di file sensibili (e di qualsiasi file aggiunti da un amministratore) creando una somma di controllo di ogni file con un message-file della utility di controllo md5sum (algoritmo 128-bit) o sha1sum (algoritmo 160-bit). L'IDS basato sull'host memorizza le somme in un file di testo normale, confrontando periodicamente le somme di controllo del file e i valori presenti nel file di testo. Se una somma di controllo non corrisponde, il sistema IDS avviserà l'amministratore inviando una email oppure tramite un segnale sul cellular pager. Questo processo viene usato da Tripwire, e affrontato nella sezione la Sezione 9.2.1.
Tripwire rappresenta l'IDS basato sull'host di Linux più conosciuto. Tripwire, Inc., gli sviluppatori di Tripwire, hanno recentemente divulgato il codice sorgente del software per la versione Linux, autorizzandone la divulgazione sotto i termini della GNU General Public License. Tripwire è disponibile http://www.tripwire.org/.
![]() | Nota |
---|---|
Tripwire non è incluso con Red Hat Enterprise Linux e non è supportato. È stato incluso in questo documento solo come riferimento agli utenti che possono esserne interessati. |
L'RPM Package Manager (RPM) rappresenta un altro programma che può essere usato come un IDS host-based. RPM contiene diverse opzioni per l'interrogazione dei pacchetti e dei loro contenuti. Queste opzioni di verifica possono avere un grosso valore per un amministratore che sospetta che file critici ed eseguibili siano stati modificati.
Il seguente elenco riporta alcune opzioni per l'RPM da utilizzare per la verifica dell'integrità dei file su di un sistema Red Hat Enterprise Linux. Per maggiori informazioni sull'uso dell'RPM, consultare Red Hat Enterprise Linux System Administration Guide.
![]() | Importante | |
---|---|---|
Alcuni dei comandi riportati nella lista seguente, richiedono l'importazione della chiave pubblica GPG di Red Hat nel keyring dell'RPM del vostro sistema. Questa chiave verifica che i pacchetti installati sul vostro sistema contengano una sigla del pacchetto di Red Hat, la quale assicura che i pacchetti siano stati originati da Red Hat. La chiave può essere importata emettendo il seguente comando come root(sostituendo <version> con la versione dell'RPM installata sul vostro sistema):
|
L'opzione -V verifica i file nel pacchetto installato chiamato package_name. Se non presenta alcun output, ciò significa che tutti i file non sono stati modificati dall'ultima volta che il database dell'RPM è stato aggiornato. Se è presente un errore, come ad esempio
S.5....T c /bin/ps |
allora significa che il file è stato modificato in qualche modo e stà a voi giudicare se mantenere tale file (nel caso dei file di configurazione modificati nella directory /etc) oppure cancellarlo e installare nuovamente il pacchetto che lo contiene. Il seguente elenco riporta gli elementi presenti nella riga a 8-caratteri (S.5....T nell'esempio sopra riportato) che notifica un errore di verifica.
. — Il test ha accettato questa fase di verifica
? — Il test ha trovato un file che non può essere letto, il quale potrebbe trattarsi di un problema inerente un permesso del file
S — Il test ha rilevato un file più piccolo o più grande rispetto a quando lo stesso file è stato installatonel sistema.
5 — Il test ha rilevato un file, la quale somma di controllo md5 non corrisponde alla somma di controllo originale del file, al momento in cui lo stesso file è stato installato.
M — Il test ha rilevato sul file un permesso o un errore nel tipo di file
D — Il test ha rilevato una discordanza del file del dispositivo in un numero maggiore/minore
L — Il test ha trovato un link simbolico che è stato cambiato in un altro percorso
U — Il test ha rilevato un file al quale è stata cambiata la proprietà dell'utente
G — Il test ha rilevato un file al quale è stata cambiata la proprietà del gruppo
T — Il test ha incontrato degli errori di verifica mtime sul file
L'opzione -Va verifica tutti i pacchetti installati, andando alla ricerca di eventuali errori durante i suoi test di verifica (proprio come l'opzione -V ma più lungo nei suoi output dato che verifica ogni pacchetto installato).
L'opzione -Vf verifica i file individuali in un pacchetto appena installato. Questo può essere utile se desiderate effettuare una verifica veloce di un file sospetto.
Lopzione -K è utile per controllare la somma di controllo md5 e la firma GPG di un file del pacchetto RPM. Ciò consente di controllare se il pacchetto che desiderate installare, sia siglato da Red Hat o da qualsiasi organizzazione per la quale avete la chiave pubblica GPG importata nel vostro keyring GPG. Un pacchetto che non è stato siglato correttamente, emetterà un messaggio d'errore simile al seguente:
application-1.0.i386.rpm (SHA1) DSA sha1 md5 (GPG) NOT OK (MISSING KEYS: GPG#897da07a) |
Prestate particolare attenzione quando installate pacchetti non firmati, in quanto essi non sono stati approvati da Red Hat, Inc. e potrebbero contenere dei virus.
RPM può essere un tool molto potente, come si può notare dal vasto numero di strumenti di verifica dei pacchetti installati e dei file del pacchetto RPM. È fortemente consigliato effettuare un backup dei contenuti della vostra directory del database dell'RPM (/var/lib/rpm/) per il media di sola lettura, come ad esempio CD-ROM, dopo aver installato Red Hat Enterprise Linux. Così facendo, sarete in grado di verificare in tutta sicurezza, i file e i pacchetti con il database di sola lettura, invece del database sul sistema, in quanto si potrebbe verificare la sua corruzione da parte di hacker.
Il seguente elenco riporta alcuni intrusion detection system basati sull'host disponibili. Per maggiori informazioni su come installare e configurare i seguenti sistemi, fate riferimento ai website delle rispettive utility.
![]() | Nota |
---|---|
Queste applicazioni non sono incluse e ne supportate in Red Hat Enterprise Linux. Esse sono state incluse in questo documento, solo come riferimento per gli utenti interessati alla loro valutazione. |
SWATCH http://www.stanford.edu/~atkins/swatch/ — Il Simple WATCHer (SWATCH) usa dei file di registrazione generati da syslog, per allertare gli amministratori nel caso in cui si verificano delle anomalie sui file di configurazione dell'utente. SWATCH è stato creato per registrare qualsiasi evento che l'utente desidera aggiungere nel file di configurazione, tuttavia, esso è stato adottato anche come IDS.
LIDS http://www.lids.org — Il Linux Intrusion Detection System (LIDS) è un patch del kernel e rumento di gestione, in grado di controllare la modifica del file con delle access control list (ACL), proteggendo i procedimenti e i file anche da un utente root.