首先,我必须提供一些背景信息。
我可以通过在键“ HKLM \ SYSTEM \ CurrentControlSet \ Services \ PROCMON24 \ Instances \ Process Monitor 24 Instance”中进行两次更改来将procmon设置为在非默认高度运行:
更改高度的原因很明显。添加特殊权限的原因并不那么明显:没有此命令,只会将Altitude重置为其默认值。
好的,这是我的问题:
我无法以编程方式删除添加的权限或更改该键或其值。这并不奇怪,因为该许可会拒绝“所有人”进行访问。
但是我可以使用regedit轻松删除该权限。我只是选择权限并将其删除。
那么regedit使用什么技巧来覆盖该权限?
我可以看到它以当前用户的身份运行,而不是“ SYSTEM”。我可以使用psexec以“ SYSTEM”的身份运行删除脚本,但这也被拒绝访问。
答案 0 :(得分:0)
回想起来,很明显,regedit没有使用任何特殊技巧或特权来删除“拒绝所有人” ACE。有问题的ACE不会拒绝对注册表项进行 all 操作。它只是否认“删除”和“设定值”。有了ACE,甚至regedit都无法删除或设置值。也就是说,它无法通过“删除”或“设置值”访问来打开密钥。
regedit 可以可以做的是打开具有write-dacl访问权限的密钥。有问题的ACE不会否认这一点。
一旦regedit(或任何其他程序)以具有写dacl访问权限打开密钥,它便可以删除有问题的ACE,然后对密钥进行任何其他所需的更改。
Do!