Perché il bit NX non è stato in grado di arrestare WannaCry?

4

Sto lavorando a una presentazione da dare agli studenti di informatica delle scuole superiori dove lavoro come volontario. Parte della presentazione è sugli exploit locali e di rete. Sto pianificando di parlare di una storia in cui anni fa potevo ottenere l'accesso come root creando un programma con un buffer overflow intenzionale, impostando il bit setuid e eseguendo una diapositiva NOP per eseguire shellcode. Quando si esegue questo programma su un sistema operativo moderno o hardware moderno, l'exploit non funziona più a causa del bit NX. (Ho preso questa tecnica dal libro "Hacking, l'arte dello sfruttamento").

Ho anche intenzione di parlare di WannaCry ransomware. Fare riferimento a questo collegamento FireEye su WannaCry , ne parlano dopo che il pacchetto malformato è stato inviato a SMBv1 sulla porta 445, il software è stato in grado di eseguire una diapositiva NOP e quindi eseguire shellcode.

Quindi la mia domanda è: perché il bit NX (dal sistema operativo o dalla CPU) non è stato in grado di impedire a WannaCry di funzionare?

    
posta Shaun Miller 28.05.2018 - 00:55
fonte

1 risposta

2

WannaCry ha prima attivato le transazioni SMB secondarie, quindi ha utilizzato bug (buffer di pacchetti non inizializzati) di srv2.dll per richiamare i sovraccarichi del buffer.

NetApi32.dll è in grado di aggirare NX su alcune versioni del sistema operativo e service pack ( ref , sfruttare )

.     
risposta data 28.05.2018 - 01:55
fonte

Leggi altre domande sui tag