ctfshow学习记录-misc入门(图片篇-信息附加5-14)

目录

    • misc5
    • misc6
    • misc7
    • misc8
    • misc9
    • misc10
    • misc11
    • misc12
    • misc13
    • misc14


misc5

解答:png图片没有直接给flag,用010editor打开看一下,发现flag被附加了后面。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第1张图片


misc6

解答:jpg图片,用010editor查看获取flag。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第2张图片


misc7

解答:与misc6一样,jpg图片,用010editor查看获取flag。


misc8

解答:可以看到png图片的结尾在中间出现了一次,然后接续png的开头。所以拼接了两个png。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第3张图片
用foremost分离一下,拆分出了2个图片,其中一个是flag。
在这里插入图片描述


misc9

解答:png图片,用010editor查看获取flag。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第4张图片


misc10

解答:用binwalk分离一下,获取到了flag。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第5张图片ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第6张图片


misc11

解答:用010Editor打开,有两块IDAT块,
这里我用tweakPNG查看(010也可以),可以看到两个IDAT的长度,第一个比第二个要小,说明第一块是有问题的。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第7张图片

IDAT(image data chunk)存储实际的数据,数据流中可以包含多个连续顺序的图像数据快,但是只有当前一个块充满的时候,才会继续下一个块。通常来说,块大小对应于编码器的缓冲区大小。(每个IDAT块也可以只包含一个数据字节,甚至0字节的PNG数据流,都是有效的,但非常浪费空间。)

所以如果有两个块,前一个的大小必然要大于后一个,这里明显不对。

删除第一个查看一下,后面部分的IDAT块是flag内容。
在这里插入图片描述

附:tweakpng(附下载地址)

这里我也找了一个图片,用010可以看到,这个图的IDAT的大小就是连续顺序的数据块,前面的IDAT都是相同大小,只有最后一个是不同的。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第8张图片


misc12

解答:还是删除IDAT快。

用tweakPNG可以看到这个图的IDAT数据大小不一,那就一个一个的测试,逐一删除尝试。

删除了几个IDAT块后,大概7-8个,图片出现了flag。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第9张图片


misc13

解答:用010Editor查看,发现了很多类似这种ctfshow中间夹杂字符的flag。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第10张图片
对这些flag逐一测试,找到最后的正确答案。附上脚本:

r = ''
a="""63 1A 74 B9 66 85 73 86 68 AA 6F 4B 77 B0 7B 21 61 14 65 53 36 A5 65 54 33 34 65 78 61 25 34 DD 38 EF 66 AB 35 10 31 95 38 1F 62 82 37 BA 65 45 34 7C 32 54 64 7E 37 3A 64 E4 65 F1 36 FA 66 F5 34 1E 31 07 32 1D 66 54 38 F1 33 32 39 E9 61 6C 7D"""
b=a.split(' ')
for i in range(0,len(b),2):
    try:
        r+=str(bytes.fromhex(b[i]),encoding="utf-8")
    except:
        pass
print(r)
#ctfshow{ae6e3ea48f518b7e42d7de6f412f839a}

misc14

解答:binwalk查看一下,发现存在两张图片。
JPEG有两种格式即JFIF和EXIF。我们把后面的JFIF的图片提取一下。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第11张图片
在010Editor中找到JFIF的头部。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第12张图片
然后把FFD8前面部分全部删除即可获取到flag图片。
ctfshow学习记录-misc入门(图片篇-信息附加5-14)_第13张图片

你可能感兴趣的:(ctf-misc,#,ctfshow-misc,学习)