当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 检测 Active Directory 中的委派权限

作者:精品下载站 日期:2024-12-14 06:12:31 浏览:13 分类:玩电脑

检测 Active Directory 中的委派权限


Active Directory 中的安全权限可能是一个棘手的话题。默认情况下,Microsoft 不仅在“用户和计算机”中向您隐藏它们,而且也没有内置工具来全面了解如何将权限应用于 AD。

在本文中,我将带您了解委派、删除权限、使用内置工具查找已委派的权限的基础知识,最后介绍扫描 AD 的自定义 PowerShell 脚本。

为什么要委托?

想象一下,您是一家大公司的负责人,该公司有多个部门:财务、人力资源、销售、高层管理人员。如果每个忘记密码的用户都必须致电 IT 帮助台,那么您将被大量电话淹没。

相反,您可以将权限委托给每个部门的负责人,以便他或她可以重置自己团队的密码。

委派的另一个经典用例是员工能够互相发送电子邮件——可以是共享邮箱,也可以是 PA 代表其老板发送电子邮件。

给每个人域管理员?

您可能会想,好吧,让我们为每个部门主管授予域管理员权限,然后他们可以在需要时重置密码。

虽然这在技术上是正确的,但他们将能够做你能做的任何事情——包括访问用户数据。数据泄露正在发生!

AD中如何委派权限

当然,实现这一目标的正确方法是使用委托。这将允许您单独选择要授予的权限。

1. 打开 Active Directory用户和计算机并连接到您最喜欢的测试域。

2. 右键单击您希望授予重置密码权限的部门组织单位。

3. 找到“委派控制”选项(这应该是列表中的第一个选项)。单击此按钮并按下一步。

[玩转系统] 检测 Active Directory 中的委派权限

4. 现在,系统会提示您选择要向其委派控制权的用户或组 - 这些是您希望能够执行任务的人员。
强烈建议您为要委派的每组权限创建一个安全组(即“销售 - 密码重置能力”、“HR - 密码重置能力”)。这使您将来可以非常轻松地从这些组中添加/删除用户,而不是直接搞乱权限。

5. 继续添加群组。 (下图中我添加了我们的高级管理团队。)

[玩转系统] 检测 Active Directory 中的委派权限

6. 按“下一步”,然后选择“重置用户密码并在下次登录时强制更改密码”选项。

7. 按“下一步”,然后按“完成”——大功告成!

删除 AD 中的委派权限

现在您已经完成了向导,您可能想知道如何检查您是否确实委派了权限以及如何再次删除它们。

1. 从用户和计算机中,按“查看”菜单并确保选中“高级功能”。

[玩转系统] 检测 Active Directory 中的委派权限

2. 通过勾选此框,当您选择 Active Directory 中对象的属性时,您可以看到安全选项卡。
右键单击您刚刚委派权限的同一 OU,然后选择“属性”,然后选择“安全”选项卡。

3. 选择“高级”,然后上下滚动,直到找到您刚刚授予权限的组。您应该会看到“访问”下列出的“重置密码”权限。

[玩转系统] 检测 Active Directory 中的委派权限

4. 如果您想删除此权限,可以选择它并按“删除”,但暂时保留它并按“取消”。

正如您所看到的,找到委派的权限非常困难,尤其是当您认为您不仅可以委派给 OU,还可以委派给安全组,甚至可以委派给用户对象本身时。

权限搜寻(使用 DSACLS)

因此,您需要考虑的一个噩梦场景是有人重置了老板的密码,您需要找出谁有权这样做。 (如果您安装了 Netwrix Auditor,您可以查看其中,但现在我们假设您没有安装。)

1. 在“用户和计算机”中,导航到您要检查其权限的用户对象。

2.右键单击并选择“选择属性”,然后选择“属性编辑器”

3. 滚动并双击“distinguishedName”。复制此字符串以供稍后使用。

[玩转系统] 检测 Active Directory 中的委派权限

4. 打开命令提示符并输入“dsacls”,然后粘贴刚刚复制的字符串,并用语音标记括起来:

[玩转系统] 检测 Active Directory 中的委派权限

5.按回车键。

6. 此时,您可能会意识到屏幕上的权限太多 - 您有两个选择:

A。在命令末尾使用 |more 可一次完整显示一个屏幕。

b.将输出通过管道传输到文本文件中,并使用 > filename.txt 读取该文件。

7. 我选择了第二个选项,用记事本打开文件,最终发现高级管理组有权限重置老板的密码!

[玩转系统] 检测 Active Directory 中的委派权限

权限搜寻(使用PowerShell)

现在您已经发现了委派,您可能想知道是否有任何您不知道的委派——无论是来自过去的员工还是恶意的管理员。

我编写了一个简短的 PowerShell 脚本,它将搜索每个可委托对象类型并列出两个常见的权限委托 - 重置密码和“发送为”(来自 Exchange)。

以下是从域运行的示例:

[玩转系统] 检测 Active Directory 中的委派权限

要在您自己的域上使用此脚本:

1. 打开Active Directory 用户和计算机并导航到您正在调查的域(或组织单位)。

2. 右键单击它并选择属性。

3. 在“属性编辑器”选项卡中,查找“distinguishedName”属性。

4. 选择它并按查看,然后复制LDAP 路径。稍后您将需要这个。

5. 从 GitHub 下载脚本的副本:

https://raw.githubusercontent.com/thephoton/activedirectory-delegation-searcher/master/search.ps1

6. 右键单击并使用 PowerShell ISE 编辑脚本。

7. 编辑第 6 行 ($bSearch=...)将 DOMAINCONTROLLER 替换为您域的 DC 之一的名称。

8. 编辑第 6 行,将 LDAP 替换为您在步骤 4 中复制的路径。

9. 保存脚本并按运行。

10. 让脚本搜索您的 Active Directory;控制台中会报告进度,完成后您将收到一个弹出窗口,详细说明已委派权限的对象 - 您可能会感到惊讶!

如果您需要有关如何检测谁修改了 Active Directory 中的权限的更多信息,请查看我们的操作方法。 Netwrix 还提供了一款免费工具,可以提供可操作的见解,了解谁对 Active Directory 和文件共享中的内容拥有权限。

享受!

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