【CTF WEB基础】BP - Bugku CTF

题解

bp——爆破(baopo)

或者从提示:弱密码 也可以看出来

打开网页 发现是登录页面,结合提示和描述,发现找密码就可以了

先看源码,没发现什么提示

所以直接用burp拦截 爆破

根据提示弱口令

想到可以用intruder爆破,而且提示了弱口令1000

百度一下就可以直接找到了

用txt文本保存弱口令词典

因为只爆破密码,所以保存密码的符号即可

再转到payload-->payload option->load-->top1000弱口令

再点击右上角start attack,等待结果

结果如下

但可以发现,status和length都是一样的值,无法直接判断

所以这里有两个方法:

方法一:

根据提示中的z....,发现字典中的z开头的口令并不多,一个一个在网址尝试登录就可以了

(至于response为什么不能看出来flag,o(╥﹏╥)o我也不知道,求教)

方法二:

查看response中的代码(看不懂直接让ai解释)

根据代码解释可以发现,因为r.code被源码定义为hacker1000,所以if语句肯定会被执行,使得返回长度都是一样的。

那么我们要做的就是将JavaScript中的var r={code: 'bugku10000'}过滤掉(人话:删掉)

 过滤操作:点击Intruder中的选项找到Grep-Match(在响应中找出存在指定的内容的一项。)

 在输入框中我们输入{code: 'bugku10000'}之后点击Add添加。

再次start attack(人话:爆破)

把横线拉到最右,可以找到过滤的选项,点击排序,会发现第一个不存在{code}(空白内容代表不存在)

再拉回左边,发现第一个是zxc123

在网站中登录即可得到flag

补充:

注意password=zxc123时,var r不再是bugku1000了,而是hacker1000

(这里就是过滤的地方)

知识点:

1.弱口令爆破

dddd,这里不在赘述

2.过滤JavaScript语句

  过滤操作:点击Intruder中的选项找到Grep-Match(在响应中找出存在指定的内容的一项。)

 在输入框中我们输入{code: 'bugku10000'}之后点击Add添加。

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值