ctfshowMISC入门图片篇(基础操作+信息附加)

简单记录一下自己做题的过程。

MISC1

直接打开png图片就是flag,签到题。

MISC2

用010editor打开,发现是png文件,改后缀打开拿到flag
在这里插入图片描述

MISC3

用bpg文件查看器打开,这里使用的是Simple BPG image viewer。

MISC4

解压过后用010editor打开六个文件,发现全是图片类型的文件,全部改后缀为.png,打开拼接就是flag

MISC5

用StepSolve打开,查看信息得出flag
在这里插入图片描述

MISC6

先查看图片属性,没有发现可用信息。用winhex打开,文件头也没有问题,再用ctrl+F查看一下关键字show,发现flag。
在这里插入图片描述

MISC7

与上题做法一样,直接查找到flag

MISC8

首先在Kali上使用binwalk查看图片隐藏了什么文件
在这里插入图片描述发现隐藏的图片,用foremost分离隐藏文件在这里插入图片描述

得到两张png图片,有一张就是flag

在这里插入图片描述
在这里插入图片描述

MISC9

本题的做法跟6、7题一样,winhex查找关键词就能看到flag

MISC10

提示:flag在图片数据里
用binwalk分离出图片数据,得到flag

在这里插入图片描述

MISC11

提示:flag在另一张图里
PNG图片知识:
再往后就是第一个数据块:数据块由4字节的数据域长度,4字节的类型码,指定长度(前面提到的数据域长度,这里IHDR就是0x0D个字节也即13字节)的数据,和4字节的CRC码组成。
而IHDR的组成为:4字节宽度,4字节高度,1字节位深度,1字节颜色类型,1字节压缩方法,1字节滤波方法,1字节隔行扫描方法。
在这里插入图片描述

在做这题之前,先了解了一些关于IDAT的知识:
具体参考:https://www.freebuf.com/column/205244.html
图像数据块 IDAT(image data chunk):它存储实际的数据,在数据流中可包含多个连续顺序的图像数据块。这是一个可以存在多个数据块类型的数据块。它的作用就是存储着图像真正的数据。IDAT采用 LZ77 算法的派生算法进行压缩,可以用 zlib 解压缩。值得注意的是,IDAT 块只有当上一个块充满时,才会继续一个新的块。
在了解了以上知识之后,我们可以开始分析这题:
(1) 用010editor打开图片,发现有两个IDAT块,说明第一块是直接打png图片显示的内容,而第二个才是flag隐写的地方。
在这里插入图片描述

(2) 我的解决方法是,使用tweakpng直接删掉第一个IDAT块,保存成新的图片,打开获得flag。
在这里插入图片描述

(3) 从MISC12学来的方法,pngcheck查看png图片信息:
在这里插入图片描述

MISC12

010-editor打开分析,好家伙30个IDAT块,其实原理跟MISC11一样
打开KALI,使用pngcheck:
命令:

pngcheck -vv misc12.png

在这里插入图片描述

发现前7个IDAT块有问题,试着用tweakpng删除这7个IDAT块,保存得到flag。

MISC13

用winhex打开,发现存在这样的两堆数据:

在这里插入图片描述

利用脚本run出flag

r = ''
s=bytes.fromhex('631A74B96685738668AA6F4B77B07B216114655336A5655433346578612534DD38EF66AB35103195381F628237BA6545347C3254647E373A64E465F136FA66F5341E3107321D665438F1333239E9616C7D942862E7A1CAA7248E7EB82AAC1FA193E3FF9F1300AF30882A7379F69F4920D185849313F735D185255517069EEAB9599CC7153F79B2A64DC317AA7C12312503FEFEABC8637CBECE1CDB4ED47D35D643BDB3FF7C5C1A781B7F026C7953327A7CC43E972E74B2471754C1A6E56FED38C5C80F4989933904D5A7DF2714589C964C1F5BDF9C929239ABA43BD3CA3109C059EAF30F5A23DCDC34C8DE3A9C35A0A7ABD55645BC5D3F5450D240DDB6147DFCDCFE33D27235C072BB9792BE5C8923')
for i in range(0,len(s),2):
    try:
        r+=chr(s[i])
    except:
        pass
print(r)

MISC14

在kali上用binwalk和foremost都分离不出数据,但是里面隐藏了两张JPG图片
用winhex打开,将第一个JPG文件删去保存即可获得FLAG

MISC15

直接用winhex打开就看到了FLAG,真的是跳过去了

MISC16

Kali用binwalk分离,打开文本即看到FLAG

MISC17

这题有一些难度,先放到kali中用binwalk试着分离,的确分离出了东西,但是打不开这个压缩包
在这里插入图片描述

换个思路
用zsteg分析看看png图片里有什么,果然隐藏了信息,信息存放这样一个东西里面extradata:0,试着将它分离出来
在这里插入图片描述

zsteg -e extradata:0 misc17.png > 1

发现还不是flag,继续用binwalk分离
binwalk -e /root/桌面/1
在这里插入图片描述

得到Flag
在这里插入图片描述

MISC18

右键查看图片属性就可以看到flag
在这里插入图片描述

MISC19

直接winhex打开看到flag
在这里插入图片描述

MISC20

EXIF信息查看器:
https://exif.tuchong.com/
在这里插入图片描述

西替爱抚秀大括号西九七九六四必一诶易西爱抚零六易一弟七九西二一弟弟诶弟五九三易四二大括号
ctfshow{c97964b1aecf06e1d79c21ddad593e42}

MISC21

EXIF信息查看
题目提示是在序列号中
在这里插入图片描述
十六进制转换试试
在这里插入图片描述

分离X和Y代码跑出来

print(hex(3902939465)[2:]+hex(2371618619)[2:]+hex(1082452817)[2:]+hex(2980145261)[2:])

在这里插入图片描述

MISC22

KALI使用exiftool

exiftool -ThumbnailImage -b /root/桌面/misc22.jpg > 123.png

在这里插入图片描述
缩略图隐写,黄字即为FLAG

MISC23

Kali用exiftool分析,发现以下几个信息
题目提示是在时间里,所以重点分析这个时间
1997:09:22 02:17:02,
2055:07:15 12:14:48,
2038:05:05 16:50:45,
1984:08:03 18:41:46
在这里插入图片描述
分别将这四个时间转换时间戳
在这里插入图片描述
转换为16进制,然后拼接起来就是FLAG
在这里插入图片描述

3425649e
a0e31938
808c0de5
1b70ce6a

MISC41

(本题为Misc入门图片篇和愚人节比赛特别联动题)
H4ppy Apr1l F001’s D4y!
愚人节到了,一群笨蛋往南飞,一会儿排成S字,一会儿排成B字。

打开010-editor,搜索十六进制F001,可以看到
在这里插入图片描述
脑洞真大,眼花缭乱,一个个对应,可以得到flag
ctfshow{fcbd427caf4a52f1147ab44346cd1cdd}

MISC信息附加小结:
拿到一张图片,先右键看看图片基本信息和属性,然后再用winhex和010-editor打开观察图片类型(这里要熟记图片文件头形式),再根据关键词查找flag,看看flag是否隐藏在字节中。如果这些都没发现flag,那么就要考虑是否图片隐藏了其他的图片,这时候就要运用到binwalk和foremost分离出隐藏的图片信息,如果图片类型是png还可以用zsteg查看隐写信息,反正方法很多,根据经验和思路进行思考一步一步分析。

  • 6
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_AaRong_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值