有没有办法审计特定密码的 AD?

8 security windows active-directory group-policy

有没有办法可以审计 AD 以检查特定密码?

我们曾经为所有新用户使用“标准”密码(例如MyPa55word)。我想确保这在我们庄园的任何地方都不再使用。

我认为如何做到这一点的唯一方法是 a) 以某种方式为具有此密码的任何用户审核目录,或 b) 设置一个专门禁止此密码的 GP(理想情况下,这将提示用户重置他们的密码。 )

任何人都对我如何解决这个问题有任何建议?

塔,

Kar*_*fia 8

没有查看用户密码的官方方法(有可能,但您必须深入研究...安全实用程序)。最好从密码时代的角度来解决这个问题。听起来好像您可以将用户创建日期与上次更改密码的日期进行比较,如果匹配,请切换“下次登录时更改密码”字段。


Eva*_*son 1

这里有一些想法——它们都不是很好(从它们可能引发防病毒或入侵检测警报的角度来看):

  • 您可以将密码哈希从 Active Directory 中转储出来,然后对其运行密码破解程序。该隐和亚伯可以为你破解。您可以使用 fgdump 获取哈希值。请注意——这两个实用程序可能会在您的防病毒软件中敲响警钟。

  • 您可以编写一个简单的脚本来迭代用户列表的输出,使用“NET USE”命令检查有效密码。使用这样的东西:

    @回声关闭

    rem 将“驱动器”“映射”到进行密码测试的目标路径
    设置 DESTPATH=\\SERVER\Share
    rem 用于“映射”“驱动器”以进行密码测试的驱动器盘符
    设置驱动器字母=Q:

    rem 要测试的 NetBIOS 域名
    设置域=域

    rem 包含用户名列表的文件,每行一个
    设置用户列表=用户列表.txt

    rem 测试密码
    设置密码=MyPa55word

    rem 输出文件
    设置输出=输出.txt

    如果存在“%DRIVE_LETTER%\.” 转到_letter_used

    对于 (%USERLIST%) 中的 /f %%i 执行 (
        net use %DRIVE_LETTER% %DESTPATH% /USER:%DOMAIN%\%%i %PASSWORD%

        如果存在“%DRIVE_LETTER%\.” echo %%i 密码是 %PASSWORD%>>%OUTPUT%

        净使用%DRIVE_LETTER%/ d / y
    )

    转到结束

    :_字母_使用
    echo %DRIVE_LETTER% 已在使用中。将其更改为可用驱动器号并重新运行。

    :结尾

将用户列表放入“userlist.txt”(每行一个用户名),设置脚本顶部的变量以引用用户应该能够将“驱动器”“映射”到的路径,并确保您运行它的 PC 没有任何其他“驱动器”“映射”到目标服务器(因为 Windows PC 一次只允许使用一组凭据用于 SMB 客户端与给定服务器的连接)。

就像我说的——任何一种方法都可能不是一个好主意。>微笑<