Esecuzione basata sull'integrità

0

I sistemi di rilevamento delle intrusioni (IDS) si basano sulle firme binarie o sul cattivo comportamento noto del malware per rilevare le minacce. È diventato molto chiaro che questo approccio ha un successo limitato a causa del fatto che nella maggior parte dei casi mancheranno nuove minacce e varianti.

La mia domanda è, piuttosto che adottare l'approccio "black listing" più o meno, quali sarebbero gli svantaggi di adottare un approccio basato sull'integrità o "applicazioni bianche" per applicazioni e componenti di sistema sicuri? Il controllo dell'integrità potrebbe facilmente essere fatto attraverso un hyper hyper visore esterno che blocca il binario di un programma prima che venga eseguito.

Sebbene questo approccio non fermi determinati attacchi che utilizzano il programma vulnerabile per eseguire comandi dannosi, mi sembra che sarebbe efficace nell'impedire un punto di appoggio persistente su una macchina.

    
posta Vahid 09.12.2014 - 22:46
fonte

1 risposta

3

Alcuni venditori vendono sistemi che funzionano come te descrivi. Il problema più grande è la mancanza di una cooperazione attiva da parte dei venditori; non esiste un modo affidabile per creare un elenco di hash di "binari consentiti" poiché:

  • Ciò che appare come "un'applicazione" dal punto di vista dell'utente può essere un insieme di molti file eseguibili (in larga misura, è quello che sono le DLL).

  • Qualsiasi aggiornamento software interromperà i valori hash e richiederà di ricalcolarli. Questo è soprattutto un problema con le applicazioni che si aggiornano automaticamente su base giornaliera (come è tipico di alcuni moderni browser Web).

  • Alcune applicazioni si basano su generazione al volo di file eseguibili, ad es. per ottimizzare le cose per quanto riguarda l'hardware locale (penso che Adobe Reader lo faccia). Si noti inoltre che il framework .NET viene fornito con un compilatore C # ( csc.exe ) e che il processo di compilazione può essere richiamato a livello di codice (questo è ciò che alimenta le pagine Web ASP.NET ed è piuttosto mainstream).

Quindi, in pratica, i sistemi che funzionano in questo modo sono accoppiati con una fase di apprendimento (dove vengono raccolte informazioni su quali file vengono eseguiti da un determinato utente in un "giorno tipico"), eccezioni esplicite per casi angolari e un processo semplificato mediante il quale l'utente può richiedere l'aggiunta di una determinata applicazione alla whitelist.

Tieni presente che se applichi un sistema del genere, i tuoi utenti ti odieranno a fondo, perché sentiranno che si tratta di un'intrusione intollerabile nel loro mondo privato. L'odio degli utenti ha i suoi costi, in termini di sicurezza (la sicurezza funziona molto meglio quando gli utenti collaborano volentieri), quindi è meglio controbilanciare un guadagno netto dal sistema di whitelist.

Inoltre, considera che il malware non è necessariamente un file .exe o .dll. Il virus macro di Word è un esempio ben noto.

    
risposta data 09.12.2014 - 23:10
fonte

Leggi altre domande sui tag