CTF Show Misc入门 图片篇-信息附加 Misc5-23,41

此系列为Misc入门图片篇,不定期更新;
目的是介绍 Misc 方向中与图片相关的常见出题点;
题目按照知识点分类,并尽量保证难度为入门水平;
大部分题目仅涉及单一知识点,但可能有多种解法;
找到flag并不困难,关键是了解每一题背后的原理;
藏在哪?为什么可以这样藏?请多考虑这两个问题;

才疏学浅,人菜手残,若有错漏之处,还望指出;
希望能对刚接触 Misc 方向的朋友有所帮助。

misc5

先解压一下,得到misc5.png,提示there_is_no_flag_here

要我肯定是binwalk一手,先分析一下试试,看看有没有什么隐藏的东西,也没有什么东西

看了下大佬的wp,都是用winhex打开图片,看到最后有flag,我用的是kali,直接vim打开了

 flag为:(vim好像复制不下来,气急败坏直接cat出来了)

ctfshow{2a476b4011805f1a8e4b906c8f84083e}

misc6

和上一个题一样,解压出来都是一样的提示

直接cat出来发现内容有点多,前面的内容都清空了,用vim打开后,发现flag就在第5页

然后就是要解决vim下不能复制粘贴的问题,搜了一下,找到一篇博客,只需要在vim模式下输入以下命令即可

:set mouse=c

flag为:

ctfshow{d5e937aefb091d38e70d927b80e1e2ea}

misc7

flag在图片文件信息中。

解压打开后,和前面一样的提示,vim下输入 / 表示搜索模式,纯靠眼睛太容易瞎了

/ctf

flag:

ctfshow{c5e77c9c289275e3f307362e1ed86bb7}

misc8

flag在图片文件中图片文件中。

解压打开还是一样的提示,先用vim打开,输入/ctf,发现并没有找到

根据提示以及这是张png图片,猜测可能是图片隐写,使用binwalk分析

可以看到确实隐写了一张图片,然后用foremost分离图片

分离出来两张图片,第一张就是刚开始看到的提示,第二张就是flag

flag为:

ctfshow{1df0a9a3f709a2605803664b55783687}

misc9

flag在图片块里。

解压打开还是一样的提示,用vim打开以后,/ctf 搜了一下就发现了

然后输入 :set mouse=c 就可以复制了

试过了,这两个命令不能同时执行

可以尝试用 /ctf 搜索,然后回车,再输入y,下边会出现y表示可以复制,输入yy复制当前行

搜索情况下,n是搜索下一个关键词 N是搜索上一个关键词

flag为:

 ctfshow{5c5e819508a3ab1fd823f11e83e93c75}

misc10

flag在图片数据里。

解压出来还是一样的提示,先vim打开搜索一下,没有找到flag,用binwalk分析一下

可以看到10E5这个文件是个文本文件,而566是一个二进制文件

flag为:

 ctfshow{353252424ac69cb64f643768851ac790}

zlib是一种压缩格式,类似于zip

misc11

flag在另一张图里。

根据提示,直接binwalk分析一下,下面有两个zlib文件

这个确实没思路,找了找大佬的博客

毕竟只是知道zlib是一种压缩方式,但之前也没找到比较好的解压缩软件

有一个工具叫TweakPng,github C源码也有提供exe版本,大家自行鉴别毒马,自行选择

c源码那个链接readme.md上提供了一个官网下载链接,下载以后,根据系统选择相应文件夹下的exe应用程序

工具栏上面选择 Tools -> Image View(F7),可打开右下角的窗口预览图片

flag为:

 ctfshow{44620176948fa759d3eeafeac99f1ce9}

misc12

flag在另一张图里。

解压打开还是一样的提示,vim并没有找到,binwalk分析一下只有一张照片

用PNG Debugger跑了一下,但是发现没有出错的IDAT块

PNG Debugger可以进行读取 PNG 图片的数据,检测各数据块中的 CRC 是否正确,在 Windows 下使用。

CRC 码是 循环冗余校验码 的简称,是 png 图片中一种的数据, 是目前使用非常广泛的数据校验方式,不仅能校验传递过来的数据正确性,还能筛查出哪一位出现了错误。

比如可用于判断 png 图片的宽和高是否正确
 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Wkc_03/article/details/130885252

