通過SQL注入、弱口令等方式進入網站后臺或者在前臺找到上傳點,但在上傳Webshell
時發現有黑名單限制、Web.config
限制腳本執行/身份驗證或者存在某些WAF防護導致Webshell
腳本無法上傳成功/正常解析,這時我們可以嘗試去找一些可能被遺漏且能正常解析的腳本擴展名進行上傳繞過測試。以前看到過很多這樣的上傳成功繞過案例,所以想著把這些繞過思路和方法記錄下來,便于日后查詢使用!
常見黑名單禁止上傳腳本:
找到一個上傳點后先去測試看下是白名單還是黑名單限制,文件名+擴展名+上傳目錄是否可控,或者是否可以目錄穿越(../跨目錄),是否存在WAF等?如果為黑名單時可以嘗試以下這些腳本擴展名。
?
這種類型腳本雖然不能直接Getshell,但可以獲取到一些基本信息,而且可以使用include
將web.config
、conn.asp
等文件中的內容包含出來查看,還可以嘗試使用../../
跨目錄形式fuzzing
看是否能包含到一些有權限讀取的銘感配置文件或憑據信息等,然后你們懂的...,如下圖所示。
0x02 Ashx Webshell
https://github.com/tennc/webshell/blob/master/caidao-shell/customize.ashx
0x03 stm/shtm/shtml
MVC4.0環境部署:
本地測試環境為Windows 2012 (IIS8.5)
,默認已經安裝有.Net FrameWork 4.0
,自己下載并安裝ASP.NET MVC 4.0
,將IIS中的“ISAPI和CGI限制”選項ASP.NET v4.0.0.30319
設置為允許,最后在網站根目錄下創建一個web.config
配置文件即可,文件內容如下。
.Net FrameWork 4.0:https://www.microsoft.com/zh-CN/download/details.aspx?id=17851
ASP.NET MVC 4.0:https://www.microsoft.com/zh-CN/download/details.aspx?id=30683

注意事項:
如果當前網站根目下沒有web.config
配置文件,或者沒有指定.NET
版本,在瀏覽器訪問cmd.cshtml
腳本時可能就會出現以下兩種報錯提示,如下圖所示。

0x04 web.config Webshell
有時也會遇到那種不允許上傳所有ASP/.NET
腳本,或者Webshell
上傳成功但無法解析訪問提示403
等情況,這是因為上傳目錄下有個web.config
配置文件禁止了腳本執行,我們可以隨便輸入一個ASP腳本文件名進行簡單測試,無論這個文件是否真實存在都會提示403
,如下圖所示。asp:.asp、.asa、.cer、.cdx、.htr、.cfm、.stm、.shtm、.shtml
aspx:.aspx、.asax、.ashx、.ashm、.asmx、.ascx、.svc、.soap、.cshtml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers accessPolicy="Read" />
</system.webServer>
</configuration>

針對以上兩種情況的繞過需要具備這幾個條件:
如果具備以上條件,就可以直接上傳我們修改好的web.config
配置文件來執行命令或上線CS/MSF
等,可在web.config
最后修改自己要執行的Webshell
腳本內容,如下圖所示。

@on1_es 師傅在某項目中遇到的一個案例:.NET的站(任意文件上傳),但在上傳目錄下有個web.config
禁止了腳本執行,而且上傳文件會自動命名,無法通過上傳web.config
方式繞過,如下圖所示。
最后他是通過上傳一個能正常解析的Sharp4SoapRootShell.soap
腳本繞過了web.config
禁止腳本執行限制成功拿到這個目標的Webshell
權限,這里僅記錄分享了下他的這個繞過方法,如下圖所示。
實戰項目案例二:
@Cek0ter 師傅遇到的另一個案例:.NET的站(任意文件上傳),已成功上傳一個ASPX馬,但訪問時會跳轉到404
頁面,圖片/文本又能正常訪問,猜測也是web.config
導致跳轉到404頁面,如下圖所示。
最后他也是通過上傳一個能正常解析的Sharp4SoapGodzlliav1.1.soap
腳本繞過了web.config
的重定向規則成功拿到這個目標的Webshell
權限,這里僅記錄分享了下他的這個繞過方法,如下圖所示。
注:根據他的描述在傳Sharp4SoapRootShell.soap
時也會跳404,但Sharp4SoapGodzlliav1.1.soap
這個又不跳,1個跳,1個不跳,這我是著實沒太搞明白咋回事,等以后有空了再去單獨研究下這個吧!!!
另外說一嘴在實戰中遇到這種類似場景時還是得自己去測一下才知道具體是個什么情況。。。
閱讀原文:https://mp.weixin.qq.com/s/lkm7CMd3FK1dtq7kMSV9rw
該文章在 2025/5/8 18:43:44 編輯過