如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)

今天我們將為大家介紹一款名為tokenvator的工具,這是一款基于.net開發(fā)的windows系統(tǒng)提權(quán)工具。

工具下載地址:https://www.php.cn/link/9774adeea02e9ea26eba932aa2a341a5

基本使用方法Tokenvator可以在交互式終端中直接運行,具體的執(zhí)行命令可以通過命令行參數(shù)提供。在交互模式下,可以使用tab鍵進行命令補全,或雙擊tab鍵獲取幫助信息。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)以下大部分截圖展示了在交互模式下運行命令的情況:

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)Steal_Token從最基本的功能來看,Tokenvator可以用來訪問并修改windows認證令牌。為了獲取特定進程的令牌,我們需要結(jié)合目標(biāo)進程的PID來運行Steal_Token命令。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)我們也可以通過添加額外的命令選項來使用新的訪問令牌。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)GetSystem通常,我們經(jīng)常需要竊取的是NT AUTHORITYSYSTEM賬號,而GetSystem命令可以幫助我們自動搜索并訪問SYSTEM令牌。它的使用語句與Steal_Token類似:

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)在某些情況下,如果沒有提升到SYSTEM權(quán)限,我們可能無法直接訪問特定進程的令牌,比如NT SERVICE賬號(本地sql服務(wù)進程)。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)GetTrustedInstaller還有一種常見情況,即SYSTEM32目錄或部分注冊表內(nèi)容屬于TRUSTEDINSTALLER組。為了修改這些位置的數(shù)據(jù),我們要么獲取數(shù)據(jù)的所有權(quán),要么獲取TRUSTEDINSTALLER組成員的訪問令牌。與GetSystem類似,GetTrustedInstaller也是Steal_Token的一個封裝,它可以啟動TrustedInstaller服務(wù)并獲取相應(yīng)的令牌。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)List_Privileges和Set_Privilege有時候,我們的進程不一定擁有完成任務(wù)所需的權(quán)限。例如,為了訪問當(dāng)前用戶無法訪問的進程,我們就需要SeDebugPrivilege的幫助。下圖展示了在一個高度完整的進程中對令牌的切分(UAC Elevated – TokenElevationTypeFull)。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)接下來,我們嘗試以管理員身份運行notepad.exe,并查看其訪問令牌:

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)測試完notepad.exe的令牌后,我們可以嘗試增加SeLoadDriverPrivilege,看看會發(fā)生什么。注意:權(quán)限名稱是大小寫敏感的。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)顯然,notepad.exe現(xiàn)在可以加載驅(qū)動程序了,而且我們還可以做更多的事情,我們將在未來增加權(quán)限移除的功能,請期待。

UAC繞過實現(xiàn)UAC繞過有許多方法,但最有趣的一種是修改令牌。FuzzySecurity在利用Windows令牌實現(xiàn)UAC繞過方面做了很多研究,感興趣的同學(xué)可以查看其gitHub代碼庫【傳送門】,Tokenvator也包含了FuzzySecurity實現(xiàn)的技術(shù)。在下面的測試中,我們?yōu)樘釞?quán)的令牌可以用來訪問當(dāng)前用戶擁有的特權(quán)進程,并生成特權(quán)Shell。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)這種方法以后很可能不會被修復(fù),因為這更像是一種功能。

查找用戶進程首先,我們需要查看系統(tǒng)注冊的會話信息:

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)下面是List_Processes命令實現(xiàn)的內(nèi)容,即獲取用戶進程的概覽:

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)List_Processes利用的是主機的原生API,在列舉進程和用戶方面速度非常快。由于在某些情況下如果沒有實現(xiàn)提權(quán)的話,某些功能還是無法正常運行的,因此List_Processes_WMI便應(yīng)運而生。顯然,它的功能是通過WMI實現(xiàn)的,所以它的速度肯定沒有List_Processes快,但是它可以在非提權(quán)場景下正常運行。

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)我們還可以直接列舉出特定用戶場景下所有運行的進程信息:

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)與List_Processes機制類似,它也能夠在非特權(quán)場景下通過WMI完成相同的工作:

如何使用Tokenvator和Windows Tokens實現(xiàn)提權(quán)總結(jié)這款工具是我與NetSPI團隊共同開發(fā)的,希望能為大家提供幫助。如果大家在使用過程中發(fā)現(xiàn)了問題,可以在github上留言。

  • 參考來源:netspi,F(xiàn)B小編Alpha_h4ck編譯,轉(zhuǎn)載請注明來自FreeBuf.COM

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊10 分享