當前位置:
首頁 > 新聞 > Active Directory域滲透的許可權持久控制之組策略

Active Directory域滲透的許可權持久控制之組策略

本文描述了一種通過組策略放置後門的方法,通過該方法,攻擊者可以在擁有域管理員級別的許可權約5分鐘後,即可持續對Active Directory進行管理訪問。


本文探討了攻擊者是內網滲透時會如何利用內置的Active Directory管理功能——組策略,以及如何緩解潛在的安全問題。


組策略概述


Active Directory的主要優點之一是其強大管理功能,並且此功能的核心就是組策略。組策略有幾個部分,可以在沒有第三方管理工具的大型企業內網中進行具有挑戰性的管理工作。


組策略可以使管理員對Active Directory中的計算機和用戶進行管理。組策略保存為組策略對象(GPO),然後與Active Directory對象(如站點,域或組織單位(OU))相關聯。組策略可以包括安全選項,註冊表項,軟體安裝以及啟動和關閉腳本,域成員默認情況下每隔90分鐘刷新一次組策略設置(域控制器為5分鐘)。這意味著組策略會強制在目標計算機上配置相關的設置。

在大多數Active Directory的設置中,在域內配置了至少一個GPO,定義了強制密碼,Kerberos和域範圍的策略; 為域控制器OU配置了至少一個GPO; 以及為伺服器和工作站OU配置了至少一個GPO。這些GPO定義了特定環境的安全設置,通常配置管理組,包括啟動/關閉腳本等。GPO可以配置為在每個級別設置組織定義的安全要求,並可用於安裝軟體和設置文件,註冊表許可權 。GPO僅適用於用戶和計算機,並且可以使用「組」過濾或使用「首選項」組件來更具體地進行針對性的配置。「無覆蓋」選項確保組策略中的設置即使應用了更接近資源且具有矛盾的GPO設置。


有兩個組策略組件:


1.「 組策略容器 」存儲在Active Directory中(,系統,策略)

Active Directory域滲透的許可權持久控制之組策略



2.實際包含策略設置的文件(統稱為「組策略模板」)存儲在SYSVOL中。


所有域的組策略都存儲在以下域的共享中:SYSVOLPolicies

Active Directory域滲透的許可權持久控制之組策略



Active Directory中的每個組策略對象具有以下屬性(在AD中的策略對象上):

· displayName:這是創建者為GPO指定的名稱。


· gPCFileSysPath:它指向SYSVOL中關聯的GPO文件(也稱為「組策略模板」)所在的位置。


· gPCMachineExtensionNames:此屬性列出了客戶端處理機器特定組策略設置所需的GPO客戶端擴展(CSE)。


· gPCUserExtensionNames:此屬性列出了客戶端處理用戶特定組策略設置所需的GPO客戶端擴展(CSE)。


使用PowerShell Active Directory模塊 cmdlet「 Get-ADObject 」,我們可以檢索GPO的關鍵特定屬性。

Active Directory域滲透的許可權持久控制之組策略



PowerShell Active Directory模塊可以通過在管理員PowerShell控制台中運行以下命令就能輕鬆安裝在Windows Server 2008 R2(及更高版本)上:


Import-module servermanager ; add-windowsfeature rsat-ad-PowerShell


此外,每個組策略都有一個用於連接GPO組件的GPO GUID:

· GPO策略文件以GPO GUID作為名稱存儲在GPO對象中。


· SYSVOL中的組策略模板文件存儲在以GPO GUID作為名稱的文件夾中。


· GPO策略對象的可辨別名稱被添加到GPO鏈接到的組織單位(OU)的屬性「gPLink」中。


當創建新的GPO時,它可以在AD中創建,可以不進行鏈接(在這種情況下,不執行任何操作),或鏈接到OU,域或站點。創建後,將在組策略容器(,系統,策略)中創建新的組策略對象,並在SYSVOL結構(基於GPO GUID名稱)中創建關聯的文件。將組策略鏈接到OU時,例如,OU的「gPLink」屬性將使用GPO的可辨別名稱進行更新。這提供了一種計算機識別哪些組策略適用於自身以及適用於登錄用戶的方法。


使用PowerShell Active Directory模塊 cmdlet「 Get-ADOrganizationalUnit 」,我們可以檢索鏈接到「伺服器」OU的組策略。

Active Directory域滲透的許可權持久控制之組策略



SYSVOL是Active Directory中的域範圍內的共享,所有經過身份驗證的用戶對具有讀訪問許可權。SYSVOL包含登錄腳本,組策略數據以及需要在任何具有域控制器的任何地方可用的其他域範圍的數據。SYSVOL共享可以自動同步並在所有域控制器之間共享。


