Rilevamento di modifica della tabella delle chiamate del sistema kernel Linux 3+ [chiuso]

1

C'è qualche strumento disponibile che può controllare la tabella delle chiamate di sistema del kernel 3+ per le modifiche?

Voglio anche sapere, c'è qualche strumento generale automatizzato per controllare Linux per rootkit sconosciuti? Non come rkhunter ecc. Che è principalmente basato sulla firma, voglio qualcosa come GMER per Linux, verificare le modifiche al codice, i ganci del kernel, i ganci delle funzioni, ecc.

    
posta JustACPPFan 19.04.2014 - 19:43
fonte

1 risposta

3

È impossibile rilevare le modifiche del kernel dall'interno del sistema. Qualunque sia il rivelatore di rootkit che usi, il rootkit può essere programmato per mentirti. Se qualcuno controlla il tuo kernel, controlla il tuo sistema, non tu, fine della storia. Anche GMER soffre di questo difetto, è intrinseco nel principio operativo: trova solo rootkit che non sono bravi a nascondersi.

È possibile rilevare le modifiche del kernel dall'esterno. Una tecnologia comune a tale scopo è un TPM , che è un componente hardware. È un po 'più complicato di "controllare la tabella delle chiamate di sistema per le modifiche" perché la tabella delle chiamate di sistema è solo una piccola parte del kernel, una modifica in qualsiasi altro luogo può avere conseguenze di portata simile. TPM funziona eseguendo un'istantanea del sistema di volta in volta e confrontando queste istantanee con un'istantanea di riferimento. Il TPM memorizza solo gli hash, non l'intera immagine di memoria, quindi le istantanee devono corrispondere bit per bit. Il caricamento dei moduli cambia il kernel, quindi è necessario avere un set fisso di moduli e una versione del kernel fissa.

Rilevare una modifica del kernel è utile solo se c'è un posto dove segnalarlo. Il TPM non può dirlo all'utente, perché non ha un'interfaccia utente. Il modo di sfruttare un TPM è quando si utilizza il computer per autenticarsi su un servizio remoto. Il TPM invia una misura del PC e il servizio remoto lo confronta con un valore di riferimento e decide se il PC si trova in uno stato noto o meno. Uno stato sconosciuto potrebbe essere un aggiornamento della versione o un compromesso, il servizio remoto non ha modo di sapere, quindi l'uso di un TPM richiede più infrastruttura per gestire gli aggiornamenti.

Invece di un TPM hardware, è possibile implementare funzionalità simili in un hypervisor. Ciò non richiede hardware speciale, ma ovviamente implica che il sistema venga eseguito su una macchina virtuale.

    
risposta data 19.04.2014 - 21:43
fonte

Leggi altre domande sui tag