BUUCTF Web [RoarCTF 2019]Easy Calc & [ACTF2020 新生赛]BackupFile & [极客大挑战 2019]BuyFlag

目录

[RoarCTF 2019]Easy Calc

[ACTF2020 新生赛]BackupFile

 [极客大挑战 2019]BuyFlag


[RoarCTF 2019]Easy Calc

启动靶机,发现有个计算器

 输入一些运算符能正常输出,输入ping 127.0.0.1 发现报错

右键查看一下源代码

 访问一下calc.php , 这个应该就是所提到的waf。                                                                           

 有传参,尝试一下有没有命令执行

http://node4.buuoj.cn:28378/calc.php?num=123

但是输入字符就会被狗拦下

 到这里,有点懵,借鉴了一下大佬的wp

1. 用scandir()扫一下目录

scandir() 函数返回指定目录中的文件和目录的数组。
? num=print_r(scandir('/'))
# 使用chr()绕过
? num=print_r(scandir(chr(47)))

2. file_get_contents() 读文件。

? num=print_r(file_get_contents('/f1agg'))
使用chr来绕过
? num=print_r(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))

  

拿到flag               flag{83a8f33e-8996-44bf-be31-6cb5e6e698f7}

[ACTF2020 新生赛]BackupFile

 启动靶机

用御剑扫扫,访问发现,都是上面这个页面。右键查看源码,也没啥新发现。

 题目是备份,访问一下/index.php.bak

用记事本打开下载的备份

代码审计,GET传了个key,而且只要key和$str相同就会输出flag ,但是key必须是数字。

思路: 若满足 $key == $str ,其中$key是纯数字,那么$str会自动变为数字,即$str=123

构造payload

/index.php?key=123

 拿到flag               flag{87d82118-97bc-4656-9bed-79d4ccc58b9a} 

 [极客大挑战 2019]BuyFlag

 启动靶机,右键查看源代码,发现了两个php文件

index.php 是首页,访问一下pay.php,右键查看一下源码

审计,POST传password。password的值不能全是数字但要满足$password == 404,直接传password=404/

抓个包分析一下

  

感觉这个用户和cookie中的user有关,把user改成1试试

 

好家伙,竟然要我支付,回想之前代码审计第一行中 

我们现在只穿了password一个参数,试着传money参数

 

多付钱都不行,尝试一下科学计数法

 拿到flag              flag{e03c7608-feab-491f-bacb-23eead73b775}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

WmVicmE=

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

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

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

打赏作者

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

抵扣说明:

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

余额充值