Se si è fisicamente presenti durante l'attacco, la prima risposta dovrebbe essere rimuovere la macchina dalla rete, estraendo la scheda di rete (sempre che ciò non danneggi transazioni commerciali in atto). Disabilitare la rete a basso livello è l'unico vero modo di allontanare l'attaccante dalla postazione presa di mira (saggio consiglio di Philip Hofmeister).
Tuttavia, alcuni strumenti di root e porte segrete possono rilevare questo fatto e reagire: vedere l'esecuzione di un rm -rf / mentre si estrae la scheda di rete dal sistema non è molto piacevole. Se non si volete correre questo rischio e siete sicuri del danneggiamento del sistema, dovreste staccare la spina della corrente (tutte le spine, se sono più di una) e incrociare le dita; può sembrare un rimedio estremo ma di fatto, evita l'azione di qualsiasi bomba-logica programmata dall'intruso. In questo caso, il sistema non deve essere reinizializzato, ma si dovrebbero spostare i dischi fissi su un altro sistema, per analizzarli ed usare un altro supporto (un CD-Rom) per inizializzare il sistema ed esaminarlo. Evitare l'uso di un disco di ripristino Debian per far ripartire il sistema: se si vuole fare l'analisi del sistema, usare la shell fornita dai dischi di installazione (premendo Alt+F2). [36]
L'uso di un file system attivo da CD-Rom, con tutti gli strumenti (e i moduli
del kernel) che possano servire per accedere al sistema danneggiato è il metodo
più consigliabile per tentarne il recupero. Per ottenere tale CD-Rom, si può
usare il pacchetto mkinitrd-cd
. [37]. Potrebbe essere utile anche il Cd-Rom di Biatchux
, visto che è un Cd-Rom
attivo e dotato di strumenti diagnostici utili per questi casi. Non ci sono
ancora né uno strumento come questo basato su Debian, né un modo semplice per
allestire un simile Cd-Rom: per farlo, usando una propria selezione di
pacchetti Debian e mkinitrd-cd
, sarà necessario leggere tutta la
documentazione fornita con questo.
Se si vuole aggiustare il danno in tempi brevi, si deve rimuovere dalla propria
rete la postazione danneggiata e reinstallare da zero il sistema operativo.
Naturalmente, questa potrebbe essere una scelta inefficace, dal momento che non
rivela come l'intruso sia riuscito ad assumere lo status di root; per capirlo,
bisogna controllare tutto: il firewall, l'integrità dei file, la postazione
dedicata alla registrazione dei log, gli stessi file di log e via dicendo. Per
maggiori informazioni sul da farsi mentre si segue un'irruzione, vedete
Sans' Incident Handling Guide
(la Guida di Sans su come affrontare un incidente)
o CERT's Steps for
Recovering from a UNIX or NT System Compromise (Regole del CERT per rimediare a
un danno a sistemi UNIX o NT)
.
Alcune questioni comuni, su come trattare un sistema Debian GNU/Linux danneggiato, sono affrontate in Il mio sistema è vulnerabile! (Ne sei sicuro?), Sezione 11.2.
Si tenga presente che, se si è sicuri che il sistema sia stato danneggiato, non si può fare affidamento sui programmi installati né sulle informazioni restituite: le applicazioni potrebbero essere state infettate da virus trojan, alcuni moduli del kernel poterebbero essere stati installati, ecc.
La miglior cosa da farsi è una copia completa del file system (mediante
dd
), dopo la reinizializzazione da un supporto sicuro. A tal
fine, possono risultare comodi i CD-Rom di Debian GNU/Linux, dal momento che,
iniziata l'installazione, forniscono, nella console 2, una shell raggiungibile
con Alt+F2 e Invio. Da questa, si salvano le informazioni su un altra
postazione, se possibile (magari un server di file di rete, tramite NFS/FTP),
sì da potere svolgere, a sistema interessato non in linea, l'analisi del danno
o la reinstallazione.
Se siete sicuri che la compromissione è avvenuta tramite un trojan installato in un modulo del kernel, potete avviare tramite l'immagine del kernel denominata rescue. Assicuratevi di avviare in modalità single user, per evitare che altri processi trojanizzati si avviino dopo il kernel.
Il CERT (Computer and Emergency Response Team) è un'organizzazione che vi può aiutare a recuperare un sistema compromesso. Ci sono CERT in tutto il mondo [38] e dovreste contattare il vostro CERT nel caso vi capitasse un incidente di sicurezza che compromettesse un sistema. Le persone del vostro CERT vi potranno aiutare a recuperarlo.
Fornendo al vostro CERT (o al CERT coordination center) informazioni sulla
compromissione, anche se non state cercando assistenza, potrete aiutare gli
altri, giacché l'insieme delle informazioni sugli incidenti riportati al CERT è
utilizzata per determinare se una data vulnerabilità è di uso comune, se c'è un
nuovo worm in giro e quali nuovi strumenti di attacco sono utilizzati. Queste
informazioni sono usate per fornire alla comunità di Internet le informazioni
sulla attuale attività sugli
incidenti di sicurezza
, per pubblicare le note sugli incidenti
e
anche gli avvisi
.
Per informazioni più dettagliate leggete come (e perché) fare il rapporto di un
incidente nelle Linee guida sul
rapporto di un incidente
.
Potete anche usare meccanismi meno formali se avete bisogno di recuperare una
compromissione, o se volete discutere sulle informazioni di un'incidente. Ciò
include la mailing
list degli incidenti
e la mailing list delle
intrusioni
.
Se si desiderano maggiori informazioni, il pacchetto tct
("Gli strumenti del patologo", di Dan Farmer e Wientse Venema), oltre
a contenere accessori che fanno l'autopsia del sistema, permette all'utente di
raccogliere dati sui file cancellati, processi in atto e quant'altro (cfr.
documentazione acclusa).
Altri strumenti forniti dalla distribuzione Debian per l'analisi "patologica" sono:
Fenris
.
Strace
.
Ltrace
.
Questi pacchetti possono analizzare i "binari-canaglia" (come le
porte segrete), per stabilire come funzionino e che cosa facciano al sistema.
Altri strumenti comuni comprendono ldd
(in libc6
),
strings
e objdump
(entrambi in
binutils
).
Un'analisi patologica su porte segrete o binari sospetti scoperti su sistemi
danneggiati, dovrebbe essere condotta in ambiente sicuro (per esempio,
un'immagine di tipo bochs
, flex86
o un sistema
sottoposto a chroot
con un utente con privilegi minimi),
altrimenti il sistema può essere a rischio di porte segrete o, peggio,
usurpazione di root.
Inoltre, condurre sempre l'analisi patologica sulla copia di ripristino dei dati, mai direttamente sui dati stessi: in caso di alterazione durante l'analisi, ogni tipo di prova verrebbe perso!
FIXME: Se tutto va bene, in futuro questo paragrafo possa contenere maggiori informazioni sui metodi di diagnosi in un sistema Debian.
FIXME: Bisognerebbe parlare di come creare un archivio di tipo debsums su un sistema stabile, salvando i file MD5sums su CD e ripristinando su una partizione distinta il sistema recuperato.
FIXME: aggiungere indicazioni su scritti riguardanti l'analisi
"patologica", come "the Honeynet's reverse challenge" (La
controsfida della Honeynet) o i saggi di David
Dittirch's
.
Securing Debian Manual
2.97 31 mayo 2004Ven, 3 Ott 2003 22:23:28 +0200jfs@computer.org