漏洞挖掘之爆破的艺术
oxo1 暴力破解偶遇302跳转
在进行暴力破解登录框的时候、发现第一个验证码是正常的、后面全部验证码错误、查看302的返回包
尝试直接用上方这个链接爆破、发现此链接可以直接绕过验证码来进行暴力破解。(成功的图当时没保存)
然后顺带讲一下,有时候爆破会遇到多个302跳转BurpSuite有一个设置可以跟随跳转
oxo2 暴力破解用户名的方法
爆破用户名的位置:登录、注册、忘记密码。如果能注册、在成功登录后修改密码处也有可能可以爆破用户名。
随手输入一波账号和密码、提示用户名或密码错误。你看到这里你以为不能先遍历用户名是否存在、再爆破密码了?这可不一定
当你输入存在的用户名、他居然提示了你输入错误的次数、从而暴露了这个用户名是存在的
有时候他返回包是一个数字然后前端给解析一下返回到页面上、你也可以直接先看一下前端有哪些返回情况、然后快速定位到相对应的JS文件。
例如:下方验证码错误
这里使用的是火狐、查看元素(F12)、调试器、所有文件中查找
把前端提示的内容进行搜索
可以看到 case "-7" 参数、说明是可以用来爆破用户名的
有时候Web端可能需要验证码爆破、但是绕不过验证码、如果有相关APP、不妨试试APP会有惊喜呢
oxo3 暴力破解绕过IP限制
当你爆破出用户名后你要爆破密码而他有这个限制、那么你没辙了吗
总有些开发只是为了防止别人爆破密码设置了这个提示、并不一定直接将这个账号锁定。那么我们只要再设置一个X-Forwarded-For头就可以轻松绕过了
这里推荐一款Burp插件:fakeip
oxo4 暴力破解参数的惊喜
在一次众测中、验证码绕不过、别验证码这验证码识别成本有点高而且众测拼速度、我还是走别的路吧。(这个验证码其实可以搞成拒绝服务众测好像不收我也没提)
重点来了api.php有没有觉得有东西搞了。来我们来爆破了,这回爆破什么呢,爆破参数,这里呢有两种爆破
一种是api.php?m={} 一种是api.php?{}=xx
这是我当时爆破的图我们可以从长度状态码来看这个参数是否存在、而且当我们爆破出如下参数时/ api.php?m =getuserinfo 返回空白页但状态码是200、这时候我们就要想应该是还缺了一个参数于是就出现这样的爆破/ api.php?m =getuserinfo&xxx=1111、因为getuserinfo很明显是一个用户信息的参数此时我们应该是缺少类似userid的标识我们就直接来一个=1111然后爆破xxx成功爆破出followerid参数(成功收获一个信息泄露)
后面我还陆续爆破出多个参数、两处未授权页面
一处反射型XSS
一处越权
oxo5 暴力破解手册的重要性
再给你们讲一个我一直强调的点,如果遇到一个登录框的测试有说明文档的一定要看、里面有很多东西可能用到,我说几个例子
这是某个后台假如你上来就是一把梭、你爆破不出来的因为用户名不是常规的我们去看一下项目手册
发现一处用户名、一处通用弱口令
看到这个账号3601000039K你想到什么、你去爆破这个账号的密码?我想到的是这账号肯定是有规律的、于是我设置了一个爆破
成功爆破出大量账号、进去后又发现一处越权
oxo6 暴力破解偶遇401认证
在爆破 tomcat 时
账号和密码是base64编码的
设置爆破参数
设置用户名字典
设置 一个 : 分割账号和密码
设置密码字典
设置编码方式
开始爆破