安洵杯-MISC
jerem1ah Lv4

安洵杯-MISC

1.打开文件Signal一串二进制数据

1
2
3
4
5
from Crypto.Util.number import *
with open('Signal','r') as f:
context = f.read()
print(long_to_bytes(int(context,2)))

image-20221128150937905

发现PK压缩包标志

1
2
3
4
5
from Crypto.Util.number import *
with open('Signal','r') as f:
context = f.read()
with open('Signal.zip','wb') as f:
f.write(long_to_bytes(int(context,2)))

2.压缩包里是625张黑和白的图片,以及一个加密的压缩包

image-20221128151242992

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from PIL import Image

IMAGE_PATH = 'Signal0/'
IMAGE_HEIGHT = 100
IMAGE_WIDTH = 100
IMAGE_ROW = 25
IMAGE_COLUMN = 25
IMAGE_SAVE_PATH = 'image.jpg'

newimage = Image.new('RGB',(IMAGE_COLUMN*IMAGE_WIDTH,IMAGE_ROW*IMAGE_HEIGHT))
for y in range(25):
for x in range(25):
timg = Image.open(IMAGE_PATH+str(y*IMAGE_COLUMN+x)+'.png','r')
newimage.paste(timg,(x*IMAGE_WIDTH,y*IMAGE_HEIGHT))
newimage.save(IMAGE_SAVE_PATH)
newimage.show()

image-20221128151331023

得到解压密码

1
187J3X1&DX3906@!

3.压缩包里是一串16进制数据

image-20221128151513995

放到CyberChef里解码https://cyberchef.org/

image-20221128151636709

保存为png图片 得到

image-20221128151713467

4.图片用stegosolve打开,通道全选发现flag

image-20221128151817712

5.结语:

1.二进制数据转换为字节数据,发现是压缩包

2.压缩包里625张图片组装生成二维码,得到里面压缩包密码

3.解开压缩包里面有16进制文本数据得到base64数据,再解码得到png数据,保存png

4.png图片用stegosolve打开通道全选能够发现flag

题目文件放到里云盘需要自提

Signal https://www.aliyundrive.com/s/eKRAdp3chp6 提取码: x23v 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

 Comments