BUUCTF [极客大挑战 2019]BuyFlag1

题目:[极客大挑战 2019]BuyFlag 1

一、Web题先抓个包
在响应包(回包)中发现一个pay.php跟题目BuyFlag很像,因此优先考虑进入这个页面看看(复盘的时候发现就在右侧菜单的PAYFLAG中...)


二、改包
进入这个页面之后,提示说如果要payflag首先需要是个向它证明自己是个student,然后回复正确的password,最后用100000000支付flag(真贵,可恶!)


在响应包中发现是通过POST请求访问的,同时password需要为404且由于设置了is_numeric函数,需要利用password=404a,由于PHP中=是弱等于,则需要添加随机字母才能使得参数等于数字


在改包时发现请求包中COOKIE的值是user=0,根据经验可以发现这就是上述的student身份证明,0表示错误(不是),所以改为1就是正确的,那么最后改包的结果为:


但是人家说数字长度太长



好办,直接改为科学计数法money=1e9去实现,OK拿下

总结:这种Web题一定要会抓包,能通过题目中给出的信息找到关键依据,还需要一定的联想能力(做题经验),这道题后面还有个小知识点:最后字符长度的设置是利用了strcmp函数,这个函数比较的是字符串类型,如果强行传入其他类型参数,会出错,出错后返回值0,正是利用这点进行绕过。因此最后也可以通过构造money[]=1进行绕过也是常用方法!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

muzzert

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值