域环境下特定提权之GPP权限提升
域环境下特定提权之GPP权限提升

域环境下特定提权之GPP权限提升

GPP基础知识

组策略首选项

GPP 是 “Group Policy Preference”(组策略首选项)的缩写。组策略首选项是微软Windows操作系统中的一种功能,它允许管理员为用户和计算机定义和管理配置设置,这些设置可以通过组策略在域环境中进行集中管理。

组策略首选项包括以下几类设置:

  1. 软件设置:允许管理员指定软件安装的配置,包括强制安装、可用安装和更新。
  2. 桌面设置:管理用户的桌面环境,如屏幕保护程序、壁纸、任务栏设置等。
  3. 网络设置:配置网络相关的设置,例如网络驱动器映射、网络路径等。
  4. 安全设置:定义安全策略,如密码策略、账户锁定策略、Kerberos策略等。
  5. 用户配置文件设置:管理用户配置文件的属性,如漫游配置文件、本地配置文件等。
  6. 注册表设置:允许管理员通过组策略修改注册表项。

SYSVOL文件夹

SYSVOL是AD域中一个用于存储域中公共文件服务器副本的共享文件夹,在域中的所有域控制器之间进行备份。SYSVOL文件夹在安装Activi Directory时自动创建的。主要用于存储与域相关的数据,包括但不限于组策略设置、登录脚本等。以下是关于SYSVOL文件夹的一些关键点:

  • 共享设置存储:SYSVOL文件夹包含了共享的设置,例如DNS配置、域安全策略等 。
  • 组策略对象(GPO):存放用于控制用户和计算机行为的组策略对象 。
  • 脚本存储:SYSVOL还存储了可以用于自动执行任务的脚本 。
  • 域控制器间复制:如果域内部署了多台域控制器,它们之间通过文件复制服务(FRS)或分布式文件系统复制(DFS-R)服务相互复制SYSVOL文件夹中的数据 。
  • 结构组成:SYSVOL文件夹包含Domain文件夹,用于存储策略实体、策略和脚本;以及Staging交换区域,用于临时存放多台域控制器之间需要同步的数据。
  • 重要性:SYSVOL文件夹对于Active Directory的正常运作至关重要,它确保了域策略和登录脚本在所有域控制器上的一致性

GPP提权技术思路

GPP权限提升漏洞原因

GPP提权的场景在于,在正常的工作场景下,域环境下登录域需要使用域用户,域管理为了本地机器的安全就需要对本地管理员用户设置强口令,域管理员又不可能对每一台电脑手动设置本地管理员密码,所以通常会采用域策略的方式设置统一的本地管理员密码,而下发到每台电脑就需要通过SYSVOL共享文件夹,又由于所有机器对该文件夹都有读权限,这样攻击者拿到一台机器后就可以读取SYSVOL文件夹下对应的策略文件,在SYSVOL文件夹下找到包含cpassword的XML文件,该文件中记录了AES-256加密后的密码,不过在2012年微软公布了密钥,这就导致了XML文件中的密码安全性极大降低。

GPP权限提升漏洞利用方式

使用PowerSploit提供的Get-GPPPassword.ps1脚本获取cpassword。

使用MSF中post/windows/gather/credentials/gpp模块可以获取cpassword。

使用Empire中privesc/gpp查找cpassword

除了Groups.xml,还有几个组策略首选项文件中有可选的cpassword熟悉:

  • Services\Services.xml
  • ScheduledTasks\ScheduledTasks.xml
  • Printers\Printers.xml
  • Drives\Drives.xml
  • DataSources\DataSources.xml

GPP权限提升漏洞及防范

在用于管理组策略的计算机上安装KB2962486补丁

限制SYSVOL文件夹访问权限

把包含组策略密码的XML文件从SYSVOL文件夹中删除

需要管理本地管理员密码时使用LASP

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注