CTF各大工具合集
日期:2023年11月19日
python基础入门
python基础入门教程
pikachu靶场暴力破解详解
技巧一:
根据注册提示信息进行优化
对目标站点进行注册,搞清楚账号密码的一些限制,比如目标站点要求密码必须是6位以上,字母数字组合,则可以按照此优化字典,比如去掉不符合要求的密码。
技巧二:
如果爆破的是管理后台,往往这种系统的管理员是admin/administrator/root的机率比较高,可以使用这三个账号+随便-个密码 ,尝试登录 ,观看返回的结果 ,确定用户名。
比如:
输入xxx/yyyf返回“用户名或密码错误”
输入admin/yy返回”密码错误”, 则基本可以确定用户名是admin ;
因此可以只对密码进行爆破即可,提高效率。
在本机phpstudy环境搭建pikachu靶场,在kali linux进行测试;
这里以第一个基于表单的暴力破解为例
随机输入账号密码,,抓包,
选中此条post请求发送到Intruder中
将原始数据包中的变量清除,选中用户名和密码点击Add$将其设置为变量。
爆破类型
Sniper模式逻辑:先将第一个变量也就是用户名替换,第二个变量不动。当第一个变量替换完之后,对第二个变量进行依次替换。直白一点就是说一个变,另外一个不变,第一个变完,变第二个。
Battering ram模式逻辑:所有变量进行同时同样的替换。就是说你变我也变,你变什么我也变什么。
Pitchfork模式逻辑:所有变量同时替换,但是各自变量替换各自的字典,同时进行,但是互不相干。替换时第一个变量的第一替换值对应第二个变量的第一个替换值,不进行排列组合,就是1对1,2对2。不会将密码进行随机的排列组合。
Cluster bomb模式逻辑:与Pitchfork模式逻辑类似,不同点是Cluster bomb模式会进行随机的排列组合。
在这里我们使用Cluster bomb模式进行破解,在Payloads中配置第一个变量和第二个变量的字典,这里可以手动输入添加,也可以在系统中添加已经写好的字典。
添加字典后进行攻击,根据返回数据包的长度进行判断是否成功。为了方便观察也可以在grep-match中删除原有字符串,添加username or password is not exists,burp就会将所有含有此字符串的数据包flag出来。没有被flag出的数据包则是我们破解成功的数据包。点击username or password is not exists进行排序,没有勾选的则表明破解成功,有勾选的则表明破解失败
验证码绕过(on server // on client)
步骤与上述差不多,验证码在前端有验证,输入错误会有提示,继续使用burp抓包爆破,
将数据包发送到repeater中,对验证码进行判定,判定后台是否对验证码进行校验。修改验证码点击go,多次尝试发现返回的信息都是username or password is not exists,但是没有提示验证码错误。
本文为原创文章,转载请注明出处!