ctf题目writeup(6)

2019.2.2

依旧是bugku上面的题目,地址:https://ctf.bugku.com/challenges

1.

解压后是60多个out.zip,都是真加密,里面都是1kb的data.txt

也没有密码的提示。所以估计就得写脚本crc32爆破了。(一个txt 4字节,咱们不考虑中文,

那就是4个英文字符或者英文符号啥的。)

这里看了大佬们说的,大佬们直接看出来是base64了。。。。所以那句话就用了 +=

脚本如下:(python2.7运行才行,3会报错的。)

#coding:utf-8
import zipfile
import string
import binascii

def CrackCrc(crc):
    for i in dic:
        for j in dic:
            for p in dic:
                for q in dic:
                    s = i + j + p + q
                    if crc == (binascii.crc32(s) & 0xffffffff):
                        #print s
                        f.write(s)
                        return

def CrackZip():
    for I in range(68):
        file = 'out' + str(I) + '.zip'
        f = zipfile.ZipFile(file, 'r')
        GetCrc = f.getinfo('data.txt')
        crc = GetCrc.CRC
        #以上3行为获取压缩包CRC32值的步骤
        #print hex(crc)
        CrackCrc(crc)

dic = string.ascii_letters + string.digits + '+/='

f = open('out.txt', 'w')
CrackZip()
f.close()

  脚本大概意思九十,从我们的这个字典dic里面(由英文字符,+,=构成,base64的那种) 爆破出4位字符的 crc32 与当前压缩包的crc32进行对比,一样的话就把这串字符输入到我们的文件 out.txt里面。

这个脚本得运行个几分钟,然后结果出来了,直接base64解码:

在线工具乱码挺正常不用怕,直接复制粘贴到txt(可能提示,保存为unicode就行。)然后用winhex打开:

注意最后一行 fix the file and get the flag

说明得修补文件。

文件尾是rar的文件尾,直接新建一个rar,照着补上rar的文件头就行了:

最后在注释里面找到flag

flag{nev3r_enc0de_t00_sm4ll_fil3_w1th_zip}

2.

下载后解压只有一个flag.txt打开后是 flag is not here 看了看详细信息也没什么。

然后把压缩包binwalk一下,发现是个坑。。没进展。

然后用winhex打开,pk,说明是zip,那就改个后缀,果然这回就不一样了:

flag.txt还是那样没啥东西。。。这个flag.rar却值得注意。

用winhex打开:

可是这个png并没有出现,说明可能是损坏了这里修复一下:

这里你可以自己找一张png然后和这个txt一块压缩一下,然后winhex看一下,对比一下哪里不一样就行了。 A8 34 7A 改成 A8 3C 74就行了

然后就能发现能解压一个png(其实是gif,winhex打开后就知道了。)

然后用stegsolve打开查看:

只有半个。。。考虑到是gif,用下逐帧查看发现第二帧还是空白的。。。。这里纳闷很久,就把第一张和第二张都保存下来了。发现这俩还是gif。。。就改个后缀,继续用stegsolve看

结果在第二帧的图的红色通道看到了这个:

然后用ps拼接一下:

然后保存下来,手机扫码或者电脑用qr来看都行:

 flag{yanji4n_bu_we1shi}

3.

下来之后用winhex打开是个png头,直接改成png后缀,变成了2b小姐姐的图片:

查看详细信息,用stegsolve都没什么发现。

然后拖到binwalk,分解出一个B2.png和伪加密压缩包:(binwalk其实直接就把伪加密里面的图分离出来了。。。)

然后就是搞这个B2和这个2B两个图了。。。

卡在这,看大佬说是 盲水印的方式:

脚本:https://github.com/linyacool/blind-watermark

下载后直接用就可以了,很好用也好理解,只不过第一次遇见真的懵逼。

NUST{I_10v3_2B_F0r3v3r}

4.

这道题挺坑的。。。。

这个txt是个base64:

但是先不要着急解密,解密也什么都没有。

QAQ用winhex打开 你会看到 <moduel>这样的字眼 还有什么 cipher.txt 这就很像pyc了 直接改后缀pyc

然后用在线反编译(或者反编译工具):

https://tool.lu/pyc/

看起来就是个解密函数 咱们直接运行就行:

所以提示就是 搞这个 STEGOSAURUS

百度一下找到了这个:

https://www.freebuf.com/sectool/129357.html

 是一个能在pyc文件里隐写的东西,真的牛逼。。。所以有工具就好办了下载下来用就行了 (支持python3.6 不支持2)

python3 stegosaurus.py -x QAQ.pyc

flag{fin411y_z3r0_d34d}

5.

下载图片后,jpg格式的没问题。直接binwalk,有个真加密的压缩包(rar格式的。)

暴力破解肯定不现实。。。试试照片上的字是不是密码。。。:

还真是,解出来一个txt ,一个摩斯电码,一个aes加密:

首先把摩斯电码解开:

它这里面斜杠先去掉 剩下的可能多多少少有点影响,不过现在看出来是个网站(这个网站是解密各种密码的网站。)

http://encode.chahuo.com

所以剩下的就简单了 网页后面那段:U2FsdGVkX18tl8Yi7FaGiv6jK1SBxKD30eYb52onYe0= 因该就是aes加密
AES Key:@#@#¥%……¥¥%%……&¥  (这个就是密码) 

用这个网站解开就行:

这样我们要去的地方就是:

http://c.bugku.com/momoj2j.png

但是这个网页现在不知道为啥打不开了。。。看别人的wp知道是一个二维码(还需要再ps中反相一下)

KEY{nitmzhen6}

猜你喜欢

转载自www.cnblogs.com/lixiaoyao123/p/10349079.html