经过这么长时间的测试终于算是可以上线了,写篇文章跟大家分享一下自己的开发思路吧
注:本工具借鉴吸收了TideSec的web_pwd_common_crack很多优秀的思路,在此基础上增加了很多拓展功能使其更加强大,在这里给TideSec的大佬点个赞!
前言
在做安全测试的时候,随着资产的增多,经常会遇到需要快速检测大量网站后台弱口令的问题。
然而市面上并没有一个比较好的解决方案,能够支持对各种网站后台的通用检测。
所以WebCrack就应运而生。
工具简介
WebCrack是一款web后台弱口令/万能密码批量爆破、检测工具。
不仅支持如discuz,织梦,phpmyadmin等主流CMS
并且对于绝大多数小众CMS甚至个人开发网站后台都有效果
在工具中导入后台地址即可进行自动化检测。
实现思路
大家想一下自己平常是怎么用burpsuite的intruder模块来爆破指定目标后台的
抓包 -> send to intruder -> 标注出要爆破的参数 -> 发送payload爆破 -> 查看返回结果
找出返回包长度大小不同的那一个,基本上就是所需要的答案。
那么WebCrack就是模拟这个过程
但是就要解决两个问题
如何自动识别出要爆破的参数
如何自动判断是否登录成功
识别爆破参数
对于这个问题采用了web_pwd_common_crack的解决办法
就是根据提取表单中 user pass 等关键字,来判断用户名跟密码参数的位置
if parameter:
if not user_key:
for z in [ 'user', 'name','zhanghao', 'yonghu', 'email', 'account']:
if z in parameter.lower():
value = '{user_name}'
user_key = parameter
ok_flag = 1
break
if not ok_flag:
for y in ['pass', 'pw', 'mima']:
if y in parameter.lower():
value = '{pass_word}'
pass_key = parameter
ok_flag = 1
break
但是在测试中还发现,有些前端程序员用拼音甚至拼音缩写来给变量命名
什么yonghu , zhanghao , yhm(用户名), mima 等
虽然看起来很捉急,但是也只能把它们全部加进关键字判断名单里。
如何判断登录成功
这个可以说是最头疼的问题
如果对于一种
1726




被折叠的 条评论
为什么被折叠?



