您现在的位置是:时尚 >>正文
dvwa暴力破解教程
时尚41998人已围观
简介DVWA的Brute Force模块,默认账号admin、密码password,直接点Login就能进。但这关要练的是怎么把登录表单打穿,所以先把难度调到Low,然后打开Burp Suite准备抓包。 ...
DVWA的暴力Brute Force模块,默认账号admin、破解密码password,教程直接点Login就能进。暴力但这关要练的破解是怎么把登录表单打穿,所以先把难度调到Low,教程然后打开Burp Suite准备抓包。暴力
浏览器挂上代理,破解随便输个用户名和密码提交一次。教程Burp的暴力Proxy历史里会出现一条POST请求,目标路径是破解/dvwa/vulnerabilities/brute/。请求体长这样:username=admin&password=123&Login=Login。教程Cookie里带着PHPSESSID和security=low。暴力把这条请求右键发送到Intruder。破解
Intruder里需要配置四个位置。教程攻击类型选Sniper就够了,因为只爆破密码一个变量。Clear掉所有自动标记的§符号,然后手动选中password=123里的123,点Add。Payloads标签页加载字典,Kali自带的/usr/share/wordlists/rockyou.txt或者自己写个小字典都行。Low难度下DVWA没有任何防护,请求失败返回的页面里包含"Username and/or password incorrect.",成功则会出现"Welcome to the password protected area"。所以Options里Grep-Match填上"Welcome",跑起来之后看哪些请求命中了这个关键词。
Start Attack。如果字典里有password,大概几秒就能看到那一行Length明显不同,Grep-Match列打了个勾。点开Response确认一下,确实进了。
但Low难度只是热身。把安全级别切到Medium,同样的流程再走一遍,会发现事情变了。第一次请求之后,后续所有请求都返回同样的错误页面。DVWA在Medium下加了sleep(2),每次失败延迟两秒。字典大的话,跑完要等到天荒地老。更关键的是,它开始检查User-Agent。如果你用Burp默认的UA,从第二次请求起就会被拒。解决办法是在Intruder的Headers里把User-Agent改成浏览器真实的UA字符串,或者干脆在Payload里做UA轮换。
这里有个细节值得注意:Medium的sleep是硬编码在PHP里的,sleep(2)意味着每次失败请求至少耗两秒。一个500条的字典就是1000秒,将近17分钟。实际测试中如果网络稍微抖一下,时间更长。所以Medium难度下爆破的性价比极低,除非字典极小且目标密码极弱。
High难度更狠。除了sleep和UA检查,它还引入了token机制。每次GET登录页面时,服务器生成一个一次性token嵌入表单,POST时必须带上这个token,否则直接拒绝。这意味着Burp Intruder不能简单地重复同一个请求,必须先用GET拿到token,提取出来,再拼进POST里。Burp社区版做这个比较麻烦,通常需要配合宏或者用Python脚本。用Python的requests库写个循环反而更直接:每次先GET取token,正则提取,再POST提交,带上正确的Cookie和UA。High难度下sleep依然存在,所以脚本里最好加上超时控制和并发限制。
实际打下来,DVWA的Brute Force关卡设计意图很清楚——让你感受防护措施逐级加码的效果。Low是裸奔,Medium加了延迟和UA门槛,High上了CSRF token。真实环境里还会叠加验证码、账户锁定、IP封禁、多因素认证。工具方面,Burp Intruder适合Low和部分Medium场景,High以上建议直接上Python脚本或者hydra配合自定义请求模板。字典质量比字典大小重要得多,rockyou.txt里前1000条就能覆盖大量弱密码。最后提醒一句,这套东西只在自己搭的DVWA里练,别拿去打别人的站。
Tags:
相关文章
平台渗透
时尚凌晨两点,我盯着后台那份渗透测试报告,屏幕上跳动的数字让我后背发凉。攻击者只用了四十七分钟,就从公司最不起眼的考勤系统摸进了核心数据库。他们没碰防火墙,没撞堡垒机,走的是一条谁都没想到的路——那套三年 ...
【时尚】
阅读更多检测工作总结
时尚检测工作总结 上个月连续三批进厂的304不锈钢管材,光谱分析仪读数都卡在铬含量下限边缘。18.02%、18.05%、17.98%——最后一个数字跳出来的时候,我让车间先停了切割机。这批货要是直接投产, ...
【时尚】
阅读更多mysql跨库查询语句
时尚MySQL里跨库查询其实就一句话:用库名.表名直接引用。比如SELECT * FROM db1.users u JOIN db2.orders o ON u.id = o.user_id,只要这两个库 ...
【时尚】
阅读更多