此策略文件夾中的每個GPO文件夾的文件夾名稱與GPO的GUID相同。


SYSVOL中的每個GPO文件夾具有以下內容:

· 機器 - 此文件夾包含GPO的機器特定設置。


· 用戶 - 該文件夾包含GPO的用戶特定設置。


· GPT.INI - 此文件包含GPO的配置設置。

Active Directory域滲透的許可權持久控制之組策略



請注意,GPO通過GPO GUID在AD中進行跟蹤,GPO GUID具有AD對象的單獨的AD對象GUID。這有一些不同的原因,其中一個主要原因是確保特定的組策略對象有可預測的GUID,而不管Active Directory實例如何。「默認域策略」GPO的GUID默認為「31B2F340-016D-11D2-945F-00C04FB984F9」,「默認域控制器策略」GPO的GUID為「6AC1786C-016F-11D2-945F-00C04FB984F9」。


在下面的圖片中,ObjectGUID屬性為「0115c3fa-1628-40d0-8a68-2d05530d6f76」,與GPO GUID「31B2F340-016D-11D2-945F-00C04FB984F9」顯然不一樣。


組策略管理


組策略管理通常在大型企業中委託使用,因此很多不同的企業組織能夠創建,修改和刪除組策略。然而這樣帶來的問題是,組策略很快就會變得無法管理,難以管理,因為原來設計的(和選定的)管理員除了擁有GPO管理員許可權以外還有很多許可權。這些許可權通常在域級別進行委託,因此編輯(或全部)許可權適用於所有域GPO,甚至適用於域(所有)和/或域控制器的域。


組策略管理控制台(GPMC)是組策略管理的主要工具,還有一個PowerShell模塊(GroupPolicy),它可以用於報告和備份GPO(請使用Backup-GPO定期備份域GPO)這非常有用。

Active Directory域滲透的許可權持久控制之組策略


Active Directory域滲透的許可權持久控制之組策略



組政策持續能力


組策略旨在簡化對域內資源的管理,儘管攻擊者也可以通過組策略配置攻擊性的惡意軟體,創建/修改計劃任務,降級憑證保護,向所有計算機添加新的本地帳戶,並添加到本地管理員組。甚至更改現有的安全策略,實現明文密碼提取。


一些可能性:


· 配置PowerShell或VBS腳本以便在域或伺服器級別設置用戶組成員資格


· 執行我之前描述過的其他「猥瑣的域許可權持久性技巧」之一。


· 在SYSTEM上每周定期運行Invoke-Mimikatz。

· 拉取KRBTGT帳戶,然後計劃性的使用偽造的Kerberos票證在整個林中的某些計算機上運行DCSync的同步任務。


· 在域/林中的每台計算機上安裝或重新安裝惡意軟體。


· 通過在一個或所有域控制器上自動運行PowerShell腳本來轉儲所有計算機本地管理員帳戶的所有Microsoft LAPS密碼。一旦組策略成為其工具包的一部分,攻擊者就會有多種選擇。


事實上,2015年的Mandiant M-Trends 2016報告中涵蓋了2015年的一些攻擊活動,包括有關攻擊者如何利用組策略部署惡意軟體的信息:

Active Directory域滲透的許可權持久控制之組策略



請注意,黑客組織利用組策略作為黑客攻擊的一部分:http://pastebin.com/raw/0SNSvyjJ


紅軍團隊關於組策略的注意事項:


默認的組策略應用程序的行為是在客戶端上「刷新組策略」,但實際上並不意味著GPO設置會被重新應用。默認情況下,如果GPO在刷新之前被修改,則GPO的設置才會被重新應用。這意味著可以通過計算機的註冊表(通常具有管理員許可權)來反轉GPO強制設置,並且未經授權的設置將會一直保留,直到GPO被修改為止,然後重新應用GPO設置。


藍軍團隊防禦:

經過測試後,更改組策略默認設置,以便在每次刷新時重新應用GPO設置(即使組策略對象未更改也會處理)。這對客戶端具有潛在的性能影響,但將確保所有GPO強制設置都被重新應用。


計算機配置,策略,管理模板,系統,組策略,配置安全策略處理:設置為已啟用。


另外選中「 即使組策略對象沒有更改仍然處理 」


還建議為以下每個配置進行相同的設置:


· 計算機配置,策略,管理模板,系統,組策略,配置註冊表策略處理


· 計算機配置,策略,管理模板,系統,組策略,配置腳本策略處理


· 以及根據需要為任何其他策略進行設置。

Active Directory域滲透的許可權持久控制之組策略



組策略利用能力

