CTFshow刷题日记-MISC-图片篇(上)基础操作和信息附加

本文详细介绍了CTFshow中的12项图像谜题解法,包括直接查看、后缀转换、特殊格式解析、IDAT块操作、多层图片隐藏、元数据提取、编码挑战等,通过实例和原理解析帮助读者理解如何找到隐藏的flag。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ctfshow 图片篇引语

  • 大部分题目仅涉及单一知识点,但可能有多种解法;
  • 找到flag并不困难,关键是了解每一题背后的原理;
  • 藏在哪?为什么可以这样藏?请多考虑这两个问题;

misc脑图-misc之神丁神给的

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FFK1uQO4-1631199088845)(https://gitee.com/q_one/oceanpic/raw/master/img2021-/20210909224932.png)]

基础操作

misc1-签到题

打开图片就是flag

misc2-改后缀

下载之后是一段文本,打开发现png的文件头,将txt后缀改成png,查看图片,获得flag

misc3-bpg格式

下载我就直接打开了,我还寻思就这?,原来是我的图片查看器帮了忙,bpg文件,推荐蜂蜜浏览器

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ChXAbQGw-1631199055893)(F:_笔记\mdpic\1.CTFshow刷题日记-MISC-图片篇(上)] - 副本\image-20210909170530982.png)

misc4-改后缀

下载发现是六个文档

image-20210909164328117

然后每个文档打开都是看似乱码的六种不同格式的图片,只要根据其文件头将其改为正确的格式即可

从1-6分别是png,jpg,bmp,gif,tif,webp

每张图都是flag的一部分

信息附加

misc5-7-010直接搜

010打开,搜ctfshow找到flag

misc8-分离文件

提示:flag在图片文件中图片文件中。

给的是png,根据提示猜测可能是改了高度,或者要分离文件,该高度无果,在kali中使用分离命令foremost分离图片,成功分离出flag

misc9-010直接搜

提示:flag在图片块里

010打开,搜ctfshow找到flag

misc10-分离文件

提示:flag在图片数据里

使用binwalk -e命令分离文件

image-20210909174545281

原理-引用z.volcano师傅博客

在这里插入图片描述

misc11-双IDAT块

提示:flag在另一张图里

IDAT

图像数据块IDAT(image data chunk):它存储实际的数据, 在数据流中可包含多个连续顺序的图像数据块。
IDAT存放着图像真正的数据信息,因此,如果能够了解IDAT的结构,我们就可以很方便的生成PNG图像。

010打开发现有两个IDAT数据块

image-20210909192947451

把第一段IDAT删除,另存为图片内容就是flag

misc12-多IDAT块

提示:flag在另一张图里

打开发现有十多个IDAT,可以使用tweakpng这个工具边删边保存,发现删除前八个flag就出来了

misc13

试了多种方法没解出来

在010使用正则表达式搜索 c.*t.*f

发现两个有点像flag的字符串

image-20210909195050677

flag格式是ctfshow很明显这是每隔一个字符有一个垃圾字符,python简单处理下

str = "ct¹f…s†hªoKw°{!aeS6¥eT34fxa%4Ý8ïf«52•8b‚1º7E4|2Td~7:2äeñ6úfõ4129T8ñ328é0l}"
flag = ""
for i in range(len(str)):
    if (i%2==0):
        flag = flag + str[i]
print(flag)

运行得到flag

image-20210909195609437

misc14-手动分离图片

jpg格式的图片

在kali中使用命令却分不出来,使用010

在0x837位置发现另一张jpg图片,从837选择到末尾,右键选择->保存选择

image-20210909204942196

保存生成一个新文件,即为flag

misc15-010一把梭

提示:flag被跳过去了

不知道啥意思但是010一把撸

image-20210909205559227

misc16-binwalk一把梭

image-20210909210026331

misc17-steg

提示:flag在图片数据里

使用zsteg命令发现隐藏的数据

image-20210909211458439

使用命令提取数据

zsteg -E "extradata:0" ./misc17.png > ./png
// 名字随便定义

