项目地址:https://pan.baidu.com/s/1RFi5WX2vbLsQ7pkCfKjdkg
提取码:JZDB
MISC第一题、333.wav
是一个wav的音频文件,是首音乐没啥特别
使用Audacity,没看出什么
接着使用foremost分离出为429kb的.wav文件听着怪怪的
用Audacity打开看一下切换一下频谱图发现一个密码是用到什么地方讷🧠🧠🧠
使用010editor打开原文件发现有压缩文件,从14 00开始复制
这里有一个知识点:zip文件头识别为50 4B 03 04 14 00
使用010editor新建一个是十六进制的文件粘贴进去,加上zip的文件头504b0304另存为1.zip
把上面得到的密码填上去就可以解压是个flag文件,用notepad++打开是乱码
那就放进kali使用file命令识别一下文件,发现是zlib格式(linux的一种压缩格式)
使用binwalk分解一下得到flag
第二题、green
是一张png图片,png图片隐写常见的就是密文件放到lsb通道里面实现lsb隐写
使用zsteg工具 -a 查看所有通道发现0有zip压缩包,-E 分离出来
解压需要密码,那就是把密文放进通道里了再回去看全部通道的结果发现pass
解压后是一个txt文档里面内容为rgb的像素坐标(要把前后的括号去掉),使用脚本爆破出来宽和高
from PIL import Image
# 读取rgb.txt文件
with open("rgb.txt", "r") as file:
lines = file.readlines()
# 提取RGB颜色值
colors = []
for line in lines:
line = line.strip()
if line:
rgb = tuple(map(int, line.split(",")))
colors.append(rgb)
# 遍历所有可能的宽度和高度组合
for width in range(259*2,259*2+1): #高度和宽度需要从0爆破,这里是已经知道高度和宽度的情况
for height in range(259,260):
# 创建图像
image = Image.new("RGB", (width, height))
# 设置像素点颜色
for i in range(width * height):
color = colors[i % len(colors)] # 循环使用颜色值
x = i % width
y = i // width
image.putpixel((x, y), color)
# 保存图像
output_filename = rf".\break\output_{width}x{height}.png"
image.save(output_filename)