大家好,这次为大家带来的是攻防世界misc部分gif的writeup。
先下载附件,是一个压缩包。二话不说,先解压。打开解压后的文件夹后,发现又有两个文件夹,打开第一个文件夹,里面只有一张损坏的图片,看起来没什么价值。打开第二个文件夹,里面是一堆或黑或白的图片,自然而然想到可能黑图和白图对应二进制码中的1和0。
因为直接手动转换太慢,所以,我用python写了一个将其转换为二进制的脚本。
path = input("输入图片所在文件夹")
img0 = open(path + "\\" + "0.jpg", "rb")
img0 = img0.read()
out = ""
i = 0
while i <= 103:
img = open(path + "\\" + str(i) + ".jpg", "rb")
img = img.read()
if img == img0:
out += "0"
else:
out += "1"
i += 1
f = open(path + "\\" + "result.txt", "w")
f.write(out)
运行之后得到二进制码:01100110011011000110000101100111011110110100011001110101010011100101111101100111011010010100011001111101。
还是那句话,手动转码太慢,上代码。
path = input("输入写字本所在文件夹")
f = open(path + "\\" + "result.txt", "r")
strings = f.read().rstrip()
i = 0
s = ""
out = ""
while i <= len(strings) - 1:
s += strings[i]
if i % 8 == 7:
out += chr(int(s, 2))
s = ""
i += 1
f = open(path + "\\" + "result.txt", "w")
f.write(out)
运行之后得到flag:FuN_giF。