这次LCTF可以说是只做出来了半道题目,只有周日有时间做是一方面的原因,另一方面是由于这次的CTF题目里面技巧太多,自己掌握的不够,所以就没有思路,做不出来,接下来就总结下这次CTF里面Web题目的小技巧。

签到题

1、curl支持file://host/path, file://path 这两种形式, 但是即使有host, curl仍然会访问到本地的文件。
2、截断url后面拼接的/, GET请求, 用?#都可以
例如file://www.baidu.com/etc/flag? 可以读取到/etc/flag

萌萌哒报名系统

1、jetbrains IDE的工作目录下会有.idea文件夹,里面的workspace.xml会泄露工作目录的结构,需要仔细观察。
2、preg_matchmatch的时候是贪心的策略,即使用超级长的字符串会导致匹配时间过长,从而导致php超时,后面的语句将不再执行。
3、可以利用php的伪协议绕过is_file函数的检查,总是会返回false,当is_file里面的内容是php伪协议字符串。

他们有什么秘密呢?

本题目是在informationschema被过滤的情况下:
1、在mysql中用一个不存在函数可以爆错出数据库的名字,我测试也可以用一个不存在的表的名字。
2、polygon函数可以获取表的名字,不过如果这个被过滤可以使用如下的函数:

例如:pro_id=1 and linestring(pro_id)
3、using+join来获取字段名字
例如:pro_id=1 union select * from (select * from product_2017ctf as A join product_2017ctf as B using(pro_id)) as C
4、最短的shell

以当前目录下的文件名为命令执行,详细可见:https://nandynarwhals.org/32c3-tinyhosting/

L PLAYGROUND

这道题目我感觉挺经典的还是看官方的wp吧。

simple-blog

这道题目是padding oracle attack,虽然前一段刚刚看过这个,但是实战是另一回事情。
需要注意的是,最第一位是无法爆破出来的,需要暴力枚举了。给出Th1s师傅的脚本:

第二个考察的点是PHP格式化字符串的漏洞。
具体查看这篇文章:https://paper.seebug.org/386/

总结

这次的CTF感觉被我水掉了,不过赛后还是学到了很多小技巧。而且这次的MISC的有一道树莓派的题目让我仿佛重新对MISC看到了曙光,这道题目出的真心好,可以多多看看这道题目的WriteUp

相关链接

官方WriteUp
Th1s师傅的WriteUp
MISC树莓派详细WriteUp

Leave a Comment

电子邮件地址不会被公开。 必填项已用*标注