使用命令去分离

binwalk -e png

image-20210909211849288

misc18-图片属性

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

简单肯定在属性里边

flag分成了三段

image-20210909212031194

misc19-010

提示:flag在主机上的文档名里

010一把梭

image-20210909212457570

两段拼一下就有了

misc20-exiftool工具

提示:flag在评论里

可以使用工具exiftool

image-20210909213213082

但是环境问题是乱码,在linux下查看

image-20210909213446159

如果没有exiftool,可以安装,教程

这flag需要译一下

misc21-转换

提示:flag在序号里

同样使用exiftool命令查看

image-20210909214053514

发现序列号提交不正确,经过十六进制转码发现问题

image-20210909214219751

也就是说吧x和y都要分别进行转换而不是合一起转换,python的hex()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Sao2gnwl-1631199055913)(F:_笔记\mdpic\1.CTFshow刷题日记-MISC-图片篇(上)] \image-20210909214809200.png)

再用ctfshow{}包裹

misc22-缩略图隐写

提示:flag在图片里

缩略图竟然和图片不一样,学到了

这是magicexif

image-20210909223007773

利用exiftool工具导出图片

exiftool.exe -ThumbnailImage -b misc22.jpg > 1.jpg

misc23-属性转换

提示:flag在时间里

使用exiftool命令查看信息

image-20210909223653586

发现四个时间,将时间转换成时间戳网站https://www.zxgj.cn/g/unix

再用21题的方法,进行hex编码

misc41-抽象

提示:

H4ppy Apr1l F001’s D4y!
愚人节到了,一群笨蛋往南飞,一会儿排成S字,一会儿排成B字。

愚人节限定题,下载得到misc41.jpg,用winhex打开,发现是jpg的文件尾,但是文件头对不上,本来想以这个方向为突破点,没得到结果…

后面看了套神的wp才知道,提示中的第二句说的就是我…

第一句提示的F001才是真突破点,这个位置有大量F001,看起来组成了某种形状

我的思路是,把F001出现过的位置中所有十六进制的值单独截取出来,每四位分隔开,把F001替换成0,其他值替换成空格。 最后变成下图的8*125的“图”,其实如果会用CyberChef会更方便,不过我不太习惯。

在这里插入图片描述

依稀看出flag:ctfshow{fcbd427caf4a52f1147ab44346cd1cdd}

来自https://blog.csdn.net/weixin_45696568/article/details/115261347

参考链接

z.volcano

### CTFShow Misc 40 目解思路 对于CTFShow平台上Misc分类下的第40号目,虽然具体描述未直接提及[^1],但从其他类似目的分析可以推测出可能涉及的技术方向。 #### 使用图像处理工具识别隐藏信息 一些杂项挑战涉及到图片隐写术,即在看似正常的文件中嵌入秘密消息。针对这类情况,`stegsolve.jar`是一个非常有用的Java应用程序,它可以帮助检测并提取这些隐蔽的数据。通过加载目标图像到该软件内,尝试不同的通道组合以及调整亮度对比度等参数来发现异常之处。 #### 利用命令行工具获取文件属性 当面对GIF格式的图形文件时,可以通过Linux下的ImageMagick套件中的`identify`指令快速查看其基本信息。例如执行如下Shell脚本能够输出每一帧所占用的空间大小: ```bash identify -format "%T " misc40.gif > info.txt ``` 这一步骤有助于判断是否存在额外附加信息层或是被篡改过的痕迹[^2]。 #### 数据流校验与修复 如果怀疑原始素材遭到破坏或者故意设置了障碍,则可借助专门用于PNG格式维护的小型实用程序——`tweakpng.exe`来进行更深入的研究。此工具允许用户浏览内部结构、修改关键字段甚至恢复损坏的部分而不影响整体显示效果[^3]。 综上所述,在解决此类谜过程中应当综合运用多种手段逐步逼近真相;同时也要注意积累经验教训以便日后遇到相似情形能更加从容应对。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

OceanSec

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

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

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

打赏作者

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

抵扣说明:

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

余额充值