Barnyard2 è un modo per archiviare ed elaborare gli output binari da Snort in un database MySQL.
Prima di iniziare
Nota che se non hai snort installato sul tuo sistema, abbiamo una guida per l' installazione di snort su sistemi debian . Devi avere snort installato per far funzionare questo sistema.
Aggiorna, aggiorna e riavvia
Prima di mettere effettivamente le mani sulle fonti Snort (S), dobbiamo assicurarci che il nostro sistema sia aggiornato. Possiamo farlo emettendo i seguenti comandi.
sudo apt-get update
sudo apt-get upgrade -y
sudo reboot
Configurazione pre-installazione
Se non hai MySQL installato, puoi installarlo con il seguente comando,
sudo apt-get install -y mysql-server libmysqlclient-dev mysql-client autoconf libtool
Se non si dispone di Snort del sistema di rilevamento delle intrusioni di rete (IDS) installato e configurato, consultare la documentazione relativa all'installazione della documentazione
Installazione di Barnyard2
Per installare Barnyard dobbiamo prendere la fonte dalla pagina github di Barnyard2 .
cd /usr/src
sudo git clone https://github.com/firnsy/barnyard2 barnyard_src
cd barnyard_src
Ora che abbiamo la fonte per il cortile, dobbiamo andare al autoreconfcortile.
sudo autoreconf -fvi -I ./m4
Aggiorna i riferimenti alla libreria di sistema
Una volta finito, devi creare un collegamento simbolico alla libreria dumbnet come dnet.
sudo ln -s /usr/include/dumbnet.h /usr/include/dnet.h
Poiché essenzialmente abbiamo creato una nuova libreria di sistema, dobbiamo aggiornare la cache della libreria di sistema. Questo può essere fatto emettendo il seguente comando:
sudo ldconfig
Configurazione di Barnyard2 per MySQL
Questa parte è importante perché dipende dal fatto che il tuo sistema sia un sistema a 64 bit o un sistema a 32 bit.
Se non si è sicuri del fatto che il proprio sistema sia a 64 bit o 32 bit, è possibile utilizzare uname -mo archper raggiungere questo obiettivo.
cd /usr/src/barnyard_src
./configure --with-mysql --with-mysql-libraries=/usr/lib/YOUR-ARCH-HERE-linux-gnu
Quindi quella configurazione dovrebbe apparire come ./configure --with-mysql --with-mysql-libraries=/usr/lib/x86_64-linux-gnu
make
sudo make install
Copia delle configurazioni
Per impostare correttamente il cortile e farlo funzionare con il nostro sistema, dobbiamo copiare i nostri file di configurazione. Inoltre, tieni presente che durante il test ho dovuto creare la directory di registro per barnyard2, altrimenti l'esecuzione non avrebbe funzionato.
sudo cp etc/barnyard2.conf /etc/snort
sudo mkdir /var/log/barnyard2
sudo chown snort.snort /var/log/barnyard2
sudo touch /var/log/snort/barnyard2.bookmark
sudo chown snort.snort /var/log/snort/barnyard2.bookmark
Creazione del database
Ora che la nostra istanza da cortile è stata per lo più configurata, dobbiamo creare e associare un database alla nostra configurazione.
mysql -u root -p
create database snort;
use snort;
source /usr/src/barnyard_src/schemas/create_mysql
CREATE USER 'snort'@'localhost' IDENTIFIED BY 'MYPASSWORD';
grant create, insert, select, delete, update on snort.* to snort@localhost;
exit;
Configurazione del cortile da utilizzare con MySQL
Nel caso in cui non ti sia capitato di cambiare la password nel comando sopra, puoi reimpostare la password immettendo nuovamente il comando mysql e inserendo
SET PASSWORD FOR 'snort'@'localhost' = PASSWORD( 'MYPASSWORD' );
Nella parte inferiore del /etc/snort/barnyard2.conffile aggiungi quanto segue e modifica la password in base a quanto impostato sopra.
output database: log, mysql, user=snort password=MYPASSWORD dbname=snort host=localhost
Per motivi di sicurezza, dobbiamo bloccare il nostro file barnyard.conf perché contiene la password del database in chiaro.
sudo chmod o-r /etc/snort/barnyard2.conf
analisi
Puoi testare lo snort eseguendolo in modalità di avviso usando il tuo file di configurazione.
sudo /usr/local/bin/snort -q -u snort -g snort -c /etc/snort/snort.conf -i eth0
Una volta che lo snort è in esecuzione, apri un altro terminale e esegui il ping dell'indirizzo di quel sistema, dovresti essere in grado di vedere i messaggi sul tuo terminale principale.
Ora che hai alcuni dati nei tuoi log snort, dovresti essere in grado di testare il cortile contro di esso.
sudo barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.u2 -w /var/log/snort/barnyard2.bookmark -g snort -u snort
Queste bandiere significano sostanzialmente quanto segue.
-c specifies the config file.
-d is the snort output directory
-f specifies the file to look for.
-w specifies the bookmark file.
-u / -g tells barnyard to run as a specific user and group.
Dopo aver avviato il cortile, Waiting for new dataappare una volta che puoi uscire dall'applicazione premendo ctrl + cora per controllare il tuo database MySQL accedendo nuovamente al server MySQL e selezionando tutto dalla eventtabella nel tuo snortdatabase.
mysql -u snort -p snort
select count(*) from event;
Finché il conteggio è superiore a 0 tutto ha funzionato correttamente!
Tuttavia, se il conteggio è 0, probabilmente stai eseguendo il ping del tuo sistema da un sistema che corrisponde a un IP autorizzato. In tal caso, provare a eseguire il ping del sistema dall'esterno della rete e assicurarsi che sia esposto al mondo esterno.
Congratulazioni, ora hai un modo per leggere e tenere traccia delle intrusioni rilevate.