Come verificare manualmente i rootkit su un server

9

Qualcuno ha un elenco generale passo dopo passo su come provare a rilevare i rootkit su un server Linux o Solaris?

Sto cercando di trovare manualmente il rootkit, non con un software automatico.

Ad esempio:

  • Luoghi in cui cercare file sospetti?
  • Cerca i comandi per capire il comportamento strano dei file?
  • Il traffico di strano interesse è stato rilevato dallo sniffer?
  • Verifica l'integrità dei file su comandi importanti per sapere se puoi fidarti o meno?
posta Chris Dale 06.06.2011 - 16:05
fonte

3 risposte

8

Does anyone have a general step by step list on how to try discover rootkits on a Linux or Solaris server?

Fase 1: scollegare la macchina in questione da tutti i canali di comunicazione: Ethernet, WiFi, Bluetooth, seriale, Firewire, USB, cavo audio, infrarossi, parallelo. Solo il cavo di alimentazione, il cavo della tastiera e il cavo del monitor devono rimanere collegati. Verificare le emissioni RF con un analizzatore di spettro RF calibrato. Procedi solo quando hai verificato la disconnessione della comunicazione.

Secondo set: se il sistema ha un'unità CD-ROM o DVD-ROM ed è in grado di avviarsi dal CD-ROM, su un sistema clean clean preparare un CD-ROM di attacco RAM di avvio a freddo. Altrimenti, procedi al passaggio tre. Strumenti disponibili gratuitamente per l'attacco a freddo: msramdump e Princeton .

Fase tre: se hai preparato un disco di attacco per avvio a freddo nel Passaggio due non spegnere la macchina . Disconnettere il / i disco / i rigido / i. Poiché ogni unità è scollegata, etichettala con un'etichetta colorata. Sull'etichetta scrivi 'Infected', l'ora e la data, il nome del sistema da cui è stato rimosso. Inserisci ogni unità in un contenitore di archiviazione appropriato.

Fase quattro: se non hai preparato un disco di attacco per avvio a freddo nel passaggio due, fai prima il passaggio sei. In caso contrario, inserire il disco di attacco di avvio a freddo e riavviare la macchina. Cattura il contenuto della RAM e salvalo su CD-R o DVD-R. Assicurati di finalizzare il disco per ogni registrazione. Dopo aver salvato il contenuto della RAM, spegnere la macchina.

Fase 5: su una macchina separata, nota bene, analizzare il dump della RAM. Verifica la presenza di firme in formato file eseguibile. Controlla le firme dei virus. Confronta con un dump di una macchina funzionante con lo stesso sistema operativo.

Fase 6: sul sistema di analisi disabilitare qualsiasi automount, autoplay, plug and play o qualsiasi servizio che agisce sul rilevamento di una nuova unità. Verificare che il sistema non intraprenda alcuna azione sul nuovo allegato di unità collegando una buona unità nota dello stesso tipo di connettore fisico delle unità del sistema infetto. Se il sistema infetto ha unità di più di un tipo di connessione fisica, quindi testare il sistema di analisi con un'unità nota per ogni tipo di connettore fisico. Se sono presenti più unità, collegare una sola unità alla volta alla macchina di analisi. Creare un'immagine di ciascuna unità e quindi archiviare le unità in contenitori appropriati.

Passaggio sette: iniziare l'analisi sull'immagine del disco di avvio principale. Utilizzando l'analisi statica, controlla la sequenza di avvio. Esegue l'analisi binaria differenziale sui componenti di inizializzazione del sistema operativo primario, tra cui la struttura dei meta-dati dei file e l'ordine di creazione.

Fase 8: iniziare l'analisi delle librerie di sicurezza critiche.

Passo 9: Inizia l'analisi degli strumenti di amministrazione del sistema, dei registri e dei file di configurazione.

Passo 10: Inizia l'analisi di servizi e demoni.

Step undici: Inizia l'analisi delle applicazioni.

Fase 12: iniziare l'analisi dei file utente e dei file rimanenti.

Places to look for suspicious files?

Ogni file dovrebbe essere considerato sospetto finché non avrai verificato che non lo è.

Search commands to pick up weird file behavior?

Nessun comando dovrebbe essere eseguito su una macchina potenzialmente compromessa. Non appena si sospetta che un sistema possa essere compromesso, dovrebbe essere disconnesso per tutti i canali di comunicazione. Se il sistema non è un candidato per un attacco di avvio a freddo sulla RAM, allora dovrebbe essere spento immediatamente e il cavo di alimentazione rimosso.

Weird looking traffic picked up from sniffer?

Nessun traffico dovrebbe essere inviato o ricevuto su una macchina potenzialmente compromessa.

Checking file integrity on important commands in order to know if you can trust it or not?

L'integrità del file può essere verificata su un computer di analisi utilizzando le immagini di unità di sola lettura se si dispone di un database di integrità file noto. Ogni file nel database dovrebbe essere controllato.

    
risposta data 16.07.2011 - 03:57
fonte
14

Il numero di opzioni per luoghi da nascondere, luoghi da agganciare ecc. è così vasto che qualsiasi elenco passo passo per il controllo manuale sarà incompleto.

E, naturalmente, c'è tutta un'altra storia di rootkit del kernel, che lascia una piccola quantità di tracce nel sistema, che di solito possono essere scoperte con analisi forense se implementate correttamente.

Quello che chiedi è semplicemente sbagliato: anche se inizi a elencare le cose da controllare, sarà molto fuorviante per chiunque lo legga. La scommessa migliore per l'utente medio consiste nell'utilizzare strumenti come chkrootkit e rkhunter, che sebbene siano incompleti e facilmente aggirabili, contengono la 'lista di cose da controllare' che chiedi e la analizzi in modo automatico.

Disclosure: la mia precedente area di ricerca riguardava i rootkit e in passato ho sviluppato vari rootkit e software di rilevamento dei rootkit per piattaforme Linux.

    
risposta data 06.06.2011 - 16:42
fonte
2

Questa domanda presuppone tutte le informazioni sbagliate. Prima di tutto, devi sapere di cosa fidarti prima di entrare in un'indagine su rootkit. Se non si dispone di potenti supporti di sola lettura o di sola scrittura che funzionano correttamente per i giusti motivi, non si può semplicemente fidarsi del monitoraggio dell'integrità dei file (questi dovrebbero essere compilati staticamente su CDR o materiale SD protetto da blocco). I registri devono essere scritti su unità WORM.

Gli analizzatori di memoria tramite LKM come 99lb sono disponibili da anni. Negli ultimi 4-5 anni, questi si sono spostati verso l'hypervisor. Troppe ricerche sono state fatte in questo settore per descriverlo in un unico post. Tuttavia, sembra che la direzione di virtualizzazione del server VMware sia basata sulla tecnologia proprietaria VShield. VMware abbandonerà l'API VMsafe in breve tempo. Le implementazioni / ricerche open source possono essere trovate in XenAccess e InvisibleThings .

Se desideri un elenco di controllo, potrebbe essere necessario consultare il libro Toolkit DVD per analisi forense Unix e Linux .

    
risposta data 10.06.2011 - 22:09
fonte