320 likes | 489 Views
Aurora Mazzone, INFN Sezione di Torino Parte Prima. OSSEC HIDS, Host Based Intrusion Detection System. Il progetto. Open source, GPLv3 Principale sviluppatore: Daniel D. Cid, Third Brigade La versione attuale è la 1.6.1 WebUI versione 0.3 Supporto dalla mailing list
E N D
Aurora Mazzone, INFN Sezione di Torino Parte Prima OSSEC HIDS, Host Based Intrusion Detection System
Il progetto • Open source, GPLv3 • Principale sviluppatore: Daniel D. Cid, Third Brigade • La versione attuale è la 1.6.1 • WebUI versione 0.3 • Supporto dalla mailing list • Supporto commerciale dalla Third Brigade
Host based intrusion detection system • analisi dei log in tempo reale • analisi periodica dei file vitali del sistema • ricerca di rootkit • monitoraggio e applicazione delle policy • segnalazione situazioni critiche o anomale via e-mail • active-response • altamente personalizzabile
Sistemi operativi supportati • GNU/Linux • OpenBSD/NetBSD/FreeBSD • Solaris • Mac OS X 10.x • Windows 2000/XP/2003/Vista/2008 (solo agent)
Tipi di installazione • server • local • agent
Server: logging remoto syscheck e rootcheck parsing dei log in tempo reale fino a 256 agent e-mail di notifica Tipi di installazione
Local: Standalone. Tutte le funzioni del server ma no logging remoto no gestione agent Tipi di installazione
Agent: syscheck e rootcheck lato client invio dei log al server (cifrati) active-response Tipi di installazione
script di installazione/aggiornamento interattivo configurazione quasi completa compilazione automatizzata Installazione e configurazione
pre-decoding decoding rules Analisi dei log
Informazioni statiche: hostname nome del programma data/timestamp log Pre-decoding
Informazioni dinamiche: user ip porta azione protocollo url Decoding
decoder.xml/local_decoder.xml: file di configurazione decoder scritti in xml struttura ad albero estrazione di informazioni utili per regole, active-response, fts ottimizzazione Decoding
scritte in xml struttura ad albero match in base a decoder, nome del programma, stringhe, espressioni regolari suddivise in gruppi id univoco livello di gravità personalizzabili Rules
Regole semplici: match all'interno di un messaggio di log generazione dell'alert Rules
Regole composite: correlazione di più eventi in base al tipo di regola, gruppo di cui fa parte, importanza, frequenza, host, user, giorno, ora, etc. Rules
syslog snort-full, snort-fast apache iis squid nampg mysql_log, postgresql_log eventlog djb_multilog Formati di log supportati
Per tutti gli altri tipi di log è possibile scrivere decoder e regole personalizzati. Formati di log NON supportati
configurazione del livello di importanza di un evento in grado di generare l'invio di una mail configurazione granulare dell'invio delle e-mail Alert via e-mail
Configurazione granulare: importanza dell'evento gruppo di regole host di origine / sottorete di origine Alert via e-mail
controllo dei file ricerca di rootkit policy Syscheck e Rootcheck
checksum MD5 di tutti i file specificati controllo periodico e confronto con i valori calcolati alert in seguito ad un cambiamento rispetto al valore iniziale opzioni per non sovraccaricare il sistema durante il controllo Syscheck
frequenza o scan_time/scan_day sospensione per n secondi ogni n file ricalcolati renice del processo disabilitazione dell'auto_ignore (ignorati i file che cambiano spesso) notifica alla creazione di nuovi file Syscheck
Rootkit detection: application level rootkit kernel level rootkit Rootcheck
Application level rootkit: signature Rootcheck
Kernel level rootkit: confronto dei risultati di differenti system call alla ricerca di discrepanze /dev ricerca di file inusuali con permessi inusuali controllo incrociato dei pid in uso vs. output di ps porte nascoste interfacce in modalità promiscua Rootcheck
Policy: applicazioni consentite configurazioni appropriate personalizzabile Rootcheck
Script: reazione in base ad un evento. Blocco temporaneo di un ip, disabilitazione utenti, etc. in base ai valori isolati dai decoder. Active-response
php possibilità di consultare via web l'archivio degli alert selezionandoli per id, tipo, gruppo, importanza statistiche situazione in tempo reale WebUI
ottimo strumento per l'analisi dei log in tempo reale alert immediati in situazioni critiche personalizzabile, può leggere ogni tipo di log gestione centralizzata costanti aggiornamenti community e supporto commerciale Perchè usare OSSEC
documentazione frammentaria, non omogenea ottimizzazione necessaria: falsi positivi, errori generici, formati di log non supportati nativamente fase di apprendimento e personalizzazione Svantaggi: