欢迎光临散文网 会员登陆 & 注册

文件Hex逆转

2023-08-24 00:16 作者:林之珩同学  | 我要投稿

import binascii

from PIL import Image

import pytesseract

a = open("文件路径","rb+")#使用open函数以二进制形式打开文件

a = a.read()#read函数读取文件

hex = binascii.b2a_hex(a)#使用模块binascii把二进制文件转为十六进制

c = hex[::-1]#[::-1]把内容从后往前读取,也就是把文件倒过来读如:正序:123,那么[::-1]读取的内容就是:321

with open("flag.jpg","wb+") as d:#open("flag.jpg","wb+")以二进制的格式创建一个图片再使用weith as赋值给d

    d.write(binascii.a2b_hex(c))#用wirte()函数,再binascii模块把函数c的内以十六记住文件转为二进制的格式写入到函数d,保存为flag.jpg

    print("已保存到当前文件夹")#这时候去文件夹看flag是翻转的,于是顺着这个编写

image = Image.open("flag.jpg")#打开flag.jpg文件

image = image.transpose(Image.FLIP_LEFT_RIGHT)#使用参数transpose水平翻转图片

image.save("flag.jpg","PNG")#把文件夹内的图片,替换为已经翻转好的图片

print("替换为水平翻翻转的图片")

#做一个图片的文字识别,得到flag

read = Image.open("flag.jpg")#打开图片

text = pytesseract.image_to_string(read)#使用模块pytesseract图片文字识别

print("flag为:\n",text)#得到flag

文件Hex逆转的评论 (共 条)

分享到微博请遵守国家法律