管理域中所有机器的本地管理员密码更改的行业标准方法是什么?

管理域中所有机器的本地管理员密码更改的行业标准方法是什么?

虽然似乎有三种可用选项,其中一种实际上是安全的,但似乎只有两种可用选项能够影响在更改时未开机或在更改时未在网络上的移动计算机。 这两个选项似乎都不是安全的选项。 我知道的三个选项是:

  1. 带有 .vbs 的启动脚本
  2. 使用组策略首选项的 GPO
  3. Powershell 脚本作为计划任务。

我放弃了 Powershell 选项,因为我不知道如何有效地定位/迭代,并放弃已经更改的机器、网络上的所有机器以及这会对不必要的网络开销产生什么影响,尽管它可能是最好的可用解决方案,因为密码本身可以存储在 CipherSafe.NET(第三方解决方案)容器中,而密码会传递给目标机器的脚本。我还没有检查 Powershell 是否可以从本地 Windows 机器的凭据管理器获取密码以在脚本中使用,或者是否可以在那里存储密码以供脚本使用。

.vbs 脚本选项不安全,因为密码以明文形式存储在 SYSVOL 共享中,网络上的任何域计算机都可以访问该共享。任何想要找到后门的人,只要坚持不懈,用一点 Google 就能找到后门。

GPO 选项也不安全,正如 MSDN 注释中指出的那样:http://code.msdn.microsoft.com/Solution-for-management-of-ae44e789

我正在寻找一种非第三方解决方案,我认为该解决方案应该可用或能够在正确的知识或指导下在内部开发。

答案1

我要继续并将我的评论提交给 answertown。

必须是第三方。正如您已经指出的那样,您提到的三个选项都不是最佳的。微软并没有提供完美的方法。根本没有。它将是第三方,而且几乎肯定会要求您在所有客户端上安装软件代理。

我为这个确切的问题开发了一个解决方案(除了它可以同时在许多林和域中工作),并且它确实涉及 VBscript,以最大程度地兼容尽可能多的不同版本的 Windows,以及一些 C# 位,以及第三方软件代理,幸运的是,公司已经在将其用于监控目的,因此已经安装在每台我能够利用的机器上。

或者,您可以通过 GPO 禁用所有本地管理员帐户,这很常见。但是,如果该域成员的域同步出现问题,那么恢复将比您拥有恢复“本地管理员”帐户更麻烦。

编辑:只是为了澄清一下:当您说“正在寻找非第三方解决方案,应该能够在内部开发……”时,我感到很困惑。在这种情况下,我会将任何不是由微软编写的东西视为 Windows 的内置组件“第三方”。您能否使用一些巧妙的代码来实现这一点,这些代码使用 TLS 网络通信并将机密存储在 SQL Server 数据库中,并使用透明数据加密和一些复杂的哈希函数为每台机器生成唯一的密码?是的。它是否内置在 Windows 中,您无需付出任何努力?不。:)

答案2

那么对于 GPO 选项,您指出的 Microsoft 文章(http://code.msdn.microsoft.com/Solution-for-management-of-ae44e789) 在其文档(下载 Documentation.zip 文件)中指定了以下内容:

密码从托管计算机传输到 Active Directory 受到 Kerberos 加密保护,因此无法通过嗅探网络流量来知道密码。

详细技术规范 - 本地管理员帐户密码管理 - 第 5 页

也许文章定义尚未更新,所以我建议你看一下文档,也许在嗅探流量时做一些测试,这样你就可以确定了。

相关内容