Gli eventi non previsti dai processi e dalle applicazioni possono essere registrati nei log con un messaggio generico o, addirittura, non essere registrati affatto. Ecco il motivo dell'importanza di usare un
IDS (Instrusion Detection Systems), ovvero sistemi di rilevazione delle intrusioni. Un
IDS basato sull'host può segnalare cambiamenti inaspettati nei più importanti file di sistema, controllando delle
checksum memorizzate.
Un hacker potrebbe introdursi in un Web server, che abbia in esecuzione solamente
Apache e OpenSSH aggiornati, sostituendo il binario
ps con uno da lui creato per nascondere i processi e aggiungere un nuovo servizio eseguito dal binario
| bin | crond_ (l'underscore indica uno spazio intenzionale, che fa passare come normale e attendibile un processo in un elenco di processi in esecuzione e un normale binario in un elenco di cartelle). Il processo
crond_ potrebbe così raccogliere gli username e le password e conservarle in un file di testo nella directory
| dev | pf0 | | (prima 5 e poi 2 spazi), che contiene anche una shell di root. Le probabilità di trovare e identificare questa intrusione sarebbero quasi nulle se non è in esecuzione
Tripwire, a cui è dedicata questa serie di articoli. Esso è un controllore dell'integrità dei file per sistemi operativi basati su UNIX | Linux e funziona in maniera eccellente come sistema di rilevamento delle intrusioni, anche se non può prevenirle.
L'idea di fondo di
Tripwire è semplice: per prima cosa esso crea un archivio “di base” dello stato dei file e delle directory sul sistema e poi ad ogni avvio successivo effettua una comparazione dello stato corrente dei file e delle directory con la base, identificando qualsiasi cancellazione, aggiunta o cambiamento. I file e le directory da controllare sono decise in base a un file di regole. Questo file definisce anche quali attributi comparare; questi includono accessi,
inode e
timestamp delle modifiche, ID del proprietario e del gruppo, permessi, dimensione e tipo di file, valori di hash
MD5 e
SHA, ecc.
Il metodo più semplice per installare
Tripwire è usare un pacchetto disponibile in
Fedora Core,
SuSE,
Mandrakesoft e
Debian. Il vantaggio di usare questo pacchetto è che il file delle regole sarà già creato e configurato per il sistema che si usa. Bisogna assicurarsi di usare pacchetti ufficiali per la distribuzione per essere certi che non ci siano
trojan. Se non si riesce a trovare un pacchetto precompilato per la distribuzione usata, si può scaricare l'ultimo codice sorgente da
SourceForge.net. Nel prossimo articolo analizzeremo i file di configurazione e di regole di questo controllore.