一、暴力破解

暴力破解

概念

Burte Force(暴力破解)
又名暴力攻击、暴力猜解,从数学和逻辑学的角度,它属于枚举法在现实场景的运用,是利用计算机运算速度快、精确度高的特点,对要解决问题的所有可能情况,一个不漏的进行检验,从中找出符合要求的答案,因此枚举法是通过牺牲时间来换取答案的全面性。

准备工作

  1. phpStudy
    这个直接去官网下载就完了,CSDN上很多博客…
    可能发生的问题:
    mysql启动不起来:
    phpstudyMySQL启动失败!
    这种情况下可能是mysql的端口被占用, 使用管理员权限进入cmd后,输入:sc delete mysql 命令后,删除原本配置的mysql,再次尝试即可。
  2. DVWA
    全称为Damn Vulnerable Web Application,意为存在糟糕漏洞的web应用。它是一个基于PHP/MySQL开发的存在糟糕漏洞的web应用,旨在为专业的安全人员提供一个合法的环境,来测试他们的工具和技能。
  • 下载下来相应安装包解压后,将其放入phpstudy的www目录下即可。
  • win+R 输入cmd,进入DOS页面,使用ipconfig命令,查看本机ip地址,然后使用ip地址在浏览器上登录,即可进入DVWA登录页面,用户名为admin,密码为password
    DVWA登录页面
  • 首次登录,需要进行安装
    首次登录安装页面
  1. Burp Suite
    是一个用于攻击web应用程序的集成化的渗透测试工具,它集合了多种渗透测试组件,能够使我们更好的完成对web应用的渗透测试和攻击。目前刚接触的原因,只用到了Proxy和Intrude模块,用于抓包及爆破。
    burp suite
    后面暴力破解内容会讲到该工具使用。

进入正题

  1. 进入DVWA的Brute Force(暴力破解)模块,开始之前,先将难度调为Low(小白起步等级。。)
  • 调等级
    调等级
  • 选择Brute Force
    暴力破解模块
  1. 暴力破解应用场景最多的为管理员登录场景,而常见的管理员主要包括admin,System,Manager,Root,Test等用户名,所以可以使用这些用户名去尝试破解密码;
  2. 破解密码之前,需要设置代理服务器
    设置代理服务器
  • 设置手动代理,与Burp suite中的Proxy模块下的Options选项卡中服务器地址一致即可
    手动代理
    Burp suite代理
  1. 使用Burp Suite 进行抓包
  • 使用admin作为用户名,随便输入一个密码,开启Burp Suite,点击登录,进行抓包
    开启抓包
    登录进行抓包
  • 抓包成功,可以看到登录时的用户名及密码
    抓包成功
  • Ctrl+I或者右击选择Send to Intruder,将抓到的包发送到Intruder
    Send to Intruder
    可以看到已经将包的信息发送到了Intruder,并且将所有变量进行选中,首先我们需要点击Clear按钮将所有变量选择清除,然后选中需要攻击的变量,点击ADD按钮进行添加。此处我们只需对password进行爆破,所以只选中password这一变量即可。
    选择爆破变量
  • 选择Payloads标签,点击Load按钮,导入常用密码字典后,点击Start attack进行爆破导入字典
  • 完成后,可根据返回Length长度判断正确密码
    在这里插入图片描述
  • 取到疑是正确密码后,就可以去尝试登录了(登录前记得关掉手动代理)
    在这里插入图片描述
  1. 还有一种情况就是用户名和密码均无法确认的情况,那就需要对两个变量进行爆破,就需要更改以下攻击模式,首先看下都有哪几个攻击模式,并看下都各自含义及应用场景吧
  • 共四种代理模式,分别为Sniper,Battering ram,Pitchfork,Cluster bomb
    攻击模式
  • Sniper(狙击手模式)
    默认的攻击模式,这个模式会使用你导入的payload(即导入的字典)去匹配你position中设置的变量,这种攻击模式适用于对常见漏洞中的请求参数单独进行测试,只能导入一个字典。攻击的总数为position中设置爆破变量的个数乘以payload的数量。(适用于对单个参数进行爆破)
  • Battering ram(攻城锤模式)
    该模式与Sniper模式一样也是只使用一组payload,当选中多个position变量时,会重复payload并且一次把所有相同的payload放入指定位置中,即多个位置的值一样;请求的总数即payload字典中的数量。(适用于需要爆破的多个位置值相等的情况)
  • Pitch fork(草叉模式)
    这一模式与上面两个模式不相同的点在于可以使用多个payload组,对于position不同位置变量可以使用不同的payload组,攻击会同步迭代所有的payload组;例如:position中选择两个位置,分别为A和B,A处导入a字典,B处导入b字典,则a[1]会与b[1]进行匹配并进行attack处理。请求数量为最小的payload组中的字典数量。(适用于在不同位置中需要插入不同但相关的输入的情况)
  • Cluster bomb(集束炸弹模式)
    与草叉模式一样,该模式也可使用多个payload组,每个position位置上均可使用不同的payload组。攻击会迭代每个payload组,各个payload的组的每种组合都会被尝试;例如:position中选择A,B两个位置,A位置导入a字典,B位置导入b字典,则两个字典会循环搭配进行attack处理,即a[1]会与b[1],b[2]搭配进行处理,a[2]还是会与b[1]b[2]进行搭配处理;攻击请求的总数是各payload组中数量的乘积。(适用于攻击位置需要不同且不相关或者未知的输入攻击)
    注:该攻击模式所耗时间成本非常之高。。。
  1. 看完上述攻击模式,相信大家已经知道如何选择了,只要你不怕等,那就闭眼入Cluster bomb即可

防范措施

  1. 设置带有干扰的验证码(比如验证码上加个横线啥的)
  2. 设置登录次数,比如超过几次就多长时间内不允许登录
  3. 多次登录失败后,锁定IP地址
  4. 注册时,规定密码的复杂度
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值