一、菜狗杯TapTapTap
一个js小游戏,我们在js里面找。
找一会儿可以看到一串可疑代码。
把它放到控制台console上,可以看到flag位置。
传入php中就能拿到flag了。
二、菜狗杯化零为整
看代码,我们需要传入长度为一的字符拼成“大牛”。
用url编码“大牛”得到
payload:/?1=%E5&2=%A4&3=%A7&4=%E7&5=%89&6=%9B
传入网页,得到flag
三、菜狗杯Webshell
一个反序列化题,看代码我们需要让cmd中含flag但不能直接写,需要用通配符*占用。
写一个php代码,得到序列化的获取flag代码以通过过后面的反序列化,同时进行url编码,应对shell_exec() 。
运行后得到O%3A8%3A%22Webshell%22%3A1%3A%7Bs%3A3%3A%22cmd%22%3Bs%3A7%3A%22tac+fl%2A%22%3B%7D
然后传入网页即可得到flag
payload:?cmd=O%3A8%3A%22Webshell%22%3A1%3A%7Bs%3A3%3A%22cmd%22%3Bs%3A7%3A%22tac+fl%2A%22%3B%7D
四、菜狗杯驷马难追
和一言既出差不多,只是加了一层过滤,比如小写字母,分号,括号不能用,所以这道题我们不能闭合,只能借用那个url编码,同时利用intval函数的特性去构造payload。
payload:?num=114514%2b1805296
传进去就有flag了。