BUUCTFweb题刷题记录(2020.09.14-2020.09.19)

1.WarmUp


获得靶机后,进入网址,发现如上图。一如既往,查看源码。发现一个source.php,必然进去一探究竟出现源码,那么就要开始进行代码审计了呀。

先随便都看看嘛,所以咱先去hint.php去看看。
虽然没有直接获得flag,但是知道了flag在哪个目录中。再返回查看源码,其实此时可以猜到这道题考的就是一个文件包含了
首先看到这个if的,这三个限制分别是,file变量不能为空,传入的值要为字符串类型,传入的值要进入checkFile函数进行检查。所以,我们去审计checkFile函数


很明显,我们需要满足这四个if语句,在第四个if语句中,它是先进行url解码再截取,因此我们可以将?经过两次url编码,在服务器端提取参数时解码一次,checkFile函数中解码一次,仍会解码为’?’,
首先我们先去将?进行两次url编码后得到%253f,尝试构造paylaod如下:
?file=source.php%253F/…/…/…/…/ffffllllaaaagggg
这里,我们由于不知道ffffllllaaaagggg这个文件夹在哪,所以可以一次一次尝试。最终,获得本次flag

flag{
   
   2c3a0aac-0df5-4643-9301-169b4ac9c7d2}

2.Havefun

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值