弱口令漏洞
弱口令漏洞是指应用系统的账号密码过于简单,容易被猜测或破解。在一些攻防演练中 除了0day、钓鱼以外也就是弱口令缓解下坐牢压力了,弱口令yyds
普通型弱口令
数据库
账号:root
密码:root、root123、123456
tomcat
账号:admin、tomcat、manager
密码:admin、tomcat、admin123、123456、manager
jboss
账号:admin、jboss、manager
密码:admin、jboss、manager、123456
weblogic
账号:weblogic、admin、manager
密码:weblogic、admin、manager、123456
条件型弱口令
名字+生日
手机号
等
爆破工具
Burpsuite
burp自带爆破模块 intruder
,可用于口令爆破
这里以DVWA靶场为例,演示burp爆破过程
随意输入,尝试登录,开启代理拦截
浏览器代理插件 foxyproxy 开启代理127.0.0.1:8080
(burp默认代理端口如果没有 请添加)
抓取到数据包
右键 将数据包发送到 burp爆破模块(intruder)
burp爆破模块(intruder)会自动为所有变量添加$$符号
点击clear$
去掉变量的$$符号(因为我们只需要爆破密码,其他是固定的)
去除后,再为我们想要爆破的变量参数添加上$$(点击Add$)
确定爆破的变量后,我们再选择爆破模式
四种模式分别为:Sniper
、Battering ram
、Pitchfork
、 Cluster bomb
(推荐使用)
Sniper(狙击手)
作为比较常用的模式,Sniper的作用是对其中选定的参数一个一个依次遍历字典并且替换然后测试
Battering ram(攻城锤)
不同于sniper,Battering ram是两个参数同时进行遍历一个字典的
Pitchfork(草叉模式)
Pitchfork作为多字典,他的特点也非常明显,就是多个字典同时进行,与Battering ram有些相似之处,但是一个是多个人跑一个赛道,而一个是多个人,各有各的赛道。如果两个字典都是7行数据那么就爆破七次,两个字典不一致按照行数少得字典来,设置两个字典,但是注意两个字典不能一样不然和攻城锤模式一样了
Cluster bomb(集束炸弹)(推荐爆破时使用)
看了前面的三种模式,是不是都觉得能够解决的破解情景都很局限呢,而Cluster bomb兼备了前面三种模式的所有的功能,那就是全部遍历,不放过所有情况,但是在超大字典的情况下,运算能力就限制了Cluster bomb模式的发挥,所以只要算力足够,那爆破出密码就不是问题。
多参数做笛卡尔乘积模式爆破多个密码本对应多个位置,交叉组合,每一个密码本里的密码都对应于另一密码本所有密码。即dict1的第一个密码和dict2的每个密码进行组合爆破。(排列组合的问题)
两个参数,此操作会计算两个的payload 的笛卡儿积。
比如
pl1:1,2,3
pl2:4,5,6
那么第一次爆破为 1,4
第二次为1,5
以此类推
1,6
2,4
2,5.。。。。。。
选择完模式后 再点击Payloads
设置攻击字段(遍历用到的字典)
点击 load 加载自定义的字典
选择字典
点击start attack
开始遍历爆破
开启爆破后,会弹出 攻击结果的小窗口,点击长度排序(length)或者状态码排序(status) 快速定位 正确的密码(参数)
Hydra工具
常用参数
-l 指定用户名
-L 指定用户名字典
-p 指定密码
-P 指定密码字典
-vV 显示爆破细节
-o 保存爆破结果。
-t 线程 默认线程为16
※注意:如果线程过大,会导致hydra崩溃
-e nsr
-e下的三个选项
n是null --空密码试探
s是same --密码与用户名一致
r是反向 --将用户名倒置 如:用户名是root 倒置为toor。
使用举例
用户名已知 ,爆破密码
hydra -l admin -P 密码字典路径 ssh://服务器iphydra -l admin -P 密码字典路径 rdp://192.168.100.622
密码已知,爆破用户名
hydra -L 用户名字典 -p password rdp://服务器ip
用户名未知、密码未知
hydra -L 用户名字典 -P 密码字典路径 rdp://服务器ip
Yakit
官网
使用界面
字典
Fuzz_dic
https://github.com/7hang/Fuzz_dic
Pentest_Dic
https://github.com/cwkiller/Pentest_Dic
PentesterSpecialDict