有没有办法我可以审计AD来检查一个特定的密码?
我们曾经为所有新用户使用“标准”密码(例如MyPa55word )。 我想确保在我们遗产的任何地方都不再使用它。
唯一可以考虑如何做到这一点的方法是:a)以某种方式审核目录中的任何用户使用此密码或b)设置一个GP,明确禁止此密码(理想情况下,这将提示用户重置密码。 )
任何人有任何提示,我可以如何处理这个?
钽,
本
这里有几个想法 – 他们都不是非常好(可能会引发反病毒或入侵检测报警):
您可以将密码哈希转储出Active Directory并对其运行密码破解程序。 该隐和亚伯可以为你开刀。 您可以使用fgdump获取哈希值。 注意 – 这两个工具可能会在防病毒软件中引发警钟。
您可以编写一个简单的脚本来迭代用户列表的输出,使用“NET USE”命令检查有效的密码。 使用这样的东西:
@echoclosures
rem目的地path“映射”一个“驱动器”以进行密码testing
设置DESTPATH = \\ SERVER \ Share
rem驱动器盘符用于“映射”“驱动器”以进行密码testing
SET DRIVE_LETTER = Q:
重新NetBIOS域名进行testing
设置DOMAIN = DOMAIN
rem包含用户名列表的文件,每行一个
SET USERLIST = userlist.txt
rem密码来testing
SET PASSWORD = MyPa55word
rem输出文件
SET OUTPUT = output.txt
如果存在“%DRIVE_LETTER%\”。 goto_letter_used
for / f %%我在(%USERLIST%)做(
net use%DRIVE_LETTER%%DESTPATH%/ USER:%DOMAIN%\ %% i%PASSWORD%
如果存在“%DRIVE_LETTER%\”。 echo %%我的密码是%PASSWORD%>>%OUTPUT%
净使用率%DRIVE_LETTER%/ d / y
)
转到最后
:_letter_used
回声%DRIVE_LETTER%已被使用。 将其更改为一个空闲的驱动器号并重新运行。
:结束
把用户列表放到“userlist.txt”(每行一个用户名),设置脚本顶部的variables来引用用户应该能够“映射”一个“驱动器”的path,并确保你正在运行它的个人电脑没有任何其他“驱动器”“映射”到目标服务器(因为Windows PC一次只允许一组证书用于SMB客户端连接到给定的服务器)。
就像我所说 – 任何一种方法可能都不是一个好主意。 >微笑<
没有官方的方式来查看用户密码(这是可能的,但你必须深入研究…安全工具)。 从密码年龄angular度来看,这可能是最好的办法。 听起来好像您可以比较用户创builddate和上次更改密码的date,如果匹配,请切换“下次login时更改密码”字段。
创build一个共享,在networking使用时要求您input密码。 然后编写一个脚本,试图映射与所有用户名和默认密码共享。 这种方式没有login是nessecary,你不会违反政策
你应该看看John the Ripper – 它是一个密码破解工具。 您可以在字典攻击模式下运行它,该模式从文本文件中获取密码列表。 您的单词列表可能只包含您的默认密码。
应该是相当快,可能比共享+连接通过提供密码脚本更快。
您可以尝试find一种方法来脚本login尝试共享或资源,将尝试列表中的每个用户的“标准”密码,如batch file的方法,然后logging哪些是成功的。 但是,如果您不是拥有大量账户的大型企业,那么对于单个审计来说,这将会是很多工作。 可能有一些灰帽子安全公用事业,但我不知道你有多信任他们。
您可以通过基于字典的攻击(l0phtcrack?)获得密码审计实用程序,并将默认密码用作自定义字典。 这可能使事情变得更快,更容易。
由于这些工具可以帮助受到伤害,所以这变得非常危险。 即使您将其用于合法目的,某些恶意软件扫描程序也会将其标记出来。 Windows并没有太多内置的pipe理员密码检查工具,因为它是专门设置的,以便pipe理员可以重置或空白密码,但不知道“丢失”或“忘记”的密码是什么。
我会设置强制密码历史logging到一个很高的数字(比如说10),或者把我的密码年龄降低到30或者给所有用户编写一个到期密码。 接下来要做的是查看服务帐户并重置密码。 如果你有一个大的环境,这将是痛苦的(因此在2008年新的托pipe服务帐户)。 我同意巴特在可以检索密码的实用程序往往比他们的价值更麻烦。 希望你处于一个让你定期使用密码的环境中,只要你有密码历史logging,这个密码肯定会消失。
过去我使用pwdump 6来转储密码哈希值。
用密码提前创build一个帐户。 如果用户使用相同的密码,那么为用户输出的密码散列应该是相同的。 只要确保你有权限,因为密码散列是敏感的,因为有像几英寸的彩虹表这样的工具,并允许人们从哈希中find用户的密码。
Linux和unix系统会阻止彩虹表,因为它们经常添加盐分,以确保一个系统的散列表不能用于第二个系统。
我曾在一家大公司审计过,他们build议我们在设置用户时不要再提供常用密码,因为他们通常也会得到小组任务 – 这意味着有人知道约翰·史密斯正在启动,可能会尝试用约翰·史密斯的标准用户名login标准密码。
标记