ShellShock anche per Windows?

winshockSh1bumi ha pubblicato una possibile versione di ShellShock per Windows.

In questo caso, il comando ECHO esegue anche il comando contenuto nella variabile:

>set pippo=pluto^&ping localhost

>echo %pippo%
pluto

Pinging localhost [::1] with 32 bytes of data:

La sequenza ^& contiene il carattere di escape ^ e il carattere & che significa “esegui il comando che segue al termine del precedente”. Il carattere di escape serve a non eseguire il ping dopo il comando set, ma a mettere la stringa pluto&ping localhost nella variabile d’ambiente pippo.

Il test è facilmente replicabile su una command line di Windows, l’immagine qui sopra è stata catturata in un Windows 7.

L’utilizzo di file batch non è diffuso in Windows quanto gli script shell sono utilizzati in *NIX e la possibilità che qualche servizio esposto a Internet da un server Windows passi un input non sanificato ad un batch che esegue un echo di quel valore è molto inferiore ad un problema analogo su *NIX, ma il problema esiste.

Autore: Luigi Rosa

Consulente IT, sviluppatore, SysAdmin, cazzaro, e, ovviamente, geek.

Spazio per un commento