暴力破解登录密码(登录批量发包)

  除了Fortify和Appscan之外,公司还有使用Burp Suit工具对项目代码进行安全测试,例如会对项目进行 暴力破解登录密码(登录批量发包),而项目中确实存在该漏洞,现已修复,在这里做总结如下:

1.1、攻击原理

  正常登录请求验证通过,可以利用BurpSuit测试工具拦截该登录请求(即抓取了这个“登录请求数据包”),然后通过BurpSuit工具可以修改这个“登录请求数据包”的参数,即可以把HTTP请求里的某个单独的参数设置为变量,来进行替换,然后该工具会批量发送登录请求调用后台系统,因此可能会暴力破解到登录账户密码(即通过增加一个字典来实现自动化的攻击)。

 

 图1.1.1  暴力破解登录密码案例

 

1.2、修复方案

  之前之所以有漏洞问题是因为“滑动验证”和“帐号密码”是分开在不同的类和方法中验证的,暴力破解的时候可以绕过“滑动验证”直接调用“登录接口”进行登录帐号和密码的批量验证。

  针对于此,修复该漏洞的过程如下:

  1、将“滑动验证”整合到和“帐号密码”同一个方法中。因此,在发送校验帐号密码的请求中,还需要传递滑动验证的值作为参数进行校验;

  2、在校验完该值后,要将session中的滑动验证值立即更新,这样,后面BurpSuit工具的批量发包请求带的滑动值就不能验证通过了,也就不会批量校验帐号和密码了。因为这时候每一个登录请求都是不同的滑动值,而暴力破解的时候,它复制过来的请求的滑动值是固定的。 

图1.2.1  解决暴力破解登录密码实际代码

posted @ 2018-06-06 22:06  Xavier-Xu  阅读(1629)  评论(0编辑  收藏  举报