[MISC]杂项8

5 篇文章 0 订阅

[MISC]杂项8

题目

杂项8

小明看完图片老脸一红,心想,我女朋友能有这么瘦就好了。

https://www.ctf.show/files/fef308f2546c7b4286c0837e3ee2afb8/flag.rar?token=eyJ1c2VyX2lkIjoxNzM0MywidGVhbV9pZCI6bnVsbCwiZmlsZV9pZCI6NDd9.YvIBcA.eZ-mFsDKdUs1mULWn8yJe_GSnT0

在这里插入图片描述

过程

  1. 确定图片隐写思路
    猜测是图片的长宽被改变

  2. 使用十六进制工具查看图片
    winhex 工具打开图片

在这里插入图片描述
3.确定图片正确宽高

使用脚本,通过图片的 crc 计算正确宽高

图片crc地址:1D-20

脚本

import os
import binascii
import struct
import sys

if __name__ == '__main__':

    name = "杂项8/flag.png" #图片路径
    crc = 0x91918666          #图片当前CRC
    crcbp = open(name, "rb").read() 
    for i in range(5000):
        for j in range(5000):
            data = crcbp[12:16] + \
                struct.pack('>i', i)+struct.pack('>i', j)+crcbp[24:29]
            crc32 = binascii.crc32(data) & 0xffffffff
            if(crc32 == crc):    
                print(i, j)
                print('hex:', hex(i), hex(j))
                break

输出
在这里插入图片描述

3.修改图片长宽

图片长地址: 10-13
图片宽地址: 14-17

修改过程:
Edit->Modify Data->Add

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
另存为新文件

4.确定flag

打开新文件

在这里插入图片描述
flag{you_are_very_well}

总结

遇到图片不全、被压缩的情况猜测是长宽被改写,用winhex修改回正确尺寸

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值