这里介绍一种比较Tricky的绕过域账号本地安全限制的方式。
利用Powershell DSC执行时使用LocalSystem权限的特点,进而可以通过域账号或者域ServiceAccount(具有administrator权限), 绕过域账号安全限值,进行本地最高权限账户才能进行敏感操作。如之前
在域账号的PSSession(WSMan)中执行相关“不受限”的操作,如
使用SQLPS中的IntegratedSecurity登陆SQLServer, 修改LUA, 操作System32目录,或者使用域账号进行本地wmi 永久事件注册, 等等
首先你需要了解下 Powershell DSC, 不了解的同学也可以不去深究它, 感兴趣的同学可以参考 专题:
或者微软 https://docs.microsoft.com/en-us/powershell/dsc/overview
先来看一个例子, 这是一个简单的DSC Configuration. 由Configuration关键字声明的一个 'LocalTest' 的实例,这个是配置实例将被配置在localhost 这个Node(server)上。
在localhost这个配置节点中,只有一个Script Resource的实例,实例名为ScriptNameForThisResource。
Script 这个Resource可以用来执行任意脚本,而且是合法的。我们只需要将想要执行的脚本放在TestScript中就OK.
if(-not (test-path "c:\dsc")){
New-Item -Path c:\ -name dsc -type directory
}
configuration LocalTest{
Import-DscResource –ModuleName 'PSDesiredStateConfiguration'
Node localhost
{
Script ScriptNameForThisResource {
GetScript = {$null}
TestScript ={
Write-Verbose "Current User is $($env:USERNAME)"
Write-Verbose "This is a local