dvwa之brute force(工具版)(部分转自互联网大佬,仅供自己学习)

Brute Force

暴力破解一般指穷举法,穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。穷举法也称为枚举法。(转自https://blog.youkuaiyun.com/u011781521/article/details/54964926)

low:


代码就不贴了,自己看,然后直接使用工具进行爆破

设置随意的密码和账号进行抓包:



对于账号666 密码 333加$符号:


然后进行爆破:(中间的过程自行百度,为了节省时间,我中间的有些东西已经省略了,可以参考下面的标准)


第一种:
Sniper标签 这个是我们最常用的,Sniper是狙击手的意思。这个模式会使用单一的payload【就是导入字典的payload】组。它会针对每个position中$$位置设置payload。这种攻击类型适合对常见漏洞中的请求参数单独地进行测试。攻击中的请求总数应该是position数量和payload数量的乘积。


第二种:
Battering ram – 这一模式是使用单一的payload组。它会重复payload并且一次把所有相同的payload放入指定的位置中。这种攻击适合那种需要在请求中把相同的输入放到多个位置的情况。请求的总数是payload组中payload的总数。简单说就是一个playload字典同时应用到多个position中


第三种:
Pitchfork – 这一模式是使用多个payload组。对于定义的位置可以使用不同的payload组。攻击会同步迭代所有的payload组,把payload放入每个定义的位置中。比如:position中A处有a字典,B处有b字典,则a【1】将会对应b【1】进行attack处理,这种攻击类型非常适合那种不同位置中需要插入不同但相关的输入的情况。请求的数量应该是最小的payload组中的payload数量


第四种:
Cluster bomb – 这种模式会使用多个payload组。每个定义的位置中有不同的payload组。攻击会迭代每个payload组,每种payload组合都会被测试一遍。比如:position中A处有a字典,B处有b字典,则两个字典将会循环搭配组合进行attack处理这种攻击适用于那种位置中需要不同且不相关或者未知的输入的攻击。攻击请求的总数是各payload组中payload数量的乘积。

详见:https://blog.youkuaiyun.com/u011781521/article/details/54964926


Medium

相比Low级别的代码,Medium级别的代码主要增加了mysql_real_escape_string函数,这个函数会对字符串中的特殊符号(x00,n,r,,’,”,x1a)进行转义,基本上能够抵御sql注入攻击,说基本上是因为查到说 MySQL5.5.37以下版本如果设置编码为GBK,能够构造编码绕过mysql_real_escape_string 对单引号的转义(因实验环境的MySQL版本较新,所以并未做相应验证);同时,$pass做了MD5校验,杜绝了通过参数password进行sql注入的可能性。但是,依然没有加入有效的防爆破机制(sleep(2)实在算不上)。(转自http://www.freebuf.com/articles/web/116437.html)

具体的mysql_real_escape_string函数绕过问题详见

http://blog.youkuaiyun.com/hornedreaper1988/article/details/43520257

http://www.cnblogs.com/Safe3/archive/2008/08/22/1274095.html

使用方法:方法和low中的没有什么太大的区别(为了速度,故意少添加了字段)

High级:

High级别的代码加入了Token,可以抵御CSRF攻击,同时也增加了爆破的难度,通过抓包,可以看到,登录验证时提交了四个参数:username、password、Login以及user_token。这个时候就无法进行burpsuit爆破了。。。。



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

同时,High级别的代码中,使用了stripslashes(去除字符串中的反斜线字符,如果有两个连续的反斜线,则只去掉一个)、 mysql_real_escape_string对参数username、password进行过滤、转义,进一步抵御sql注入。

(high会另外写,需要使用脚本)





### DVWA Brute Force 暴力破解 实验教程 #### LowMedium 级别暴力破解 对于低级别和中级别的暴力破解,由于这些级别的防护措施较为简单,可以利用工具Burp Suite来进行自动化攻击。具体来说: - **Low Level**: 这一等级几乎没有任何安全机制来阻止暴力破解尝试。用户名和密码通过HTTP GET请求发送,并且没有验证码或登录失败后的延迟处理。因此,使用Burp Intruder模块并加载常用弱口令列表可以直接发起大量猜测尝试[^4]。 ```bash # 使用 Burp Suite 的步骤如下: 1. 启动浏览器代理设置指向本地监听端口8080; 2. 访问DVWA网站并通过拦截功能捕获登录表单提交的数据包; 3. 将数据包发至Intruder面板配置参数位置(通常为username和password字段); 4. 加载预定义的字典文件作为payload选项; 5. 开始攻击过程观察返回结果寻找有效凭证组合。 ``` - **Medium Level**: 中级增加了简单的防御手段——每当验证不成功时会触发`sleep(2)`函数使响应时间延长两秒钟。尽管如此,这并不会显著影响实际操作中的成功率;只需耐心等待每次迭代完成即可继续测试其他候选值[^2]。 #### High 和 Impossible 级别暴力破解 随着保护强度增加到了高级阶段,则引入了更复杂的逻辑用于检测异常行为模式以及采取相应对策加以遏制潜在威胁活动的发生频率及其效率表现形式上有所区别于之前所描述过的简易型方案设计思路框架结构特点方面存在差异之处在于: - **High Level**: 此处不仅限定了最大重试次数还加入了基于IP地址白名单管理策略从而进一步提升了整体安全性水平线以上述两点为核心要素构建而成的一套综合性的访问控制体系架构模型实例化应用案例研究对象之一即为此本下的用户认证流程环节部分实现细节说明文档记录内容摘要概述。 - **Impossible Level**: 几乎无法被传统意义上的穷举法攻破。该层面上除了继承自高阶的安全特性外更是额外集成了诸如图形验证码之类的交互式组件用来增强人工干预成分比例进而达到更好的防伪效果目的所在[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值