Test di vulnerabilità senza l'uso di exploit?

5

Stavo facendo alcuni test su un server per vedere se fosse vulnerabile a un exploit locale di 0 giorni (l'exploit era per ottenere i privilegi di root usando un bug nel kernel di Linux). Non c'erano ancora informazioni reali su come sapere se il tuo vulnerabile o meno eccetto eseguendo l'exploit. Che cosa ho fatto e ho finito per ottenere un mucchio di problemi dal centro dati per farlo. In questo caso, qual è il modo migliore per verificare se sei vulnerabile? Si può presumere che ci sarà una correzione rilasciata per la vulnerabilità prima che venga hackerata usando l'exploit (anche con un server hardened)?

    
posta ub3rst4r 16.05.2013 - 18:59
fonte

2 risposte

5

Prenderò in considerazione due possibili approcci: prendo atto che stai tentando di verificare un exploit per l'escalation dei privilegi che sfrutta un bug nel kernel. Per il bene dell'esperimento, ignorerei il software per lo spazio degli utenti anche se questa è probabilmente una cattiva idea.

Avvicinandosi al punto # 1, supponendo che potrebbe essere necessario accedere ai dati sul server in questione, installerei una VM con la versione esatta della distro e del kernel Linux in questione e proverei il tuo exploit. La VM eseguirà efficacemente il sandbox del server dall'host reale e se riuscirai a bloccare la VM, nessun danno verrà fatto.

Approccio # 2 supponendo che non ci siano dipendenze dei dati - installerei una VM con la stessa distribuzione e kernel su qualsiasi altra macchina Linux che potreste avere nel negozio e provate il vostro exploit.

Se si tratta di una macchina importante e la tua organizzazione ha risorse che valgono la pena attaccare, non farei alcuna ipotesi in merito alla disponibilità delle patch e all'applicazione prima che venissi attaccato.

OTOH - se la macchina non è mission critical e lo stato generale delle contromisure di sicurezza della server farm è buono (le macchine sono regolarmente riparate, i firewall sono mantenuti correttamente) - Ridurrei il tuo livello di preoccupazione e prendermi il tempo in laboratorio

    
risposta data 16.05.2013 - 19:17
fonte
1

Scopri cosa sfrutta l'exploit. È il tuo kernel Linux (versione)? Quindi tutti i sistemi con quel numero di versione possono essere effettuati.

Supponendo che tu abbia una vulnerabilità, dovresti sapere cosa attacca. Se per qualche motivo non sai cosa l'exploit non lo verifica sui server di produzione. Se l'exploit è uno script, puoi semplicemente fare il picco e vedere cosa fa. Se l'exploit è compilato in codice macchina, dovrai provare a decodificarlo per capire cosa fa o assumere qualcuno che possa farlo.

Non si può presumere che ci sarà una correzione prima che qualcuno ottenga l'exploit, a meno che l'unica persona che lo ha è lo sviluppatore. Gli sviluppatori saranno in grado di risolverli solo se ne saranno a conoscenza. Possono apprendere nuovi exploit nei loro software, se sono pubblicati, venduti o trovati da loro.

    
risposta data 17.05.2013 - 10:04
fonte

Leggi altre domande sui tag