Monitoriamo il Sistema: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
(piccoli aggiustamenti)
m (riformattazione)
 
(8 versioni intermedie di 5 utenti non mostrate)
Riga 1: Riga 1:
{{Versioni compatibili|Squeeze|Wheezy|Jessie}}


== Introduzione ==
Come facciamo a scoprire se veniamo infettati da un RootKit?
Con il checksum dei binari di sistema, in questa guida vedremo come fare.
Partiamo dal presupposto che per poter mettere in atto quanto diremo da qui in poi abbiamo bisogno o di una macchina con sistema operativo appena installato o dobbiamo essere sicuri al 300% che la nostra macchina non sia compromessa.
Partiamo con lo scaricarci uno di questi due software: AFICK AIDE (si veda fondo pagina per i link).
== Configurazione ==
Il bello di questi programmi e che oltre che calcolare il checksum dei binari , possono controllare gli accessi, i permessi, il numero di link simbolici e tanto altro ancora, per questa guida io mi baserò su AFICK, a noi interessa il file <code>afick.pl</code> e <code>afick.conf</code> il suo file di configurazione.<br/>
Mettiamo questi due file in <code>/root</code> e prepariamoci per modificare il file di configurazione, per esempio:
<pre>
# esempio di file di configurazione
database:=./afick
warn_dead_symlinks := yes
exclude_suffix := wav WAV mp3 avi
=/ d+i+p+u+g
=/bin p+n+b+m+c+md5
=/sbin p+n+b+m+c+md5
=/usr/sbin p+n+b+m+c+md5
=/usr/bin p+n+b+m+c+md5
</pre>
dopo aver controllato che la prima riga di <code>afick.pl</code> contenga la locazione precisa dell'eseguibile Perl, possiamo passare a inizializzare il database dei nostri binari,digitiamo da console quanto segue:
<pre>
# ./afick.pl -c afick.conf -i
</pre>
bene, così abbiamo creato il nostro database di sistema.
== Test di funzionamento ==
Ora facciamo passare un po' di tempo e poi controlliamo come va.
<pre>
# ./afick.pl -c afick.conf -k
</pre>
se non abbiamo modificato nessun binari inserito nel file di configurazione dovrebbe apparirci in risposta dal programma:
<pre>
Hash Database : numero file scanned 0 changed ecc
</pre>
bene ora proviamo a modificare qualche file, banalmente:
<pre>
# touch /sbin/lilo
# ln-s /sbin/sulogin /usr/sbin/sulogin
</pre>
ora rieseguiamo il controllo come prima, questa volta in risposta avremmo:
<pre>
new symbolic link : /usr/sbin/sulogin
changed file : /sbin/lilo
changed directory :/usr/sbin
</pre>
seguito dai dettagli delle varie operazioni compiute.
Dal momento che sappiamo che queste modifiche le abbiamo fatte noi, ora dobbiamo riaggiornare il database:
<pre>
# ./afick.pl -c afick.conf -u
</pre>
ora sappiamo usare il nostro Monitor di sistema.
Un consiglio che mi sento di darvi è di aggiungere un controllo al db tramite [[Cron]], in base all'uso della macchina, ogni giorno o ogni 2 ore, vedete voi.
==Non è finita qui==
Credete che questo basti, invece no. Pensate un momento se un hacker riuscisse a penetrare il vostro sistema; anche se il nostro db fosse conservato in una partizione apposita read-only, se l'hacker riuscisse a guadagnare l'accesso come [[root]] potrebbe rimontare la partizione in r/w e compromettere il nostro db, quindi come fare diciamo che sarà la base per un prossimo articolo e si chiama RFC e GRSEC
==Link==
* http://afick.sourceforge.net
* http://www.cs.tut.fi/~rammer/aide.html
Un consiglio scaricate pure chkrootkit e utilizzatelo insieme a Cron e al tool per il controllo da voi scelto.
* http://www.chkrootkit.org
{{Autori
|Autore = [[Utente:TheNoise|TheNoise]]
}}
[[Categoria:Monitoraggio]]

Versione attuale delle 09:12, 17 apr 2016

Edit-clear-history.png Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.

Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione.


Debian-swirl.png Versioni Compatibili

Debian 6 "squeeze"
Debian 7 "wheezy"
Debian 8 "jessie"

Introduzione

Come facciamo a scoprire se veniamo infettati da un RootKit? Con il checksum dei binari di sistema, in questa guida vedremo come fare.

Partiamo dal presupposto che per poter mettere in atto quanto diremo da qui in poi abbiamo bisogno o di una macchina con sistema operativo appena installato o dobbiamo essere sicuri al 300% che la nostra macchina non sia compromessa.

Partiamo con lo scaricarci uno di questi due software: AFICK AIDE (si veda fondo pagina per i link).

Configurazione

Il bello di questi programmi e che oltre che calcolare il checksum dei binari , possono controllare gli accessi, i permessi, il numero di link simbolici e tanto altro ancora, per questa guida io mi baserò su AFICK, a noi interessa il file afick.pl e afick.conf il suo file di configurazione.
Mettiamo questi due file in /root e prepariamoci per modificare il file di configurazione, per esempio:

# esempio di file di configurazione
database:=./afick
warn_dead_symlinks := yes
exclude_suffix := wav WAV mp3 avi
=/ d+i+p+u+g
=/bin p+n+b+m+c+md5
=/sbin p+n+b+m+c+md5
=/usr/sbin p+n+b+m+c+md5
=/usr/bin p+n+b+m+c+md5

dopo aver controllato che la prima riga di afick.pl contenga la locazione precisa dell'eseguibile Perl, possiamo passare a inizializzare il database dei nostri binari,digitiamo da console quanto segue:

# ./afick.pl -c afick.conf -i

bene, così abbiamo creato il nostro database di sistema.

Test di funzionamento

Ora facciamo passare un po' di tempo e poi controlliamo come va.

# ./afick.pl -c afick.conf -k

se non abbiamo modificato nessun binari inserito nel file di configurazione dovrebbe apparirci in risposta dal programma:

Hash Database : numero file scanned 0 changed ecc

bene ora proviamo a modificare qualche file, banalmente:

# touch /sbin/lilo
# ln-s /sbin/sulogin /usr/sbin/sulogin

ora rieseguiamo il controllo come prima, questa volta in risposta avremmo:

new symbolic link : /usr/sbin/sulogin
changed file : /sbin/lilo
changed directory :/usr/sbin

seguito dai dettagli delle varie operazioni compiute.

Dal momento che sappiamo che queste modifiche le abbiamo fatte noi, ora dobbiamo riaggiornare il database:

# ./afick.pl -c afick.conf -u

ora sappiamo usare il nostro Monitor di sistema.

Un consiglio che mi sento di darvi è di aggiungere un controllo al db tramite Cron, in base all'uso della macchina, ogni giorno o ogni 2 ore, vedete voi.

Non è finita qui

Credete che questo basti, invece no. Pensate un momento se un hacker riuscisse a penetrare il vostro sistema; anche se il nostro db fosse conservato in una partizione apposita read-only, se l'hacker riuscisse a guadagnare l'accesso come root potrebbe rimontare la partizione in r/w e compromettere il nostro db, quindi come fare diciamo che sarà la base per un prossimo articolo e si chiama RFC e GRSEC

Link

Un consiglio scaricate pure chkrootkit e utilizzatelo insieme a Cron e al tool per il controllo da voi scelto.




Guida scritta da: TheNoise Swirl-auth20.png Debianized 20%
Estesa da:
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized