保護內網域安全之掃描Active Directory特權和特權帳戶(二)
大多數組織使用組策略將Active Directory組添加到計算機上的本地組中(通常為管理員組)。使用PowerView,我們可以輕鬆發現在工作站和伺服器上具有管理許可權的AD組(這是非常典型的用例)。
在下面的截圖中,我們看到企業組織已經配置了以下GPO:
GPO:「將伺服器管理員添加到本地管理員組」
本地組:管理員組
AD組:伺服器管理員(示例中顯示了SID)
GPO:「將工作站管理員添加到本地管理員組」
本地組:管理員組
AD組:工作站管理員(示例中顯示了SID)
我們還可以使用PowerView來確定哪些AD組對OU具有對計算機的管理許可權。
Active Directory對象許可權(ACL)
與文件系統許可權類似,Active Directory對象也具有許可權。
這些許可權稱為訪問控制列表(ACL)。設置對象的許可權使用了一種名為安全描述符定義語言 (SDDL)的隱晦格式,如下所示:
D:PAI(D; OICI; FA ;;; BG)(A; OICI; FA ;;; BA)(A; OICIIO; FA ;;; CO)(A; OICI; FA ;;; SY)(A; OICI; FA ;;; BU)
上述格式是由GUI翻譯,以提供更方便友好的使用格式(見下面的屏幕截圖)。
每個Active Directory對象都具有在其上配置的許可權,顯式定義或從其父對象繼承(通常為OU或域),並且可以將許可權定義為允許或拒絕對象及其屬性的許可權。
執行Active Directory安全性評估時,我們掃描Active Directory的AD ACL,並根據AD對象(如域,OU,安全組等)上的委派來識別具有特權許可權的帳戶或用戶組。
Active Directory中的每個對象都具有應用於其本身的默認許可權,以及繼承和任何顯式許可權。默認情況下,Authenticated Users對AD中的對象具有讀許可權,因此可以輕鬆地收集其大多數屬性和對象,AD對象及其屬性和定義的許可權。
關於AD ACL的一個簡要說明。系統容器中有一個名為「 AdminSDHolder 」 的對象,它只有一個目的:成為域中具有高級許可權的對象(及其成員)的許可權模板對象。
·SDProp Protected Objects (Windows Server 2008 & Windows Server 2008 R2):
Account Operators
Administrator
Administrators
Backup Operators
Domain Admins
Domain Controllers
Enterprise Admins
KrbtgtPrint Operators
Read-only Domain Controllers
Replicator
Schema Admins
Server Operators
大約每60分鐘,PDC模擬器會運行一個進程來枚舉所有這些受保護的對象及其成員,然後標記AdminSDHolder對象上配置的許可權(並將admin屬性設置為1)。這確保了特權組和帳戶能夠受到保護,免受不當的AD許可權委派。
在AD對象的自定義許可權的檢查是非常困難的。例如,下圖顯示了OU上的許可權。
這個OU的委派有一個嚴重的問題,下圖中高亮顯示的部分。
從下圖可以看到具有完全控制許可權的域控制器授權給了此OU的所有對象及其中包含的所有對象。
攻擊者對提供特權操作的許可權最感興趣。這些ACL包括如下幾個:
· Replicating Directory Changes All:擴展許可權,提供複製對象的所有數據的能力,包括密碼數據(我稱之為域控制器模擬許可權),可為AD用戶和計算機「 DCSync 」密碼數據提供「 DCSync 」功能。示例:FIM,Riverbed,SharePoint和其他應用程序通常在根域上授予許可權給這些服務的服務賬戶。如果攻擊者可以猜測到該密碼(或者可能通過 Kerberoasting破解),那麼他們現在就擁有該域的控制許可權,因為它們可以為所有AD用戶和計算機(包括域管理員和域控制器)提供DCSync密碼散列。
· GenericAll:GenericAll =完全控制
許可權創建或刪除子項,刪除子樹,讀取和寫入屬性,檢查子對象和對象本身,從目錄中添加和刪除對象,並使用擴展許可權進行讀取或寫入。
它提供對象和所有屬性的完整許可權,包括LAPS本地管理員密碼和BitLocker恢復密鑰等機密屬性。在許多情況下,不需要完全控制權,但是比確定所需的實際權利更容易進行委派和工作。
示例:伺服器組可以被委派給具有計算機對象與伺服器關聯的OU中的所有計算機對象上的完全控制。
· GenericWrite:提供對所有屬性的寫訪問許可權。
有權讀取此對象的許可權,寫入此對象上的所有屬性,並對該對象執行所有驗證的寫入。
· WriteDACL:提供修改對象上的安全性的能力,可以導致對象的完全控制。
在對象安全描述符中修改DACL的許可權。
示例:可以授予服務帳戶在AD中執行授權的權利。如果攻擊者可以猜測到這個密碼(或者可能通過Kerberoasting來破解它),那麼他們現在就可以對關聯的對象設置自己的許可權,這些許可權可以導致完全控制一個可能涉及LAPS受控本地管理員密碼的對象。
· Self: 提供執行驗證寫入的能力。
執行受驗證的寫入許可權控制的操作的權利。
驗證的寫入包括以下屬性:
Self-Membership(bf9679c0-0de6-11d0-a285-00aa003049e2 / member attribute)
Validated-DNS-Host-Name (72e39547-7b18-11d1-adef-00c04fd8d5cd / dNSHostName attribute)
Validated-MS-DS-Additional-DNS-Host-Name (80863791-dbe9-4eb8-837e-7f0ab55d9ac7 / msDS-AdditionalDnsHostName attribute)
Validated-MS-DS-Behavior-Version (d31a8757-2447-4545-8081-3bb610cacbf2 / msDS-Behavior-Version attribute)
Validated-SPN (f3a64788-5306-11d1-a9c5-0000f80367c1 / servicePrincipalName attribute)
· WriteOwner::提供獲取對象所有權的功能。對象的所有者可以獲得對象的完全控制許可權。
承擔對象所有權的權利。用戶必須是對象受託人。用戶無法將所有權轉讓給其他用戶。
· WriteProperty:通常與特定屬性/屬性信息配對。示例:委託幫助台用戶組修改特定AD對象屬性(如成員(修改組成員身份)),「顯示名稱」,「描述」,「電話號碼」等)的功能。
· CreateChild:提供創建指定類型(或「全部」)對象的功能。
· DeleteChild:提供刪除指定類型(或「全部」)對象的功能。
· 擴展許可權:這是一個有趣的許可權,因為它如果提供了明顯超出範圍的附加許可權。示例:對計算機對象的所有擴展許可權都可以提供對LAPS本地管理員密碼屬性的讀訪問許可權。
Andy Robbin的(@ _Wald0)博文描述了這些許可權可以被濫用的一些方式。
創建和鏈接域中的GPO的能力應被視為有效的域管理員許可權,因為它提供了修改安全設置,安裝軟體,配置用戶和計算機登錄(以及啟動/關閉)腳本以及運行命令的能力。
· 管理組策略鏈接(LinkGPO):提供將Active Directory中的現有組策略對象鏈接到定義許可權的域,OU或站點的功能。默認情況下,GPO創建者的所有者擁有此許可權。
· 創建GPO:默認情況下,AD組的組策略創建者的所有者擁有此許可權。可以通過組策略管理控制台(GPMC)進行委派。
PowerView提供了搜索AD許可權以獲取更多有趣許可權的功能。
SID History
SID歷史記錄是支持遷移方案的屬性。每個用戶帳戶都有一個關聯的安全標識符(SID),用於跟蹤安全主體和連接到資源時帳戶的訪問許可權。SID歷史記錄允許另一個帳戶的訪問許可權被有效的克隆到另一個帳戶。這是非常有用的一種做法,以確保用戶在從一個域移動(遷移)到另一個域時能夠保留原有的訪問許可權。由於在創建新帳戶時用戶的SID發生了更改,所以舊的SID需要映射到新的帳戶。當域A中的用戶遷移到域B時,將在DomainB中創建新的用戶帳戶,並將DomainA用戶的SID添加到DomainB的用戶帳戶的SID歷史記錄屬性中。這樣就可以確保DomainB用戶仍可以訪問DomainA中的資源。
這意味著如果帳戶在其SID History屬性中包含了具有特權的帳戶或用戶組,則該帳戶將分配到這些帳戶或組的所有許可權,不管它們是直接還是間接分配。如果攻擊者獲得對該帳戶的控制權,則它們具有所有相關的訪問許可權。在SIDHistory中通過SID提供的許可權可能不夠明顯,因此很容易發生遺漏。
組策略許可權
此許可權用於在Active Directory中創建,配置和鏈接組策略對象(GPO)。將GPO鏈接到OU時,GPO中的設置將應用於該OU中的相應對象(用戶/計算機)。
可以配置GPO的許可權,將GPO修改許可權委派給任何安全主體。
如果在鏈接到該域的組策略上配置了自定義許可權,並且攻擊者獲得對具有修改訪問許可權的帳戶的訪問許可權,則該域可能會被入侵。攻擊者修改GPO設置以運行代碼或安裝惡意軟體。這種訪問級別的影響取決於GPO鏈接的位置。如果GPO鏈接到域或域控制器容器,則它們擁有該域的完整許可權。如果GPO鏈接到工作站或伺服器OU,則影響可能不太一樣; 然而,在所有工作站或伺服器上運行代碼的能力,可能仍然會導致域被入侵。
掃描GPO許可權可以識別出哪些GPO被不正確地配置,並掃描GPO鏈接在哪裡影響了域的安全性。
一個有趣的事實:組策略的創建者保留了對GPO的修改許可權。可能的結果是域管理員需要為域設置審核策略,但是發現OU管理員已經創建了具有所需設置的GPO。因此,域管理員將此GPO鏈接到將該設置應用於域中所有計算機的根域中。問題是如果該OU管理員帳戶遭到入侵,那麼OU管理員仍然可以修改現在鏈接到根域提供升級路徑的GPO上。下圖顯示了具有GPO編輯許可權的OU管理員「Han Solo」。
PowerView 提供了一種快速掃描所有域的GPO許可權的方法:
Get - NetGPO | %{ Get - ObjectAcl - ResolveGUIDs - Name $ _ 。名稱}
參考: 濫用GPO許可權
用戶許可權分配
用戶許可權分配經常在計算機GPO中進行配置,並定義了計算機的幾個許可權。
域控制器通常配置為在應用了域控制器容器的默認域控制器策略中進行用戶許可權分配。 分析與域控制器鏈接的GPO,可以提供DC和域被提升許可權的安全主體的有關的有用信息。
這些分配的策略包括:
·SeTrustedCredManAccessPrivilege:訪問憑據管理器作為受信任的呼叫者
·SeNetworkLogonRight:從網路訪問此計算機
·SeTcbPrivilege:作為操作系統的一部分
·SeMachineAccountPrivilege:將工作站添加到域
·SeIncreaseQuotaPrivilege:調整進程的內存配額
·SeInteractiveLogonRight:允許本地登錄
·SeRemoteInteractiveLogonRight:允許通過遠程桌面服務登錄
·SeBackupPrivilege:備份文件和目錄
·SeChangeNotifyPrivilege:繞過遍歷檢查
·SeSystemtimePrivilege:更改系統時間
·SeTimeZonePrivilege:更改時區
·SeCreatePagefilePrivilege:創建頁面文件
·SeCreateTokenPrivilege:創建一個令牌對象
·SeCreateGlobalPrivilege:創建全局對象
·SeCreatePermanentPrivilege:創建永久共享對象
·SeCreateSymbolicLinkPrivilege:創建符號鏈接
·SeDebugPrivilege:調試程序
·SeDenyNetworkLogonRight:拒絕從網路訪問此計算機
·SeDenyBatchLogonRight:拒絕作為批處理作業登錄
·SeDenyServiceLogonRight:拒絕作為服務登錄
·SeDenyInteractiveLogonRight:拒絕本地登錄
·SeDenyRemoteInteractiveLogonRight:拒絕通過遠程桌面服務登錄
·SeEnableDelegationPrivilege:啟用計算機和用戶帳戶以進行授權
·SeRemoteShutdownPrivilege:從遠程系統強制關閉
·SeAuditPrivilege:生成安全審核
·SeImpersonatePrivilege:認證後模擬客戶端
·SeIncreaseWorkingSetPrivilege:增加一個進程工作集
·SeIncreaseBasePriorityPrivilege:增加調度優先順序
·SeLoadDriverPrivilege:載入和卸載設備驅動程序
·SeLockMemoryPrivilege:在內存中鎖定頁面
·SeBatchLogonRight:作為批處理作業登錄
·SeServiceLogonRight:作為服務登錄
·SeSecurityPrivilege:管理審核和安全日誌
·SeRelabelPrivilege:修改對象標籤
·SeSystemEnvironmentPrivilege:修改固件環境值
·SeManageVolumePrivilege:執行卷維護任務
·SeProfileSingleProcessPrivilege:配置文件單進程
·SeSystemProfilePrivilege:配置文件系統性能
·SeUndockPrivilege:從工作站中移除電腦
·SeAssignPrimaryTokenPrivilege:替換進程級令牌
·SeRestorePrivilege:恢復文件和目錄
·SeShutdownPrivilege:關閉系統
·SeSyncAgentPrivilege:同步目錄服務數據
·SeTakeOwnershipPrivilege:獲取文件或其他對象的所有權
這個列表中有一些有趣的策略(特別是適用於域控制器的GPO):
· 允許本地登錄並允許登錄遠程桌面服務:提供登錄許可權。
· 管理審核和安全日誌:提供查看事件日誌中的所有事件(包括安全事件)並清除事件日誌的功能。
有趣的事實:Exchange Server需要這樣的許可權,這意味著如果攻擊者在Exchange伺服器上獲得系統許可權,則可以清除域控制器上的安全日誌。
· 同步目錄服務數據:「此策略設置確定了哪些用戶和組具有同步所有目錄服務數據的許可權,而不管對象和屬性的保護。使用LDAP目錄同步(dirsync)服務需要此許可權。域控制器本身就具有此用戶許可權,因為同步過程是在域控制器上的系統帳戶的上下文中運行。「
這意味著在域控制器上對此用戶的訪問許可權可能能夠運行DCSync。
· 允許計算機和用戶帳戶被委託進行授權:提供在域中的計算機和用戶上配置委派的功能。
有趣的事實:這提供了在計算機或用戶帳戶上設置Kerberos委派的功能。
· 驗證後模仿一個客戶端:這個看起來是一些很有趣的東西,它可以...
把它們放在一起
為了有效地識別具有特權訪問許可權的所有帳戶,重要的是要確保所有渠道都被探索以有效地識別許可權。這意味著防禦者需要檢查AD對象的許可細節,從組織單位(OU)開始,然後分支到安全組。
要檢查的事情如下:
·枚舉默認組(包括子組)的組成員。確定需要什麼許可權並刪除其他沒用的許可權。
·掃描Active Directory(特別是OU和安全組)進行自定義委派。
·掃描具有SIDHistory的帳戶(僅在從一個域到另一個域的主動遷移期間才需要)。
·查看適用於域控制器,伺服器和工作站的GPO中的用戶許可權分配。
·查看將AD組添加到本地組的GPO,並確保仍然需要這些組,並且許可權級別是適當的。
用於檢查Active Directory許可權的工具:
· Bloodhound
· PowerView ( Bloodhound中的一個模塊 )
· AD ACL Scanner
參考
· BloodHound 1.3 - ACL攻擊路徑更新
https://wald0.com/?p=112
· 使用PowerView濫用Active Directory許可權
http://www.harmj0y.net/blog/redteaming/abusing-active-directory-permissions-with-powerview/
· 濫用GPO許可權
http://www.harmj0y.net/blog/redteaming/abusing-gpo-permissions/
· 安全描述符定義語言
https://msdn.microsoft.com/en-us/library/windows/desktop/dd981030(v=vs.85).aspx
· Active Directory許可權持久#15:利用AdminSDHolder和SDProp(Re)獲得域管理員許可權
https://adsecurity.org/?p=1906
· 安全描述符定義語言(第1部分)
https://blogs.technet.microsoft.com/askds/2008/04/18/the-security-descriptor-definition-language-of-love-part-1/
· ActiveDirectoryRights枚舉
https://msdn.microsoft.com/en-us/library/system.directoryservices.activedirectoryrights(v=vs.110).aspx
點擊展開全文
※企業安全聯合實驗室發布
※2017網路安全生態峰會:新安全,共擔當
TAG:嘶吼RoarTalk |
※Cisco Webex Meetings桌面應用特權提升漏洞分析
※Sublime、Vim等多款流行文本編輯器存在特權升級漏洞
※對濫用Windows特權文件操作的研究(上)
※仙劍奇俠傳online VIP1特權的詳細解析
※如何pick「外掛」 的購物技能?super會員2%特權了解一下
※助威Ti9!入手神舟GeForce圖靈顯卡遊戲本可享特權
※Sublime、Vim 等多款流行文本編輯器存在特權升級漏洞;美 35 個州及哥倫比亞特區決定自行立法
※Facebook一工程師被解僱:利用訪問數據特權騷擾女性
※Facebook COO麻省理工學院演講:不確定性是年輕人最大的特權之一
※Facebook為扎克伯格開特權,單獨刪除與其他人的聊天記錄
※Hello語音上線DNF遊戲匹配功能 特權中心送豐厚大禮
※「五一檔」三天電影票房超9.3億,迪士尼將為Twitter提供直播特權,IKEA又雙叒叕跨界合作了
※特權賬戶威脅分析-Gartner遴選2018十大安全項目之特權賬號風險控制
※「熊貓」購買特權今日開放!AJ13 「He Got Game」 本周中國發售
※Angelababy被嘲搞特權?大姨媽期間的壞習慣,99%的女生都不知道!
※DOTA2推出包月會員服務「刀塔Plus」,可提供特權道具和數據分析
※「熊貓」國區購買特權今日開放!AJ13 「He Got Game」 本周中國發售
※醉了!Facebook COO:用戶需要付費才有特權徹底阻止我們用數據
※微軟將為Azure AD特權賬戶啟用強制性多因素身份認證
※zBang:可檢測潛在特權帳戶威脅的風險評估工具