ctf论剑场misc——二维码

二维码!!!

首先是一个压缩包文件
里面有个压缩包密码文件
打开密码 发现是个图片的base64的值
找个地方转换一下
http://www.vgot.net/test/image2base64.php
我用的是这个 注意要把前边的 data:xxx去掉
得到密码是asdfghjkl
ctf论剑场misc——二维码_第1张图片

然后获得一堆二维码
扫了几个发现 只有数值 0 和 1
应该组成起来是个二进制字符串
当然不可能一个个扫 之后利用两种二维码的图片大小不一样 来区分是0还是1
python脚本:


import os
for i in range(160):
    a=os.path.getsize(str(i)+'.png')
    if a==443:
        print(0,end='')
    else:
        print(1,end='')
print("\n")
num = '0110011001101100011000010110011101111011010100010101001001100011011011110110010001100101001100010111001101010101011100110110010101100110011101010110110001111101'
print(int(num,base=2))

flag = hex(584734024210209402934388760652246444438350818429)
print(flag)

得到结果:

0110011001101100011000010110011101111011010100010101001001100011011011110110010001100101001100010111001101010101011100110110010101100110011101010110110001111101

然后转成十六进制后再转成字符串就好了
得到flag。

你可能感兴趣的:(CTF)