Cap.08: Shellcode e contromisure difensive

Finora lo shellcode usato nei nostri exploit era costituito soltanto da una stringa di byte copiati e incollati. Abbiamo visto shellcode standard per exploit locali e codice di binding di porte per exploit remoti. Lo shellcode talvolta è anche indicato come payload dell’exploit, perché questi programmi autonomi assumono il controllo ed eseguono il loro compito dopo che un programma è stato oggetto di hacking. Lo shellcode solitamente avvia una shell, poiché questo è un modo elegante per trasferire il controllo, ma in realtà può fare tutto ciò che fa un programma normale. Sfortunatamente, per molti hacker lo shellcode si limita a copiare e incollare byte; così però non sfruttano affatto le possibilità di questo strumento. Lo shellcode fornisce un controllo assoluto sul programma attaccato. Per esempio, se volete che lo shellcode aggiunga un account di amministratore a /etc/passw d , o che rimuova automaticamente dalle righe dei file di log, potete farlo. Il primo gruppo di contromisure cerca di rilevare le intrusioni e rispondere in qualche modo. Il processo di rilevamento può essere il più vario: da un amministratore che consulta i file di log a un programma che effettua lo sniffing della rete. La risposta può comportare la chiusura automatica della connessione o del processo, o semplicemente un controllo dettagliato di tutte le attività da parte dell’amministratore, dalla console della macchina. Per quanto riguarda l’amministratore di sistema, gli exploit conosciuti non sono certo pericolosi come quelli che non si conoscono. Prima si riesce a rilevare un’intrusione, prima è possibile affrontarla e maggiori sono le possibilità di contenerla. Le intrusioni che sono scoperte soltanto dopo mesi possono causare serie preoccupazioni.

Durata:2h
Relatori:Paolo Bulzomì

Vuoi saperne di più?

Compila ora il form,
sarai ricontattato da un nostro operatore

contattaci subito