Shellcode: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m rimosso wikilink a voce cancellata
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti.
 
Riga 22:
==== Download and execute ====
 
Download and execute è un tipo di shellcode remoto che effettua un [[download]] ed esegue una qualche forma di [[malware]] sul sistema bersaglio. Questo tipo di shellcode non crea una shell, ma istruisce la macchina di scaricare un certo [[file eseguibile]] dalla rete, salvarlo su disco e poi eseguirlo. Al giorno d'oggi, è comunemente utilizzato negli attacchi [[drive-by download]], quando una vittima visita un sito malevolo che cerca di avviare un download e di eseguire una shellcode per installare software sulla macchina vittima. Una variazione di questo tipo di shellcode è “download and loads a library”.<ref>{{Cita web |url=http://skypher.com/index.php/2010/01/11/download-and-loadlibrary-shellcode-released/ |titolo=Download and LoadLibrary shellcode released |cognome=SkyLined |data=11 gennaio 2010 |accesso=19 gennaio 2010 |urlmorto=sì |urlarchivio=https://web.archive.org/web/20100123014637/http://skypher.com/index.php/2010/01/11/download-and-loadlibrary-shellcode-released/ |dataarchivio=23 gennaio 2010 }}</ref><ref>{{Cita web|url=https://code.google.com/p/w32-dl-loadlib-shellcode/
|titolo=Download and LoadLibrary shellcode for x86 Windows
|cognome=SkyLined |data=11 gennaio 2010 |accesso=19 gennaio 2010 }}</ref> I vantaggi di questa tecnica è che il codice dello shellcode può essere più piccolo, non richiede la creazione di un nuovo processo sulla macchina bersaglio e che lo shellcode non ha bisogno di implementare il codice per la pulizia del processo bersagliato, ma questo può essere effettuato da una libreria caricata all'interno del processo.
Riga 54:
 
===== Percent encoding =====
Gli exploit che hanno come obiettivo i browser, codificano comunemente lo shellcode in una stringa [[JavaScript]] usando la notazione di [[percent-encoding]] o URL-encoding, tramite caratteri di escape “\uXXXX” o mediante [[entity]]. Alcuni exploit fanno un ulteriore offuscamento dello shellcode codificato tramite stringhe per evitare di essere rilevati da strumenti di [[intrusion detection system|IDS]].
Per esempio, sul una architettura [[IA-32]], due istruzioni di <code>[[NOP (informatica)|NOP]]</code> (no-operation) prima di essere codificate hanno questa forma.