点击链接下载以后,打开debug文件夹,可以看到有一个exe,直接拖出来就可以用

用TweakPng打开misc12.png,可以看到有很多IDAT,这些就是png显示的内容

删除第一个IDAT块以后,会报错,后面也会一直报错

直到删到长度263的时候,发现图像显示出flag了

flag为:

 ctfshow{10ea26425dd4708f7da7a13c8e256a73}

找了百科,png的数据块结构中,关键数据块包含了文件头数据块IHDR、调色板数据块PLTE、图像数据块IDAT、图像结束数据块IEND

misc13

flag位置在图片末尾。

vim打开以后特意关注了末尾,也没注意到,用cat输出以后会比较明显一点,发现有这么一串字符

flag是间隔开来的,写个脚本执行一下,结果会发现存在乱码,这个应该是16进制转义的问题

直接对16进制进行处理,用010打开图片

​​​​​​​​​​​​​​​​​​​​​​​asc = "631A74B96685738668AA6F4B77B07B216114655336A5655433346578612534DD38EF66AB35103195381F628237BA6545347C3254647E373A64E465F136FA66F5341E3107321D665438F1333239E9616C7D"
str = bytes.fromhex(asc)
print(str)
flag = str[::2]
print(flag)

flag为:

 ctfshow{ae6e3ea48f518b7e42d7de6f412f839a}

misc14

flag在那张图里。

binwalk以后发现有一个TIFF图片,foremost不出来

输入dd命令提取出图片:

if是输入文件名称,of是输出文件名称,skip是偏移量,就是你要提取的文件的最前面的数字,bs=1

dd if=misc14.jpg of=flag.jpg skip=2103 bs=1

flag为:

ctfshow{ce520f767fc465b0787cdb936363e694}

dd是一个Unix类Unix系统上的命令,主要功能为转换和复制文件

dd命令行语句与其他的Unix程序不同,因为它的命令行选项格式为选项=,而不是更标准的--选项 值-选项=

dd默认从标准输入中读取,并写入到标准输出中,但可以用选项if(input file,输入文件)和of(output file,输出文件)改变

https://zh.wikipedia.org/wiki/Dd_(Unix)

misc15

flag被跳过去了。

这个题,直接用vim打开,输入 /ctf ,就可以出来,全网搜了一下,除了直接给答案,都没有给出提示有什么用

flag为:

 ctfshow{fbe7bb657397e6e0a6adea3e40265425}

misc16

flag在图片数据里。

vim打开并没找到,用binwalk分析了一下

这里再啰嗦一下,binwalk -e是直接提取文件,并且binwalk会自动帮你解压缩

其他具体参数可以参考这篇文章BinWalk安装和命令参数详解-腾讯云开发者社区-腾讯云

flag为:

ctfshow{a7e32f131c011290a62476ae77190b52}

LZMA:Deflate和LZ77算法改良和优化后的压缩算法

LZMA,(Lempel-Ziv-Markov chain-Algorithm的缩写),是一个Deflate和LZ77算法改良和优化后的压缩算法,开发者是Igor Pavlov,2001年被首次应用于7-Zip压缩工具中,是 2001年以来得到发展的一个数据压缩算法。它使用类似于 LZ77 的字典编码机制,在一般的情况下压缩率比 bzip2 为高,用于压缩的可变字典最大可达4GB。

misc17

flag在图片数据里。

vim一无所获,用binwalk分析一下,发现有一个bzip2压缩包

但是打开文件夹发现,只有一个压缩包文件,没自动解压,且没有图片文件

找了一下,需要用到zsteg这个工具来分习,可以参考一个比StegSolve更方便的工具—zsteg

zsteg misc17.png -a 

分析了以后会发现有3544bytes隐藏数据,名为 extradata:0

然后执行下面的命令输出隐藏数据到1.txt,然后再用binwalk分析一下

zsteg -e extradata:0 misc17.png > 1.txt
binwalk -e 1.txt

flag为:

ctfshow{0fe61fc42e8bbe55b9257d251749ae45}

在信息安全领域,隐写术是一种重要的技术,它利用看似无害的载体来隐藏秘密信息。其中,基于LSB(最低有效位)原理的图片隐写是一种常见的题型,在CTF(Capture The Flag)比赛中尤为常见。这类题目要求参赛者从给定的图片中提取出隐藏在其中的信息

