1、用取证工具打开IMG文件可以得到masked_key.png

西普CTF-Black Hole-以夕阳落款

2、将PNG文件提取出来,用WINHEX打开,前8字节与正常的PNG文件头进行异或,结果在文件末尾发现该串

西普CTF-Black Hole-以夕阳落款
Masked: 76 88 B1 A7 0D 1A 50 4C
PNG: 89 50 4E 47 0D 0A 1A 0A
XOR: FF D8 FF E0 00 10 4A 46
西普CTF-Black Hole-以夕阳落款

3、猜测:使用前64字节对文件进行循环异或加密。python脚本如下:

x=0
mask_in = open('masked_key.png','rb')
key = bytearray(mask_in.read(983024-64))#读取除文件头64字节外的所有字节
mask= bytearray(mask_in.read(64))#以头64字节作为异或密钥
for x in range(983024-64):
key[x] ^= mask[x%64]
key_out = open('unmasked_key.png','wb')
key_out.write(key)
key_out.close()

打开图片即可得到flag

Flag:

温馨提示: 此处内容需要评论本文后刷新才能查看,支付2元即可直接查看所有Flag。

小广告:关于获取西普实验吧所有Flag请点击这里查看索引

查看所有Flag文章需要输入密码,需要获取文章密码的童鞋请扫描下面微信或支付宝二维码捐助至少2元(老哥,捐多捐少是个缘分)之后发送支付凭证号联系我获取,Flag大全地址:Flag大全

新功能:捐款的小伙伴请联系我把自己的注册邮箱加入网站白名单,可以免回复看到本站所有Flag

PS:本站不是实验吧的官方站点,纯粹是个人博客,收取Flag费用仅是维持服务器费用,做站不易,且行窃珍惜!

微信二维码:
支付宝二维码: