Un exploit è un termine usato in informatica
per identificare un metodo che, sfruttando un bug
o una vulnerabilità, porta all'acquisizione di privilegi o al denial
of service di un computer.
Ci sono diversi modi per classificare gli exploit. Il più comune è una
classificazione a seconda del modo in cui l'exploit contatta l'applicazione
vulnerabile. Un exploit remoto è compiuto attraverso la rete e sfrutta
la vulnerabilità senza precedenti accessi al sistema. Un exploit locale
richiede un preventivo accesso al sistema e solitamente fa aumentare i
privilegi dell'utente oltre a quelli settati dall'amministratore.
Gli exploit possono anche essere classificati a seconda del tipo di
vulnerabilità che sfruttano. Vedi buffer
overflow, format
string attacks, race
condition, cross-site
scripting, e cross-site
request forgery.
Lo scopo di molti exploit è quelli di prendere i privilegi di root su un
sistema. È comunque possibile usare exploit che dapprima acquisiscono un
accesso con i minimi privilegi e che poi li alzano fino ad arrivare a root.
Normalmente un exploit può sfruttare solo una specifica falla e quando è
pubblicato questa falla è riparata e l'exploit diventa obsoleto per le nuove
versioni del programma. Per questo motivo alcuni blackhat hackers
non divulgano gli exploit trovati ma li tengono riservati per loro o per la
loro community. Questi exploit sono chiamati zero
day exploit, e scoprire il loro contenuto è il più grande desiderio
per gli attackers senza conoscenze, altrimenti detti script
kiddies.
|