在过去,参赛者们主要依赖于StegSolve这款工具来完成这项任务,但是过程有些缓慢和复杂

与StegSolve相比,zsteg不仅具有更高的效率,而且操作更为简便。zsteg是一个专门用于检测PNG和BMP图片中隐藏数据的工具,它能够快速提取出基于LSB原理隐藏的信息

安装使用也可以参考这篇文章:https://www.cnblogs.com/pcat/p/12624953.html

misc18

flag在标题、作者、照相机和镜头型号里。

根据提示,可以关注一下这些数据,这个需要在win下看,kali里面看不全

 或者直接输入以下命令,直接打印出来

exiftool misc18.tif

flag为:

ctfshow{325d60c208f728ac17e5f02d4cf5a839}

misc19

flag在主机上的文档名里。

这个用属性就看不到了,可以用MagicExif打开图片,可以看到文档名的值是一半,另一半还在下面,或者使用在线网站图虫exif信息查看器,直接将图片导入,找到主机和文档名记录的flag

或者直接输入以下命令,直接打印出来,flag的后半部分往下翻翻就有了

exiftool misc19.tif

flag为:

ctfshow{dfdcf08038cd446a5eb50782f8d3605d}

EXIF是专门为数码相机的照片设定的,可以记录数码照片的属性信息和拍摄数据,主机和文档名都属于exif信息的一部分

misc20

flag在评论里。

直接用exiftool打开,可以看到评论是中文,需要谐音一下

exiftool misc20.jpg

flag为:

ctfshow{c97964b1aecf06e1d79c21ddad593e42}

misc21

flag在序号里。

直接用exiftool打开,找到序号,即Serial Number,猜测是十六进制,找个在线网站转一下

686578285826597329

ctfshow上面有四串数字串,比较可疑

在线进制转换网站,十进制转换为十六进制

3902939465 2371618619 1082452817 2980145261
e8a22149   8d5c073b   4084eb51   b1a1686d

 注意分组转换,大小有上限

flag为:

ctfshow{e8a221498d5c073b4084eb51b1a1686d}

misc22

flag在图片里。

提示在图片里,还是先vim打开搜索一下,并没有发现,用binwalk分析一下,有两个图片

但是用foremost也无法分离,无果只能拖出来,突然注意到缩略图下面有点黄黄的,放大一看确实有一串字符串,真的是在图片里啊哈哈哈

直接用win+放大器放大,还是看不太清,用MagicExif工具图像浏览器打开再放大,稍微能看出来一点,这可是个极度费眼的活

flag为:

 ctfshow{dbf7d3f84b0125e833dfd3c80820a129}

misc23

flag在时间里。

解压打开是一个psd文件,用exiftool输出一下,注意到步骤有四个,ctfshow{}包裹,然后UnixTimestamp,然后DECtoHEX,最后getflag,下面有四个时间

1997:09:22 02:17:02+08:00
2055:07:15 12:14:48+08:00
2038:05:05 16:50:45+08:00
1984:08:03 18:41:46+08:00

 去掉最后的+08:00,把日期中间的:替换成-,时间戳(Unix timestamp)转换工具转换成时间戳,然后在线进制转换转换成16进制,拼接起来得到flag

874865822 2699237688 2156662245 460377706
3425649e  a0e31938   808c0de5   1b70ce6a

flag为:

ctfshow{3425649ea0e31938808c0de51b70ce6a}

misc41

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

vim和binwalk都尝试无果,拖到win下用010打开,搜了下F001

flag为:

ctfshow{fcbd427caf4a52f1147ab44346cd1cdd}

​​​​​​​MISC常规解题步骤(图片)

1.解压打开,先看一下图片,然后用vim打开, / 搜索一下

2.binwalk分析一下,是否有文件隐写

3.判断文件格式是否篡改,检查png的文件头和文件尾,文件格式正常 PNG文件头(hex):89 50 4e 47 0d 0a 1a 0a PNG文件尾(hex): 00 00 00 00 49 45 4E 44 AE 42 60 82

3.判断否有文件二进制合并,搜索png文件头8950,发现只有一个,未使用二进制合并文件 4.判断是否修改png图片宽高,使用TweakPNG

参考博客:

CTF中misc图片隐写的一些套路

4-杂项题目练习(一).pdf

BugKu: 粉色的猫-CSDN博客

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值