杂项签到
-
首先我们拿到流量包,在这里按照包长度排序一下就能找到用来加密的python脚本以及加密后的flag。
-
接下来,我们将flag用base64解密,然后直接使用脚本的decrypt函数就可以恢复出flag明文。
RESTFUL
-
这题主要使用的就是HTTP的PUT方法。其实Google下RESTFUL就能明白该怎么做。
-
使用Burpsuite将访问题目的数据包拦截,并把头改为
PUT /money/12451
即可。
兵者多诡
-
通过尝试发现该页面的
fd
参数存在LFI本地文件包含。 -
尝试构造
fd=php://filter/read=convert.base64-encode/resource=home
就可以得到网页源码,其中.php会自动补全。 -
上传经过zip加密后的payload:“,并且上传的时候要更改为png格式。
-
访问
fd=zip://uploads/$imagekey.png#1&system("cat ./../xxxxx.php|base64 -");
就可以得到flag
参考:
必须比香港记者还要快
-
通过访问
README.md
找到提示的hint。 -
从hint中可得知,用户在刚注册的时候,拥有的是管理员权限。而在之后才被降级为普通用户。
-
那么这题就是一个竞争问题。需要在注册成功且还未降权的时候登陆,就可以得到flag。
-
使用python脚本,开两个线程同时注册和登陆即可。
gogogo
-
这题是NES逆向吧。在上次的某比赛有个赤色要塞的NES逆向和这个差不多。当然,作为一个WEB和MISC狗是不会逆向这种高大上的东西的。因此,开个金手指十分钟通关就能得到flag了。
-
至于逆向的做法,大致是先找到魂斗罗原版,然后两个文件进行二进制对比,找到不同的数据,再根据NES的做法对比调色板,就能得到flag了。
pic again
-
这是一题LSB图像隐写题。先用工具将图片中的LSB隐写数据提取,会发现在提取的到的bin文件里有
50 4B 01 02
这样的zip文件标识。经过分析之后,发现出题人将文件头给删去了,我们将其补齐就能得到一个压缩包,打开就是flag。
web选手的自我修养
-
这题我用的是非正规解法。首先,拿到docker镜像,将其load还原,然后docker run -t -i hctf/misc150 /bin/bash 来进入容器。我们可以发现,在home目录下有一个opache后门的扫描程序。那么就能初步判断这是 PHP7 的Opcache后门。
-
首先我们尝试使用这个扫描器,结果不断报错。估计是库的版本不对还是怎么样。。就很气。在经过几个小时的修复和尝试重写工具之后,发现这是徒劳的。。
-
最后将
/tmp/opcche
拖出来,肉眼查找flag,找了一小时在 class-wp.php.bin 文件里找到了经过base64加密后的字符串。 -
其实,这题更暴力的解法是
strings *.php.bin|grep base64(“hctf”)
当然,这也不是正规解法。。应该是使用工具分析opcache字节码找到真正的后门。