清明节假期凌晨三点无聊了,就打开ctfshow看了看有什么好玩的,发现了有个愚人节欢乐赛,就玩了玩做了几个题。其他的是后来补上的。
Kanna Kamui
社工题,做出来的时候只有十个人解出,本来还以为很难,结果发现只是需要时间去找……
思路就是找这个飞机(很特殊的飞机哦),然后跟与士兵的服装判断是哪个国家,在搜索国家内的国际机场,日期就根据飞机的乘客人物的特殊身份来判断的。借助网络的力量(狗头)
签到
本来以为是去q群看群公告,后来发现啥也没
单纯分析这段文字的话,发现有很多逗号分割,尤其是到狗头括号那里,把括号放在了逗号后面,可能是藏头,简单拼了一下前几位,发现是ctfsow(,跟ctfshow相比少一位h,然后发现那个拼音是shi,应该是取拼音的声母
ctfshow(zhcxhbbshzhjrblzs)
特殊的base
很明显是Base64啊,然后拿去解码
但是这个提交上去不对
仔细看了下复制出来的,跟网页上的不一样啊
查看源码发现确实有个js,复制源码里面的编码后的拿去解码就是flag了
php的简单RCE
<?php if(isset($_GET['c'])){ $c=$_GET['c']; if(!preg_match("/\;|.*c.*a.*t.*|.*f.*l.*a.*g.*| |[0-9]|\*|.*m.*o.*r.*e.*|.*w.*g.*e.*t.*|.*l.*e.*s.*s.*|.*h.*e.*a.*d.*|.*s.*o.*r.*t.*|.*t.*a.*i.*l.*|.*s.*e.*d.*|.*c.*u.*t.*|.*t.*a.*c.*|.*a.*w.*k.*|.*s.*t.*r.*i.*n.*g.*s.*|.*o.*d.*|.*c.*u.*r.*l.*|.*n.*l.*|.*s.*c.*p.*|.*r.*m.*|\`|\%|\x09|\x26|\>|\</i", $c)){ system($c); } }else{ highlight_file(__FILE__); }
过滤了很多字母,想先看一下目录文件,但是试了下,没有任何回显
看了下代码这不是首页,在后面加个index,就是另外一个页面了
查看下目录 ls
发现有个flag.php
打开之后有个BASE64,解码了一下,不是flag。
又是假的flag,那就得康康目录下还有什么东西
原来还有个flag
这个里面就是真flag了
其实应该看到是base64编码后的应该就怀疑是假的了,毕竟是flag是动态更新的,不可能是编码后固定的字母串
以旧换新
以旧换新,提交之前题目的flag
一共需要交6个flag(太多了,都去做了一遍)