2021-11-15
靶場下載地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2/
進入后點擊會彈出下載連接,是百度雲盤的,沒有會員的話要耐心下載一會了。
環境拓撲:
環境配置:
拓撲大致意思為web服務器(win7)可以出網,但vm3(win2008r2)和vm2(win2003)不出網。
所以就很好實現了,win7配置兩張網卡,一個NAT一個僅主機模式。另外兩台內網主機配置為僅主機模式。
添加虛擬網卡:
添加自己需要的網卡后,修改僅主機模式的內網網段:
配置好網卡后win7可能會出現這種情況:
這是因為靶機下載后已經配置好了靜態ip,因此只要將win7的兩個網卡換下位置就好。就是如果原來的網絡適配器是僅主機模式,就把他改為NAT,如果是NAT就改為僅主機模式;網絡適配器2同樣如此。最終我的兩個ip長這樣:
各主機獲取ip后,進入win7,運行phpstudy,模擬web環境。
最終就大公告成啦,各主機ip:
信息收集:
nmap
dirsearch:
找到不少好東西,訪問下80
Php探針,有個mysql檢測,默認密碼試試root/root
目錄猜解有個phpmyadmin,登錄成功
想到寫一句話進去,試一試
Select variables like “%secure%”
- 當secure_file_priv的值為null ,表示限制mysqld 不允許導入|導出
- 當secure_file_priv的值為/tmp/ ,表示限制mysqld 的導入|導出只能發生在/tmp/目錄下
- 當secure_file_priv的值沒有具體值時,表示不對mysqld 的導入|導出做限制
不允許導入導出,因此sql寫shell不可行。
因此考慮phpmyadmin拿shell的另一種方式。
Mysql日志導入木馬。
先查看日志狀態:
現在general_log是關閉狀態。當它為開啟狀態時,所有執行的命令都會被保存到日志文件里,這個文件的位置就是“general_log_file”的值。
執行sql語句:
網站絕對路徑這個問題,phpstudy可以猜測,但實戰並不是這樣。由此想到當時的一次面試,跟師傅聊到考PTE,師傅說那就講講怎么拿權限的吧。然后鄙人開始一步一步講,不清楚為什么,當時那位師傅問得很詳細很詳細,甚至問到每一步語句怎么寫的。然后聊到phpmyadmin拿權限的問題,一種寫日志,一種是寫木馬。當時考試用的是intooutfile寫木馬,權限都符合條件,能看到數據庫路徑。只剩網站目錄不知道,然后尋思入門考試應該不會設置很復雜的路徑,可能會有什么www/,www/html/這種路徑。然后數據庫的路徑記得是兩級C:\\aaa\bbb。這幾個路徑互相穿插排列組合下來超不過十種情況,索性嘗試。果然最后成功了,但當時路徑是什么忘記了,考試很有意思。可惜的是當時面試不知道怎么表述這種情況就慌了,面試師傅比較好奇吧,可能也在想是不是我在說謊,一來二去,頭腦亂了。如果當時有紙有筆多好,怪自己這張笨嘴。然后師傅問了幾個鄙人沒聽說過的問題,好了,如果有需要我們會再聯系你的。.....整個過程持續了一個多小時,面完之后最大的感覺是為什么一個小時過得這么快...哦哦哦我在干嘛,這種靶場和當時考試時情況差不多,就好像phpstudy網站根目錄可能是C:\\phpstudy\www,C:\\phpstudy\www\html,C:\\phpstudy_pro\www一樣,不妨試試,可能有驚喜。
訪問下試試有沒有寫進去:
寫進去了,上馬。用冰蠍自帶的php馬吧,會報錯,但是沒關系,只要執行sql語句,命令就會寫到日志里。
冰蠍鏈接:
內網:
使用cs上線,kali上開啟服務端:
本機開啟客戶端,設置監聽器:
生成后門:
然后把生成的exe上傳到目標系統,鄙人傳到了www目錄下:
在冰蠍自帶終端運行目標文件,成功上線 (無殺軟) :
靶機信息收集:
自己搭建靶場不考慮流量檢測的事情,所以索性sleep1吧,效率高一些
看看權限:
瞧瞧ip,發現是雙網卡:
看看用戶:
這里可能會報1722錯,RPC服務器不可用。解決辦法,在win7靶機hosts添加:
看看系統信息:
密碼信息:
可以考慮提升到system權限,鄙人用的ms15-051(謝公子的插件)提權,14058什么的都可以:
獲取System權限:
靶機信息收集到此為止。
內網域信息收集:
局域網主機發現,有兩個東西,72這個東西是怎么來的不清楚,很奇怪。希望懂的師傅可以幫幫小弟理解[花花]:
Arp試試,發現了倆主機,.138主機名叫OWA是坐實了,141是什么不知道,
主機加入的域:
運行在哪個域上,名稱相關信息:
查看域內的工作組:
查域管名字:
查看域內其他主機名,主機名“ROOT----”也在域中,上面netview結果可知,此域成員ip為72.14.185.43,但這個ip有點奇怪emm:
查看域控,這個環境只有一個域控:
得到了域控主機名,從上面net view結果可知,域控對應ip為192.168.52.138。
還有一個問題沒有解決,arp主機發現的141是什么機器?如果在真實環境中的話,難道只是局域網內機器么,好奇。在本題環境下,arp只發現了兩台機器,newview發現了域控和一個不知什么東西,查看域內用戶發現除了域控owa外還發現了root什么什么的用戶。不免聯想這個奇怪的ip會不會跟域成員rootxx有點關系。所以只要證明141的主機名是rootxx,那這台局域網主機就是我們的最終目標了。
冰蠍上傳nbtscan,這個小東西挺好用的:
探測局域網存活主機以及打印主機名,果然是它⭐:
橫向移動:
使用win7作為跳板機,拿下域控和域成員機器。
轉移到msf吧,師傅說強大方便[xixi]。第一次時候msf在公網vps,這次就在本地做好了。Msf只要和靶機互通就行,當然和攻擊機也要通。
Msf開啟監聽:
派生會話:
選擇剛剛創建的監聽器:
點擊choose,然后msf就會收到會話了:
目的是通過這台靶機去獲取域內其他資產,因此現在要做的是把本地當作跳板。
查看下路由信息
Msf當前的路由表:
靶機上的路由表:
添加路由表,添加0.0.0.0/0的話,只要被控靶機可以訪問的msf也可以訪問:
使用,ms17_010,失敗,沒有session返回。換種方法吧
還有其他方法,pth,psexec,
用smb
新建smb的監聽器:
派生會話,選擇剛剛新建的監聽器:
會變成這樣:
然后找到剛剛探測到的主機,45開頭的是剛剛72開頭的主機,剛剛電腦喝了點水關機了
然后把靶機當作跳板機,使用psexec登錄。
這里利用psexec有幾個條件。登錄域控的話,需要使用域管理員組內用戶登錄;登錄普通域成員的話,普通域成員用戶或本地administrator用戶都可以登錄。
因此要拿下owa,需要域管理員組內用戶。
查看域管理員組內用戶:
繼續剛剛的操作,選擇psexec
用戶選擇這仨個都可以,監聽器選擇beaconsmb,會話選擇smb派生出來的會話:
會發現它運行了這三條命令:
beacon> rev2self
beacon> make_token GOD\Administrator mimamimaxx
beacon> jump psexec OWA smb
最終:
同理,仍然以靶機為跳板機,psexec拿下141
最終結果: