ctfshow 8神PNG隐写入门(土)赛 WP

23 篇文章 14 订阅
2 篇文章 2 订阅

非常好玩,考点齐全,复习了一遍,希望下次出需要用特别特别简单的脚本的题。记录wp顺便拿来当复习了。
本来想着按照做题顺序写,后来发现有点乱,还是按照题目序号写

题目描述

想要我的flag吗?如果想要的话,那就去找吧,我把全部的flag都放在那里。
下载地址https://ctfshow.lanzous.com/iDEiVmr8m4d

本场比赛共有18题,但只有1个附件文件(见第1题),所有flag均可以从附件中获取;
1、所有的flag开头和结尾均为#,中间由字母、数字或下划线组成;
2、本场比赛不使用任何可以设置密码的隐写方法,包括可以将密码留空的隐写方法;
3、原理类似的隐写方法在确保不互相干扰的前提下可能会以多种方式使用;
4、如果从附件提取的隐写信息为字符串形式,可能需要转码得到指定格式的结果;
5、如果从附件提取的隐写信息为另一张图片,该图片不会再包含隐写信息,即不存在套娃隐写;
6、所使用的字体均为微软雅黑,若有字符无法分辨,请与字体对比查看;
7、取得类似#abcd_1234#的字符串后,请计算其MD5值(包含头尾的#号);
8、每道题目都给出了一段MD5值,请找到MD5值匹配的题目后,将flag包上ctfshow{}格式提交。

One PieNG 1
下载附件,图片名字即为flag
在这里插入图片描述

ctfshow{#St4rt_fr0m_th1s_5tr1ng#}

One PieNG 2
在这里插入图片描述

ctfshow{#Th1s_i5_s0_34sy!!!#}

One PieNG 3
修改图片高度
在这里插入图片描述
习惯直接把0改成9,就直接出了3题和4题
在这里插入图片描述

ctfshow{#Pn9_He1gh7_6e_ch4ng3d#}

One PieNG 4
再往下拉就能发现flag
在这里插入图片描述

ctfshow{#M4yb3_we_sh0uld_9o_d33per#}

One PieNG 5
先把高度调回去,然后用stegsolve打开
B通道最低位隐写
在这里插入图片描述

ctfshow{#You_st3gs0lved_me!!!#}

One PieNG 6
LSB隐写,使用stegsolve的data extract,选上RGB的0通道
在这里插入图片描述

ctfshow{#LSB_1s_v3ry_e4sy_righ7?#}

One PieNG 7
考虑column,先选上RGB和column,发现可能存在flag,然后尝试去掉一些通道,最后在RG通道找到flag
在这里插入图片描述

ctfshow{#5omet1mes_LSB_g0es_co1omn_f1r5t#}

One PieNG 8
考虑到R,G,B,A通道都能看到左上角有问题,并且是明显的问题,可能7通道存在flag
在这里插入图片描述在这里插入图片描述

ctfshow{#zsteg_do35_no7_a1w4ys_w0rk#}

One PieNG 9
可以观察到,0通道的左上角的LSB隐写长度
在这里插入图片描述
然后发现1通道和2通道长度明显比这个长,
在这里插入图片描述
提取1、2通道,得到pk头,点击save bin,保存为1.zip
在这里插入图片描述
得到1.zip,解压即可得到flag
在这里插入图片描述

ctfshow{#Wh4t_1s_6it_0rder_4nd_y0u_c4n_LSB_b1nd4ta_to0#}

One PieNG 10
010打开,得到flag
在这里插入图片描述

ctfshow{#A_k3y_1n_exif#}

One PieNG 11
在线去找一个EXIF查看器(也可以用010,也可以用PS)
https://exif.tuchong.com/
在这里插入图片描述
直接白给2个flag
b58/3AjtPrXQJuhFwguK7nqu4ZpsqMLwU即base58后面的内容
在这里插入图片描述

ctfshow{#An0th3r_key_1n_3xif#}

One PieNG 12
同上,23415F6B65795F6672306D5F50683074307368307023转换
在这里插入图片描述

ctfshow{#A_key_fr0m_Ph0t0sh0p#}

One PieNG 13
010查看变量窗口(打开方式:视图–检查器窗口–变量,需要下载png摸板,点击模板–摸板储存库–png模板)
在这里插入图片描述
在这里插入图片描述

ctfshow{#Ju5t_a_1one1y_tEXt_chunk#}

One PieNG 14
也是常规考点,我先用PNGdebugger跑了一下
在这里插入图片描述
然后记得备份一份,使用tweakpng删掉前面出错的9个IDAT块(这9个IDAT块就是一打开图片看到的那个)
在这里插入图片描述
删掉tXEt和前面的IDAT,然后save保存
在这里插入图片描述

ctfshow{#eXtr4_IDAT_of_an0th3r_Pn9#}

One PieNG 15
使用binwalk,得到的文件我是一个个翻的
官解https://www.w3.org/TR/PNG/
更正后的原理:
zlib不是一个压缩算法,说到“zlib压缩数据”之类的概念时,里面zlib的意思更接近指代一种压缩数据的存放格式。同时,PNG的压缩算法虽然预留了相应标记位,但是目前仍只支持一种算法,同时也是zlib库目前唯一支持的算法,LZ77的变种,DEFLATE
所以IDAT块中的数据是以LZ77变种算法DEFLATE压缩后以zlib格式储存的
在这里插入图片描述

ctfshow{#IDAT_i5_a_z1ib_p4cka9e#}

One PieNG 16
这题太坑了,告辞。
之前出错的IDAT块
在这里插入图片描述
能发现都是00开头,后面几乎都是6,并且是16进制,猜想转ASCII
一转就出flag
23483164655F683378643437615F316E5F6368756E6B5F43524323
在这里插入图片描述

ctfshow{#H1de_h3xd47a_1n_chunk_CRC#}

One PieNG 17
文件尾
在这里插入图片描述

ctfshow{#HexEditor_wi11_b3_he1pfu1#}

One PieNG 18

foremost分离出另一张图片(虽说刚刚binwalk分过了)
在这里插入图片描述
在这里插入图片描述

ctfshow{#He110_I_4m_Tw0_PieNG#}

**One PieNG问卷调查 **

ctfshow{套娃终有报,天道好轮回。不信抬头看,苍天饶过谁。}

建议出进阶,建议用python,建议使用工具,不建议套娃
在这里插入图片描述

  • 8
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值