使用PowerShell提升本地賬戶權限

使用PowerShell提升本地賬戶權限

特權升級是攻擊者使用帳戶的當前權限來獲得額外的、通常是更高級別的系統訪問權限。 雖然權限提升可能是利用零日漏洞、一流黑客進行有針對性的攻擊或巧妙偽裝的惡意軟件的結果,但最常見的原因是計算機或帳戶配置錯誤。 進一步發展攻擊,攻擊者使用許多單獨的漏洞,這些漏洞加在一起可能導致災難性的數據洩漏。

為什麼用戶不應該擁有本地管理員權限?

如果您是安全專家,用戶不應該擁有本地管理員權限似乎很明顯,如下所示:

  • 使他們的帳戶更容易受到各種攻擊
  • 使那些相同的攻擊更加嚴重

不幸的是,對於許多組織來說,這仍然是一個非常有爭議的問題,有時會伴隨著激烈的討論(例如,參見 我的主管說所有用戶都必須是本地管理員). 在不深入討論的細節的情況下,我們認為攻擊者通過漏洞利用或因為機器未得到適當保護而獲得了所調查系統的本地管理員權限。

步驟 1 使用 PowerShell 反向 DNS 解析

默認情況下,PowerShell 安裝在許多本地工作站和大多數 Windows 服務器上。 雖然它被認為是一種非常有用的自動化和控制工具並非沒有誇張,但它同樣能夠將自己轉變為近乎隱形的 無文件惡意軟件 (不留下攻擊痕蹟的黑客程序)。

在我們的案例中,攻擊者開始使用 PowerShell 腳本執行網絡偵察,依次遍歷網絡 IP 地址空間,嘗試確定給定 IP 是否解析為主機,如果是,則該主機的網絡名稱是什麼。
有許多方法可以完成此任務,但使用 cmdlet 得到-ADComputer 是一個可靠的選擇,因為它返回關於每個節點的一組非常豐富的數據:

 import-module activedirectory Get-ADComputer -property * -filter { ipv4address -eq ‘10.10.10.10’}

如果大型網絡上的速度有問題,則可以使用 DNS 回調:

[System.Net.Dns]::GetHostEntry(‘10.10.10.10’).HostName

使用PowerShell提升本地賬戶權限

這種在網絡上列出主機的方法非常流行,因為大多數網絡不使用零信任安全模型,也不監視內部 DNS 請求以發現可疑的活動爆發。

第 2 步:選擇目標

此步驟的最終結果是獲得可用於繼續攻擊的服務器和工作站主機名列表。

使用PowerShell提升本地賬戶權限

從名稱上看,“HUB-FILER”服務器似乎是一個有價值的目標,因為隨著時間的推移,文件服務器通常會積累大量網絡文件夾,並且會被太多人過度訪問。

使用 Windows 資源管理器瀏覽可以讓我們檢測到打開的共享文件夾的存在,但我們當前的帳戶無法訪問它(可能我們只有列表權限)。

第 3 步:學習 ACL

現在,在我們的 HUB-FILER 主機和目標共享上,我們可以運行 PowerShell 腳本來獲取 ACL。 我們可以在本地機器上執行此操作,因為我們已經擁有本地管理員權限:

(get-acl hub-filershare).access | ft IdentityReference,FileSystemRights,AccessControlType,IsInherited,InheritanceFlags –auto

執行結果:

使用PowerShell提升本地賬戶權限

從中我們看到,Domain Users組只有listing的訪問權限,而Helpdesk組也有修改的權限。

第 4 步:賬戶識別

跑步 獲取 ADGroupMember,我們可以得到這個組的所有成員:

Get-ADGroupMember -identity Helpdesk

使用PowerShell提升本地賬戶權限

在此列表中,我們看到一個我們已經識別並已經訪問過的計算機帳戶:

使用PowerShell提升本地賬戶權限

第 5 步:使用 PSExec 以計算機帳戶運行

PsExec的 來自 Microsoft Sysinternals 的 允許您在 SYSTEM@HUB-SHAREPOINT 系統帳戶的上下文中執行命令,我們知道該帳戶是 Helpdesk 目標群組的成員。 也就是說,我們只需要做:

PsExec.exe -s -i cmd.exe

那麼,您就可以完全訪問目標文件夾 HUB-FILERshareHR,因為您是在 HUB-SHAREPOINT 計算機帳戶的上下文中工作。 通過這種訪問,數據可以復製到便攜式存儲設備或以其他方式檢索並通過網絡傳輸。

第 6 步:檢測此攻擊

這個特殊的帳戶權限調整漏洞(訪問網絡共享的計算機帳戶而不是用戶帳戶或服務帳戶)可以被發現。 然而,如果沒有合適的工具,這是很難做到的。

為了檢測和防止此類攻擊,我們可以使用 數據優勢 識別其中包含計算機帳戶的組,然後拒絕訪問它們。 數據警報 更進一步,允許您專門為這種情況創建通知。

下面的屏幕截圖顯示了一個自定義通知,每次計算機帳戶訪問受監控服務器上的數據時都會觸發該通知。

使用PowerShell提升本地賬戶權限

PowerShell 的後續步驟

想知道更多? 使用“博客”解鎖碼免費獲取全文 PowerShell 和 Active Directory 基礎知識視頻課程.

來源: www.habr.com

添加評論