首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

出轨找不到证据?你可能没有试过……

你可能没有试过“暴力破解”……

什么是“暴力破解”?

不是上门迎面给一拳,也不是逼着对方让ta带你去见新欢,而是利用数学上的穷举法破其密码,掌握“案件”的蛛丝马迹,来个釜底抽薪,用“科学”的方法审判错误。

什么是“穷举法”?

穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。

因此暴力破解,不仅需要技术基础,更要看你对“对象”的了解层次到达哪种深度,这是个双商必须在线的活儿~

确定场景

确认“对象”的漏洞场景是否适用于暴力破解:

(1)WEB应用的登录界面,应用所在的网络环境里没有部署流量清洗设备

(2)如果用户的口令确定是弱口令,此时爆破的成功率非常高

实操

①正常登录

②源码分析

为了更好地理解爆破的原理,根据源码来进行分析,可以看到,服务器端只是验证了参数Login是否被设置和账号密码是否正确,没有加入任何的防爆破机制。

显而易见,这是个LOW级别的代码,更好实施爆破。

③实战爆破

第一步:配置本地代理

本次配置以Kali Linux中自带的Firefox浏览器为例,其他浏览器配置方法大同小异。

选择Manual proxy configuration,HTTP Proxy设置为127.0.0.1,端口(Port)设置为8080。

第二步:使用BurpSuite进行抓包

随便输入密码进行登录。

使用BurpSuite进行抓包,可以看见第一行包含账号密码。

第三步:将抓到的包发送到Intruder模块,并设置要破解的变量

使用快捷键Ctrl+I或者右键,然后点击Send to Intruder将数据包Intruder模块。

点击Intruder进入Intruder模块,然后点击Positions,可以看到有很多的默认变量,点击Clear按钮清空所有的默认变量。

选中密码,点击Add按钮,将密码设置为需要破解的变量。

第四步:设置字典文件

点击Payloads,点击Load加载外部字典。

选择字典路径,加载字典。

第五步:爆破

点击Start attack开始爆破。

爆破完成,点击Length进行排序,发现password的响应包与其他密码的响应包长度不同,则password很有可能是正确密码。

>>>>

Medium

①源码分析

相比Low级别的代码,Medium级别的代码中增加了mysqli_real_escape_string()函数,这个函数可以对一些特殊字符进行转义,包括\x00, \n , \r , \ , ’ , ”,\x1a等,可以有效地防止sql注入,同时在验证失败以后会执行sleep(2),但是这些方法并不能有效地防止爆破。

②实战爆破

可以使用BurpSuite进行爆破,操作方法跟Low级别基本一样。

①源码分析

High级别的代码加入了Token,可以防御CSRF攻击,同时也增加了爆破的难度,用BurpSuite进行抓包可以看见登录验证时提交了四个参数:username,password,Login和user_token。

每次服务器返回的登录页面中都会包含一个随机的user_token的值,用户每次登录时都会将user_token一起提交,服务器收到请求后,会优先对user_token进行验证,再执行sql查询。

High级别的代码相比Medium级别还加入了stripslashes()函数,这个函数可以除去字符串中的反斜线,如果有两个反斜线则只去掉一个,进一步抵御sql注入。

②实战爆破

由于加入了token机制,不能再无脑进行爆破,可以用python简单的写个脚本——

参考文件BruteForce-high.py

get_token()方法使用正则表达式从html页面中抓取user_token的值,为了方便展示,只尝试十次。

从左往右依次是序号,用户名,密码和返回的页面的长度,对比结果可以发现,当密码为password的时候,返回的页面长度不一样,然后进行手工登录验证,登陆成功!

如果你像一个黑客一样尝试过Brute Force(暴力破解),领略了信息世界的魅力,对象到底有没有出轨。who cares?!

总结

爆破步骤

第一步:配置本地代理

第二步:使用BurpSuite进行抓包

第三步:将抓到的包发送到Intruder模块,并设置要破解的变量

第四步:设置字典文件

第五步:爆破

如何防止爆破

设置复杂的账号密码,增加爆破难度。

使用Token进行验证,可以增加爆破难度,防止无脑爆破。

频繁的错误登录以后,可以将账户锁定。

豌豆学院是豌豆科技旗下的一款在线教育平台,豌豆科技团队成员在信息安全领域的平均工作年限超过8年。与多家客户建立了长期的“信息安全实训”合作计划,与之共同培养专业型的信息安全技能人才。

长按添加关注

豌豆学院带你遨游信息安全新世界

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180419G1B23K00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券