標題:組策略與ACL

taibeihacker

Moderator

组策略的部署及下发原理​

本地組策略和域內組策略
域服務器如何存儲組策略
組策略的下發和獲取
客戶端如何存儲組策略

Server Manager 的组策略管理工具​

更專業的組策略管理工具GPMC,可以管理多個域
創建並編輯組策略的內容
組策略分作主機策略和用戶策略,machine和users目錄;
腳本類型和非腳本類型, script目錄
管理組策略的應用範圍(演示)

组策略的存储​

存儲在服務器中,\domain\sysvol\policies,以明文方式存儲為xml、ini、inf等文件
對域內所有用戶開放讀權限

组策略的更新​

客戶端每90分鐘主動獲取一次組策略,檢查組策略是否發生變更
客戶端使用gpupdate /force強制立即檢查組策略
參數可以分為主機和用戶,gpupdate /force /target:computer

组策略的下发和获取​

組策略的查詢原理:
LDAP檢索所有的組策略,那些屬於自己的
查詢組策略,服務器決定需要返回哪些策略(版本號是決定的重要因素)

ACL 访问控制链​

Access Control Link​

Windows安全對象的ACL
所有的Windows對像都稱為安全對象,文件、進程、註冊表、內存等
為每個安全對象賦予一個安全描述符(Security descriptor)
Security identifiers (SIDs)for the owner and primary group of an object
A DACL that specifies the access rights allowed or denied to particular users or groups
a SACL that specifies the types of access attempts that generate audit records for the object

DACL​

DACL由多個ACE(Access Control Entry)組成
20190724213505.png-water_print

Windows 的访问控制​

Windows的訪問控制包括三部分:訪問令牌、對象安全描述符和訪問檢查
訪問令牌作為一個容器,通過Token體現
對象安全描述符表示目標對象的安全屬性,通過安全矩陣詳細描述該對象賦予不同用戶組的權限
訪問檢查表示通過比較訪問令牌和ACL,以決定該進程是否具有訪問時申請的相應權限
20190724213519.png-water_print

Windows中高權限服務、進程所擁有的文件、目錄如果存在著ACL設置不當,對低權限用戶開放了“寫”甚至“執行”權限,低權限用戶可以通過修改、替換文件內容來達到執行指定代碼的目的。例如Windows的System332目錄如果開放了寫權限,則可以向目錄寫入一個DLL,等待系統重新啟動是,由Svchost等程序加載即可實現權限提升(演示)

ACL 安全审计​

Sysinternalsuit提供的accesschk.exe可以對指定的目錄、文件進行ACL檢查,命令為accesschk.exe -w -s directory 其中directory為需要檢測的目錄
accesschk.exe,可以審計進程對所有用戶組開放的權限。採用規則accesschk.exe -ppid可以獲取某個進程開放的權限,其中pid可以用‘*’代,表示檢測所有進程對不同用戶組開放的權限。為了保證正常運行,運行Taccesschk.exe時需要較高的權限
20190724213529.png-water_print

利用​

進程ACL漏洞的利用方法

第一种​

通過OpenProcess獲取進程句柄,並將目標代碼寫入該進程空間中,以該進程的權限運行這些代碼,運行代碼權限為該進程權限;

第二种​

通過OpenProcess獲取進程句柄,再通過OpenProcessToken獲取該進程的Token,並利用該Tokeni通過CreateProcessAsUser新的進程,新的進程權限和目標進程權限一致。
20190724213426.png-water_print
20190724213552.png-water_print

注册表的 ACL​

註冊表中的啟動項、服務加載項如果對低權限用戶開發了寫權限,低權限用戶可以向這些表項寫入指定的文件,等待系統重新啟動後實現權限提升
使用命令accesschk.exe -w -s -k HKLM,表示遞歸的掃描HKLM中開放了寫權限的表項
 
返回
上方