roger 发表于 2019-6-3 22:15:24

被转码的图片解题wp

无法正常显示如下图:记事本等打开如下图:=号结尾,全部字符大写,数字不大于7,应判断是base32编码。使用image标签:<img src="data:image/jpg;base32,xxxxxxxxxxxxxxx" />浏览器未能显示图片:百度搜了一下,暂未找到在线base32图片转换工具。写脚本转换:import base64
l1 = []
with open('jpg2.jpg', 'rb') as f:
   b32 = f.readlines()
#print b32
   b32=''.join(b32)
with open('jpg3.jpg', 'wb') as f:
   f.write(base64.b32decode(b32))

print 'done'
运行后生成jpg3.jpg,可正常打开获得flag
加密代码为:
import base64
l1 = []
with open('jpg.jpg', 'rb') as f:
   b32 = f.readlines()
#print b32
   b32=''.join(b32)
with open('jpg2.jpg', 'wb') as f:
   f.write(base64.b32encode(b32))
print 'done'


所用到的代码以及解题过程:






Gu-f 发表于 2019-6-8 15:36:20

咦?我base32解码后写入16进制无法识别图片,好奇怪哦emmm,难道必须二进制写入吗?

roger 发表于 2019-6-8 15:38:28

Gu-f 发表于 2019-6-8 15:36
咦?我base32解码后写入16进制无法识别图片,好奇怪哦emmm,难道必须二进制写入吗? ...

不应该啊,我这可以,你再试试,可能哪里出错了

Gu-f 发表于 2019-6-8 15:52:28

xuenixiang 发表于 2019-6-8 15:38
不应该啊,我这可以,你再试试,可能哪里出错了

找到原因了,base32解码后有一部分不可见字符,txt给我去掉了,导致转jpg16进制的时候那些字符丢失了{:6_134:}{:6_150:}
页: [1]
查看完整版本: 被转码的图片解题wp