雖然這篇文章的重點是保留域級別特權的訪問(「域管」許可權),但是有幾種方式可以使用現有組織的組策略配置來提升訪問許可權。比較明顯的一個方法是利用環境中現有的組策略首選項憑據,這使得攻擊者能夠將域用戶升級到伺服器/應用/ OU管理員甚至域管理員。不太明顯的方法是通過自定義安全設置來查找在域或頂級OU上鏈接的GPO。


基於我執行的AD安全性評估,我發現企業組織經常將GPO鏈接到高級別許可權,並為不是Active Directory管理員的帳戶提供編輯許可權的自定義安全設置。由於GPO可以被重新配置為運行腳本或更改安全性,因此為攻擊者提供了特權提升的途徑。


PowerView現在集成到PowerSploit中,通過PowerShell包含了一些有趣的組策略枚舉功能。


以下示例顯示了一個名為「完全審核策略」的組策略,該域策略已在域級別鏈接,該級別具有委派給「Han Solo」(伺服器管理)帳戶的「編輯設置」許可權。

Active Directory域滲透的許可權持久控制之組策略



Han Solo是「Server Admins」組的成員,但是該用戶組不是域管理組。

Active Directory域滲透的許可權持久控制之組策略



由於Han Solo有許可權編輯此域名鏈接的GPO,所以我們來修改它。

Active Directory域滲透的許可權持久控制之組策略



編輯組策略後,此GPO現在將在域中的每台計算機上添加一個計劃任務,從而實現攻擊者所希望的任何類型的攻擊活動。


「隱藏組策略」 - 適用於站點的組策略


我們知道,組策略通常適用於組織單位(OU),我們可以在GPMC中輕鬆查看。

Active Directory域滲透的許可權持久控制之組策略



不過,許多管理員並沒有意識到,儘管將組策略與站點相關聯並不是最佳做法,但是沒有任何辦法阻止域管理員(企業管理員)這樣做。


所需要的操作是選擇應在組策略管理控制台中顯示的AD站點,並將新的/更新的組策略鏈接到站點

Active Directory域滲透的許可權持久控制之組策略



看看GPMC,我們可以看到有兩個與HQ站點相關的組策略,最近都被修改了(提示!)。

Active Directory域滲透的許可權持久控制之組策略



您當前的監控系統是否會會對此更改事件進行通知?


緩解措施


應將AD環境中的所有組策略配置為單一的目的,並監視未經授權的修改,特別是與域,域控制器OU和/或頂級OU(如工作站,伺服器,管理員等)鏈接的GPO。


應定期審查授予給組策略的許可權,特別是與頂級OU相關的許可權。只有Active Directory管理員應該對應用於域,頂級OU以及與關鍵資產(域控制器,伺服器,管理計算機等)鏈接的GPO的GPO具有修改許可權。


此外,所有站點都應該查看所鏈接的組策略,因為這些GPO可以跨域同步,這會使得攻擊者在同一AD林中進行跨域特權提升。


SYSVOL的許可權非常重要,並且必須保持與默認設置相同,因為SYSYOL包含由GPO客戶端應用的文件中的實際組策略設置。如果GPO配置文件具有允許某些不是Active Directory管理員的人員更改該文件的許可權,從而更改GPO客戶端實際執行的操作,則攻擊者可能會迅速將已有的許可權提升到域管理級別的許可權。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

TAG:嘶吼RoarTalk |

您可能感興趣

Econolite推Centracs Edaptive及Priority 提高自適應信號控制系統性能
AirPlay能支持Sonos揚聲器,通過Siri控制Apple Music!
實戰microPython(三)uPyBoard是如何控制機器人的
如何讓iPhone手機控制Blackmagic Design相機
動態 | Steinway Lyngdorf上海展廳應用RTI和Helvar的智能控制
Web Forms DataList 控制項
Web Forms Validation 伺服器控制項
使用Istio控制Serverless架構Fn Project中的函數間流量路由
遠程控制軟體AnyDesk—完美替代teamviwer
Google Daydream SDK更新支持多控制器
蘋果在Mac上添加Home應用程序並支持Siri控制HomeKit設備
Web Forms Repeater 控制項
Northern Digital推出手柄控制器參考設計支持VR頭顯
Magic Leap推後台音樂控制應用Overture
iOS swift UISearchBar拿到textfield控制項
用setuptools_scm來自動控制Python包的版本
macOS Catalina為普通MacBook機型提供了虛擬Touch Bar控制項
VR射擊遊戲《Firewall:Zero Hour》支持PS Aim控制器
淺談Vue&Vue-router如何實現許可權控制
js中setTimeOut()和setInterval()的使用——程序執行時間控制