查閱資料:
漏洞詳情請參考:https://docs.microsoft.com/zh-cn/security-updates/securitybulletins/2015/ms15-034
鳴謝:https://blog.csdn.net/weixin_30919571/article/details/99306168
驗證:
使用Range設置請求的字節,構造數據溢出
Range: bytes=0-18446744073709551615 // 向服務器請求18446744073709551616字節數據,導致數據溢出
微軟給的建議是安裝補丁:KB3042553
如果操作系統長時間未進行升級會導致顯示:此更新不適用於您的計算機
需要按照如下順序安裝前置補丁,KB3021910、KB2919355、KB3042553
http://www.catalog.update.microsoft.com/Search.aspx?q=KB3021910 // KB3021910 http://www.catalog.update.microsoft.com/Search.aspx?q=KB2919355 // KB2919355 http://www.catalog.update.microsoft.com/Search.aspx?q=KB3042553 // KB3042553
備注:KB2919355是一組補丁,選擇其中的KB2919355即可。
環境:windows Server 2012 Standard
補丁安裝:
1、安裝KB3021910無提示重啟,需嚴格按照順序安裝。
2、安裝KB2919355完成之后提示重啟,必須先安裝KB3021910,否則安裝KB2919355提示“此更新不適用於您的計算機”。
3、重啟之后,安裝KB3042553,正常安裝不再提示,“此更新不適用於您的計算機”,安裝完畢提示重啟,重啟服務器。
修復結果:
安裝補丁之后,再次使用Range驗證,響應是Bad Request。說明此攻擊無效,已經修復漏洞。
收獲:
1、Window的許多補丁需要安裝前置補丁,按照順序安裝補丁,否則提示“此更新不適用於您的計算機”。
2、臨時關閉IIS內核緩存,也可以臨時避開漏洞
路徑:輸出緩存-->右側操作-->編輯功能設置 取消勾選“啟用內核緩存”,安裝補丁之后,可以再開啟內核緩存
3、及時更新補丁,在Windows Server 2012 R2 Datacenter(測試可行)