0x00 admin / ADMIN 大小写用户名密码一致的可能性
在很多遇到的站点中都存在着这样一种情况,admin 和 ADMIN 的用户密码是一致的,当然如果当前用户不存在admin用户时,也可以去试试ADMIN这种用户,在实战中遇到的也不是少数
0x01 抓成功登录的数据包,可能会有一些意外的收获
这是目标站点,通过用户名枚举,拿到如下账号,(下面这三个是在登录进入之后继续收集的)
通过 006 / xxxxxx 登录成功
先查看返回包,可以看到一堆东西,看到我们对应的loginName 是对应的jobNumber,而又出来个新的loginName,我们把它拿下来 作为新账户继续登录,中文名也可以去尝试,此外还有email 和 mobile 都可以作为账户,最后的结果都是成功的
qixxxxxxxa / xxxxxx
9xxxxxxqq.com / xxxxxxx
1xxxxxxx7 / xxxxxx
traceAdmin / xxxxxx
最终多了好几个口令,从一个弱口令直接变成了风险,翻了2倍的分数
0x02 根据 目标系统信息 猜测账号和密码
xx系统管理后台,根据xx 来猜测是否可能存在 xxadmin 或者 xadmin 这种情况
xq xxxqiao 这种账号
当有这种提示的时候,首先想到的是进行一个信息收集,有时候也可以换一个思路
如果我们是管理员,那我们的密码是不是也遵循着上面通知的那个格式,但又因为是管理员,密码会不会有一点不一样呢?
然后是下一个例子,这里直接拿乌云上以前的一个案例来说明:
管理员 admin , 密码为主域名
这里还有个例子,根据目标系统产品公司来猜测账号密码:
假如产品公司域名为 product.com ,旗下的产品为 xx系统, 一般来说都是直接根据 product.com 和 xx 来生成账号密码,比如 admin / product@xx , 这里xx 有很多种可能,根据拼音的简写或者对应的英语单词等,这里补充一个小技巧,可以去产品公司官网看看 xx 系统有没有内部的简称,也许这就是默认口令呢!
0x03 账号和密码相同的情况
这种情况也挺常见,主打的就是一手好记:
zhangsan/zhangsan
lisi/lisi123
wangwu/wangwu
1/1
0/0
15301001/15301001
0001/0001
0x04 根据目标的报错来猜测
开局一张图:
首先思路都是先看看会不会存在用户名枚举,输入一个错误的账号和密码,网站直接提示账号不存在,然后直接开始跑弱口令,我相信很多师傅也都是这个思路,因为这个没有验证码限制,就算没有用户名枚举直接暴力跑字典也不是不行,我说的这个小提示其实也不能说很通用,因为当时我也是误打误撞,这里直接输入密码不输入账号,看页面的回显
这样就确定了用户名是手机号的形式,然后根据目标所在地区生成对应的手机号字典开始跑,也在一定程度上提高了效率。