欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

DMCTF writeup

程序员文章站 2022-05-15 11:33:42
...

DMCTF write up

下面是对部分题目的讲解,主要是杂项方面,我也是第一次写博客,如有不当请谅解

前言

最近参加了一次ctf的比赛,在这里写下writeup


1、checkin

真签到题,答案就在题目里,粘贴弄下即可
DMCTF writeup

2、fakezip

如题目所言,下载下来后发现用360解压是不需要用密码即可解压
得到一个txt文件
DMCTF writeup发现文件里面是一段音符,直接上网找在线音符转换即可解密
DMCTF writeup在线解密网站:https://www.qqxiuzi.cn/daohang.htm

3、basefamily

这个就是在解密网站里面是,提示也就是题目说的那样在base解密里面找,不过此题特殊地方是最后一步解密时要用hex解密

4、steghide

写ctf题时最好使用linux里面的kali来解题,会有很大的帮助,可以查看别的博主写的帖子,此题也用到了linux里的工具
此题使用linux里的steghide工具,利用此工具可以提取出一个txt文件
DMCTF writeup研究发现这个是ook码的一种,使用word将每个符号加上Ook放在线网站上解密即可获得flag

5、ARCHPR

这题折磨了许久,先是用archpr强行**此压缩包,然后获得一个图片和一个txt文件
DMCTF writeup打开txt文件提示图片用了lsb隐写,附带了密码,发现密码使用摩斯密码弄得,解密发现密码就是password,然后上网找关于lsb的题目,可以在github上找到代码,放入虚拟机解密即可获得flag,要注意的是代码是python2写的,可能需要配置好python2环境

6、collision

此题给了一个压缩包,可以看出里面有5个txt文件
DMCTF writeup上网查找之后发现此题需要使用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文件
DMCTF writeup
解出txt文件后发现两段看不懂的话
DMCTF writeup后来发现上面是凯撒加密,解密后发现要是有aes解密,将下面那段话进行aes解密即可,**在上面凯撒密码解密中得出

8、总结

ctf比赛挺有趣的,对基础知识的要求并不是那么特别高,而且解出迷后非常有成就感!