misc入门 部分wp(持续更新)

misc3
查看bpg文件
.\bpgview.exe 文件路径
下载地址
在这里插入图片描述

misc11
提示:flag在另一张图里。
放入tweakpng中,删除一个IDAT块,保存为新的图片。得到flag
在这里插入图片描述
misc12
提示:flag在另一张图里。
做法与11一模一样,然后只是一个一个IDAT块删完然后保存下来得到flag。我映像中应该是删了5次。
在这里插入图片描述
misc13
提示:flag位置在图片末尾。
在这里插入图片描述这里把这串字符的十六进制数值复制下来,按照规律选取正确的数值,直接搞不行。。。。。

s="631A74B96685738668AA6F4B77B07B216114655336A5655433346578612534DD38EF66AB35103195381F628237BA6545347C3254647E373A64E465F136FA66F5341E3107321D665438F1333239E9616C7D"
flag=""
for i in range(0,len(s),4):
    flag += s[i]
    flag += s[i+1]
print(flag)

misc14
提示:flag在那张图里。
在这里插入图片描述
binwalk发现存在两张图片
其中一张是JFIF的图片,直接在010里面搜JFIF找到文件头
在这里插入图片描述
从这里开始复制下来新建为新的图片。打开后得到flag

misc17
提示:flag在图片数据里。

先binwalk分析,没啥问题,然后试试zsteg
在这里插入图片描述
发现隐藏的数据,位置处于extradata:0

将数据提取出来:zsteg -E “extradata:0” /home/volcano/桌面/misc17.png > 1.txt

然后再binwalk -e把1.txt中的数据分离出来,拿到flag

misc20
exif信息查看
在这里插入图片描述
ctfshow{c97964b1aecf06e1d79c21ddad593e42}

misc22
提示:flag在图片里。
用magicexif打开,直接发现flag,flag藏到了缩略图中
在这里插入图片描述
在这里插入图片描述
但是很难看清,然后我们截图,用StegSolve换了个颜色
在这里插入图片描述
有个地方很难看清
在这里插入图片描述
这是个c不是o 。。。。。。。。

ctfshow{dbf7d3f84b0125e833dfd3c80820a129}

misc23
提示:flag在时间里。

使用exiftool看一下发现有好几个历史时间,上面的History Action中有提示在这里插入图片描述
Timestamp指的是时间戳,那个前缀没搞懂是什么意思,DECtoHEX是十进制转十六进制
时间戳转换
在这里插入图片描述
然后再进制转换,就好了

ctfshow{3425649ea0e31938808c0de51b70ce6a}

misc 24 hao
四国欸的一道题

提示:flag在图片上面
我第一想法就是直接改高度就好,然后发现不能这样。。。。。。
这个是bmp文件bmp文件结构

在这里插入图片描述
目前是900*150=135000个像素大小,文件头占了53个字节,文件尾的位置在675053字节处(后面两个字节是windows的”补0”),又因为每个像素点由3个字节(十六进制码6位)表示,每个字节负责控制一种颜色,分别为蓝(Blue)、绿(Green)、红(Red),所以文件真实的像素大小为:(675053-53)/3=225000
在这里插入图片描述
这题的宽度是对的,所以正确的高度是225000/900=250
在这里插入图片描述
然后这个就是改了的高。
在这里插入图片描述
在这里插入图片描述
misc 25 base
是个很简单的题,但是因为上面那个题,我搞混了。。。。。。。

提示:flag在图片下面
然后是png图片,PNG文件结构
png改图片高度还是很简单的,没bmp那么多事直接改,左框是图片宽度,右框是图片高度
在这里插入图片描述
改大96就好

misc26
提示:flag还是在图片下面,但到底有多下面?
在这里插入图片描述
改了图片高度后还要知道对的高度,根据图片的crc32值爆破宽高,这题算出来高度是25e
脚本

import struct
import binascii
from Crypto.Util.number import bytes_to_long
 
img = open("misc26.png", "rb").read()
 
for i in range(0xFFFF):
    stream = img[12:20] + struct.pack('>i', i) + img[24:29]
    crc = binascii.crc32(stream)
    if crc == bytes_to_long(img[29:33]):
        print(hex(i))

在这里插入图片描述

ctfshow{94aef125e087a7ccf2e28e742efd704c}

misc27 base
提示:flag在图片下面
jpg文件结构
在这里插入图片描述
在这里插入图片描述
FF是我已经改了的高
在这里插入图片描述

msic 28
提示:flag在图片下面。
图片是gif,修改gif高度
在这里插入图片描述
但是要改两处才行
在这里插入图片描述
在这里插入图片描述
也阔以用gif.bt直接改
misc29
与上一题一样。对gif全部帧进行替换。搜索全部的96 00换成FF 00
misc 31
做法同24,最后算出宽度为1082(余数舍去)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值