DMCTF writeup
DMCTF write up
下面是对部分题目的讲解,主要是杂项方面,我也是第一次写博客,如有不当请谅解前言
最近参加了一次ctf的比赛,在这里写下writeup
1、checkin
真签到题,答案就在题目里,粘贴弄下即可
2、fakezip
如题目所言,下载下来后发现用360解压是不需要用密码即可解压
得到一个txt文件
发现文件里面是一段音符,直接上网找在线音符转换即可解密
在线解密网站:https://www.qqxiuzi.cn/daohang.htm
3、basefamily
这个就是在解密网站里面是,提示也就是题目说的那样在base解密里面找,不过此题特殊地方是最后一步解密时要用hex解密
4、steghide
写ctf题时最好使用linux里面的kali来解题,会有很大的帮助,可以查看别的博主写的帖子,此题也用到了linux里的工具
此题使用linux里的steghide工具,利用此工具可以提取出一个txt文件
研究发现这个是ook码的一种,使用word将每个符号加上Ook放在线网站上解密即可获得flag
5、ARCHPR
这题折磨了许久,先是用archpr强行**此压缩包,然后获得一个图片和一个txt文件
打开txt文件提示图片用了lsb隐写,附带了密码,发现密码使用摩斯密码弄得,解密发现密码就是password,然后上网找关于lsb的题目,可以在github上找到代码,放入虚拟机解密即可获得flag,要注意的是代码是python2写的,可能需要配置好python2环境
6、collision
此题给了一个压缩包,可以看出里面有5个txt文件
上网查找之后发现此题需要使用crc碰撞解密
代码如下(示例):
import datetime
import binascii
def showTime():
print datetime.datetime.now().strftime("%H:%M:%S")
def *****():
crcs = set([0x5a52d4f4l,0x5fa0f28bl,0xf899f771l,0x957af788l,0xf8208c12l])
r = xrange(65,127)
for a in r:
for b in r:
for c in r:
txt = chr(a) + chr(b) + chr(c)
crc = binascii.crc32(txt)
if(crc & 0xffffffff) in crcs:
print txt
showTime()
*****()
showTime()
crcs里放的即使txt文件的crc吗,360zip里面查看不了,要用WinRAR进行查看,有可能txt文件里字符在ASCII码65-127之外,可以尝试更改xrange里数的范围来获得flag
7、outguess
此题也是可以效仿steghide那一题,直接kali下载outguess这个软件然后上网搜如何使用outguess,
从图片里可以解除txt文件
解出txt文件后发现两段看不懂的话
后来发现上面是凯撒加密,解密后发现要是有aes解密,将下面那段话进行aes解密即可,**在上面凯撒密码解密中得出
8、总结
ctf比赛挺有趣的,对基础知识的要求并不是那么特别高,而且解出迷后非常有成就感!
上一篇: Clickhouse 支持毫秒 纳秒数据