|
打开Burp Suite,暴力把Proxy的破解Intercept关掉,浏览器挂上代理,实验目标IP填进去,暴力用户名admin,破解密码字典挂上rockyou.txt,实验Intruder模块一跑,暴力五分钟不到,破解密码弹出来了——123456。实验这就是暴力我第一次做暴力破解实验的全部过程,8个学时里最刺激的破解部分其实在前30分钟就结束了。 实验环境是实验学校搭的DVWA靶场,安全等级调成low。暴力老师给的破解要求很明确:用Burp的Intruder模块完成一次基于字典的暴力破解,记录请求包、实验payload位置、攻击类型和结果。听起来简单,但真正动手的时候,坑一个接一个。 代理配好只是开始 第一个坑是浏览器代理。Firefox配了127.0.0.1:8080,Burp的Proxy listener也开了,但浏览器就是打不开DVWA页面。查了半天,发现Burp默认只监听loopback,而我的Firefox跑在虚拟机里。改成监听所有接口,问题解决。这种事在实验指导书里不会写,但你一定会遇到。 第二个坑更隐蔽。DVWA的登录请求是POST,参数是username和password,还有Login按钮的submit值。我第一次抓包的时候只选了username和password做payload位置,结果Intruder跑了几百次全是失败。后来对比正常登录的请求才发现,少传了Login参数,服务器直接拒绝。加上之后,攻击才正常。 Intruder的四种攻击类型,实验里只用了一种 Burp Intruder有Sniper、Battering ram、Pitchfork、Cluster bomb四种模式。这次实验用的是Sniper,因为只有一个密码字段需要爆破。Pitchfork和Cluster bomb适合多参数组合,比如已知用户名列表和密码列表要交叉匹配。老师没要求做,但我自己试了一下Cluster bomb,跑起来速度明显慢很多,因为请求数是两个字典的笛卡尔积。 Payload设置那里有个细节:线程数。默认是10,我调到20之后,DVWA的响应开始出现超时。调到5,稳定但慢。最后用10跑完,字典里前200个密码命中了。实际渗透测试中,线程数要根据目标服务器的承受能力调,调太高会被WAF封IP,调太低效率不够。这个平衡点只能靠经验。 8个学时里,真正敲键盘的时间不到3小时 剩下的时间在干什么?写实验报告。报告要截请求包、截Intruder配置、截攻击结果、截成功登录的页面。每一张截图都要标注清楚。老师还要求分析为什么字典里前200个密码能命中——因为DVWA的默认密码就是password,而rockyou.txt的前几个就是123456、password、12345678这些。真实环境里,这种弱密码字典的命中率取决于目标群体的密码习惯。企业内网里,夏天到了,密码可能是Summer2024!这种,rockyou.txt里不一定有。 实验最后有个拓展题:如果目标开启了账户锁定策略,暴力破解怎么绕过?答案是慢速爆破或者密码喷洒。慢速爆破是把请求间隔拉长,比如每30秒试一个密码,避免触发锁定阈值。密码喷洒是用一个常用密码去试多个用户名,而不是用一个用户名试多个密码。这两种方法在Burp里都能实现,但需要配合宏或者扩展。8个学时不够做这些,只能点到为止。 做完这个实验,最大的感受是:暴力破解的技术门槛很低,Burp把大部分工作都封装好了。真正难的是目标环境的限制——验证码、账户锁定、IP封禁、多因素认证。DVWA的low级别把这些全关了,所以看起来很简单。一旦开到medium,登录失败会延迟1秒,high级别直接加token。那时候Intruder就跑不动了,得换工具或者写脚本。 实验结束那天,我把Intruder的配置保存成项目文件,下次打开还能直接跑。这个习惯是跟老师学的,他说渗透测试里重复劳动很多,能自动化的就别手动。8个学时学不完Burp,但至少知道了Intruder怎么用,剩下的靠自己折腾。 |