metasploit下Windows的多種提權(quán)方法
前言
當(dāng)你在愛害者的機(jī)器上執(zhí)行一些操作時(shí),發(fā)現(xiàn)有一些操作被拒絕執(zhí)行,為了獲得受害機(jī)器的完全權(quán)限,你需要繞過限制,獲取本來沒有的一些權(quán)限,這些權(quán)限可以用來刪除文件,查看私有信息,或者安裝特殊程序,比如病毒。Metasploit有很多種后滲透方法,可以用于對(duì)目標(biāo)機(jī)器的權(quán)限繞過,最終獲取到系統(tǒng)權(quán)限。
環(huán)境要求:
1.攻擊機(jī):kali linux
2.目標(biāo)機(jī):Win 7
在已經(jīng)獲取到一個(gè)meterpreter shell后,假如session為1,且權(quán)限不是系統(tǒng)權(quán)限的前提下,使用以下列出的幾種提權(quán)方法:
一、繞過UAC進(jìn)行提權(quán)
本方法主要有以下3個(gè)模塊。
上面這些模塊的詳細(xì)信息在metasploit里已有介紹,這里不再多說,主要說一下使用方法。以exploit/windows/local/bypassuac模塊為例
該模塊在windows 32位和64位下都有效。
- msf > use exploit/windows/local/bypassuac
- msf exploit(bypassuac) > set session 1
- msf exploit(bypassuac) > exploit
本模塊執(zhí)行成功后將會(huì)返回一個(gè)新的meterpreter shell,如下
模塊執(zhí)行成功后,執(zhí)行g(shù)etuid發(fā)現(xiàn)還是普通權(quán)限,不要失望,繼續(xù)執(zhí)行g(shù)etsystem,再次查看權(quán)限,成功繞過UAC,且已經(jīng)是系統(tǒng)權(quán)限了。
其他兩個(gè)模塊用法和上面一樣,原理有所不同,執(zhí)行成功后都會(huì)返回一個(gè)新的meterpreter shell,且都需要執(zhí)行g(shù)etsystem獲取系統(tǒng)權(quán)限。如下圖:
- exploit/windows/local/bypassuac_injection
- exploit/windows/local/bypassuac_vbs
二、提高程序運(yùn)行級(jí)別(runas)
這種方法可以利用exploit/windows/local/ask模塊,但是該模塊實(shí)際上只是以高權(quán)限重啟一個(gè)返回式shellcode,并沒有繞過UAC,會(huì)觸發(fā)系統(tǒng)UAC,受害機(jī)器有提示,提示用戶是否要運(yùn)行,如果用戶選擇“yes”,就可以程序返回一個(gè)高權(quán)限meterpreter shell(需要執(zhí)行g(shù)etsystem)。如下:
在受害機(jī)器上會(huì)彈出UAC,提示用戶是否運(yùn)行。如下:
三、利用windows提權(quán)漏洞進(jìn)行提權(quán)
可以利用metasploit下已有的提權(quán)漏洞,如ms13_053,ms14_058,ms16_016,ms16_032等。下面以ms14_058為例。
- msf > exploit/windows/local/ms14_058_track_popup_menu
- msf exploit(ms14_058_track_popup_menu) > set session 1
- msf exploit(ms14_058_track_popup_menu) > exploit
用windows提權(quán)漏洞提權(quán)時(shí),會(huì)直接返回高權(quán)限meterpreter shell,不需要再執(zhí)行g(shù)etsystem命令。
需要說明的是:在實(shí)際測(cè)試時(shí),如果出現(xiàn)目標(biāo)機(jī)器確實(shí)有漏洞,但是提權(quán)沒有成功時(shí),請(qǐng)確認(rèn)你的TARGET和PAYLOAD是否設(shè)置正確,64位的系統(tǒng)最好用64位的PAYLOAD。