a_good_idea
附件是一张图片
分析
查看图片备注、校验CRC、通道检查、LSB查看,都没什么问题。扔到Kali里面看看文件能不能分离出其他文件。
分离出来一个压缩包,里面包含一个txt和两张png
hint.txt提示:
让我们关注像素。
两张图片to.png和to_do.png,对其进行对比。
StegSolve工具里面可以直接进行Image Combine
当两张图片进行像素SUB减法运算时,呈现出一张二维码
扫描二维码得到flag。
Ditf
附件是一张图片
分析
1. IHDR隐写
扔到Tweakpng中发现CRC校验错误
扔到反推的脚本里面
#coding:utf-8
import binascii
import struct
crcbp = open("Ditf.png","rb").read() #打开图片
print("读取中...")
print("CRC校验位[29-33]:",crcbp[29:33].hex())
crc32frombp = int(crcbp[29:33].hex(),16) #读取图片中的CRC校验值
#print("图片中的CRC校验值:",crc32frombp)
for i in range(4000):
for j in range(4000):
data = crcbp[12:16] + struct.pack('>i',i) + struct.pack('>i',j) + crcbp[24:29]
crc32 = binascii.crc32(data) & 0xffffffff
#计算当图片大小为i:j时的CRC校验值,与图片中的CRC比较,当相同,则图片大小已经确定
if(crc32 == crc32frombp):
print("图片大小为:",i,j)
print("宽度[16-19]:",hex(i),"\t高度[20-23]:",hex(j))
break
将图片的高度修改为0x0514
修改高度后,图片下方出现一串字符:
但是这个字符串有什么用呢,不知道,再找找还有没什么信息
2.文件分离
复制到kali里面,binwalk查看一下是否有隐藏文件
foremost分离出一张图片和一个rar压缩包
使用前面的字符串StRe1izia解压缩,得到流量文件。
3.流量分析
自己试了一些过滤方式,没有找到关键信息。搜了一下,提示为png关键词,OK好吧,
过滤器:http contains png
发现请求了一张kiss.png,追踪HTTP流,里面有一串加密字符:
4.解密字符串
对这个字符串ZmxhZ3tPel80bmRfSGlyMF9sb3YzX0ZvcjN2ZXJ9,进行base64解密
得到flag{Oz_4nd_Hir0_lov3_For3ver}