查看: 197|回复: 1

[Misc] CTF之隐写教程总结

[复制链接]
发表于 2020-5-26 14:21:19 | 显示全部楼层 |阅读模式
0x01 PNG图片  PNG文件结构分析
  https://my.oschina.net/ososchina/blog/801358
  (1)用16进制编辑工具更改图片的高度,会只显示图片的一部分,下面的部分就被隐藏了,是个藏东西的好办法
  找表示宽度和高度的位置的话,可以先看看图片的属性,得到宽高值,转成16进制,搜索16进制值就找到了
  注:png图片的保存恢复效果比较好,jpg貌似有点问题
  题目链接:http://pan.baidu.com/s/1qY8sxZI 密码:5xam
  图片尺寸为500x420(宽x高)

CTF之隐写

CTF之隐写
  00 00 00 0D 说明IHDR头块长为13
  49 48 44 52 IHDR标识
  00 00 01 F4 图像的宽,500像素
  00 00 01 A4 图像的高,420像素
  最后四位CB D6  DF  8 A为CRC校验
  将图片的高改为500像素就拿到flag了
(2)初次遇见条形码。。。。

CTF之隐写

CTF之隐写

  各种工具找,最后看了writeup才知道这马身上有条形码。。。。。
  还是用画图工具拼接出来的完整条形码去扫描的,不会ps愁死人。。。。。
  在线扫描https://online-barcode-reader.inliteresearch.com/
(3)烦人de皮卡丘  题目链接:http://pan.baidu.com/s/1i5IG3JZ 密码:lymw
  不管是用binwalk还是stegsolve左右点都没有结果,在大佬这找到了答案http://blog.csdn.net/fuzz_nanche ... locationNum=4&fps=1
  原理我也不懂啊。。。。。又找到相关文章http://www.tuicool.com/articles/qINzyum,有待理解。。。。
(3)双图  题目链接:http://pan.baidu.com/s/1pLiCMdd 密码:590r
  拿过来图片先用binwalk分析一波,发现有两张图片,用winhex抠出来之后发现和第一张一样,第一张命名1.png,第二张2.png,用linux的compare命令比较一下,
  compare 1.png 2.png diff.png,发现diff.png下面有红线,

CTF之隐写

CTF之隐写
  用stegslove打开2.png选择image combiner

CTF之隐写

CTF之隐写
  选择1.png这时候会做一个xor运算,保存图片为solved.bmp

CTF之隐写

CTF之隐写
  winhex打开solved.bmp
  ,发现除了00就只有这里有东西了

CTF之隐写

CTF之隐写
  记下地址之后把2.png用ps打开另存为2.bmp,再用winhex打开2.bmp找到刚刚记下的地址把16进制数据复制出来,写个脚本把其中的二进制数扣出来,00为0,01为1然后再把二进制转换成ascii码得到flag
(4)再遇双图  题目链接:http://pan.baidu.com/s/1qYtzZIG 密码:31bg
  这次很直接,解压出来就是双图,用stegslove的image combiner

CTF之隐写

CTF之隐写
  保存反色,再用stegslove对二维码变化一下,得到三张二维码,扫描结果是DES   6XaMMbM7
  和一长串字符,des加密,秘钥是6XaMMbM7,解密吧得到flag
(5)py的交易  题目链接:http://pan.baidu.com/s/1c2KmV1A 密码:2m3f
  binwalk跑了一下除了很多的zlib什么也没发现,winhex打开看到了几个连续的pypypy。。。。。在一串常规的字符中看到了fireworks。。。

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写
  发现图层1被隐藏了,打开后发现了二维码

CTF之隐写

CTF之隐写
  扫描得到一串16进制
  03f30d0a3b8bed56630000000000。。。。。用winhex保存一下看到了CTF字样,

CTF之隐写

CTF之隐写
  还有pyt。。file一下发现python 2.7 byte-compiled,应该是pyc了,用uncompyle解一下发现flag里有个变量key,那key就是py了。强行符合题目要求。。。
(6)盲水印攻击  这里是利用脚本及说明  https://github.com/chishaxie/BlindWaterMark
  当用compare两张png之后发现不再是上面双图情况下的一条红线,而是很多条,就可以考虑一下是不是盲水印攻击了
(7)IDAT数据块隐藏  前面说过png的IHDR属性,在png中,大致分为四个大的数据块,IHDR数据块,PLTE数据块(调色板),IDAT数据块,IEND数据块(结尾标志),IDAT数据块在一个png图像中是可以存在多个的,但是好像正常情况下binwalk检测和插入了IDAT数据块后检测的结果是不一样的,,可以这样来辨IDAT是否有问题
  比如这是正常的png图片,分析的结果是

CTF之隐写

CTF之隐写
  这个图片也是有多个IDAT的块的,而在添加了一个IDAT块之后检测结果是这样

CTF之隐写

CTF之隐写
  并且FFDA位置是第二个IDAT的起始位置。当把第一个IDAT块扣掉之后原图就会显露出来,
  IDAT包含了四部分,第一部分是数据块长度(4位16进制),第二部分是IDAT标识符(4位16进制),第三部分是数据块,第四部分是CRC校验码(4位16进制)

CTF之隐写

CTF之隐写
  00 00 FF A5(数据块长度为FFA5)
  49 44 41 54 (IDAT标识符)
  接下来是数据块,在FFA5长度的数据块之后是4位16进制的CRC校验码
  并且合并过的IDAT的png图片用fireworks打开会提示格式错误,查看不了,ps就没有这个功能。。。。
0x02jpg图片  (1)图种
  题目链接:http://pan.baidu.com/s/1c2L8euk 密码:4h6k
  binwalk跑一下发现是两张图片

CTF之隐写

CTF之隐写
  第二张图片的偏移量是158792,用winhex将第二张图片提取出来保存为jpg格式就是flag了

CTF之隐写

CTF之隐写
  或者用foremost提取 foremost -v -i 2.jpg -o /root/aa     aa为空目录
  (2)画图
  题目链接:http://pan.baidu.com/s/1o7ZkGC6 密码:rmro

CTF之隐写

CTF之隐写
  这里没有flag,用winhex打开发现图片后面有很多的数据

CTF之隐写

CTF之隐写
  复制下来保存为txt文件用notepad++转换一下编码

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写
  这就是坐标了,这样来画图吧 转换成gnuplot能识别的格式

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写
  扫码得到flag
  (3)妹子的默默
  题目链接:http://pan.baidu.com/s/1c1YjjDA 密码:id5a
  binwalk跑一下发现rar文件,但是加密了。。。。找了很久密码,看了大佬的writeup才知道密码是图片上的“喜欢我吗.”注意:密码是汉字不是拼音,解压出来是这个

CTF之隐写

CTF之隐写
  第一个莫斯电码解码,得到一个网址,根据下面 的提示是AES加密,解密得到momoj2j.png访问

CTF之隐写

CTF之隐写
得到二维码
  (4)F5隐写
  链接:http://pan.baidu.com/s/1cnMYzs 密码:v0er
  cd F5-steganography
  java Extract 123456.jpg -p 123456
  后会生成output.txt文件,里面就有flag了
0x03bmp格式图片隐写  题目链接:http://pan.baidu.com/s/1jIp82NG 密码:ikov
  下载下来之后发现后缀是png,然而winhex打开发现并不是png头文件

CTF之隐写

CTF之隐写
  file一下是bmp文件,用wbs43open来解密吧http://pan.baidu.com/s/1slc2YHR

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写
  密码值为空

CTF之隐写

CTF之隐写
  解出来用notepad打开就看到flag了

CTF之隐写

CTF之隐写
0x04流量分析  题目链接:http://pan.baidu.com/s/1mi3aWwK 密码:4fd9
  (1)下载了一个pcapng的文件,用wireshark打开,过滤条件是http协议,发现了一句话的痕迹

CTF之隐写

CTF之隐写
  在开始的时候发现

CTF之隐写

CTF之隐写
  有flag.tar.gz
  接下来的http里应该就有这个数据了,在最后一个包里发现

CTF之隐写

CTF之隐写
  解一下压缩吧

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写
其他  (1)遇到了一个exe文件,用notepad++打开发现是一串base64,直接把代码复制到在线base64转图片得到flag

CTF之隐写

CTF之隐写
  题目链接:http://pan.baidu.com/s/1kUCWiNX 密码:xlui
  在线转换  http://imgbase64.duoshitong.com/
  (2)遇到一个宽带信息泄露的bin文件用routerpassview查看搜索username找到用户名就是flag
  题目链接:http://pan.baidu.com/s/1pLbQzTT 密码:g1i9
  (3)linux基本问题
  题目链接:http://pan.baidu.com/s/1dFIivh3 密码:olcx
  用notepad++打开发现flag.txt,用binwalk提取得到flag.txt
  (4)onlyonefile
  题目链接:http://pan.baidu.com/s/1geO9DHT 密码:nia7
  下载之后先用binwalk跑了一下发现很多zip包,果断分解,发现文件夹里都是布置格式的文件但名字是有规律的,并且还有一个0.zip解压出来也没发现什么,用winhex打开第一个文件看到了PNG,猜想是png图片,但是结尾没有IEND,不完整,打开最后一个文件发现了IEND,题目又叫onefile,应该是图片分解了,于是linnux下cat outfile/* >1.png合成了png图片,但是依旧没有flag,binwalk发现图片后面好多zlib文件,找了很久,再用winhex查看发现了头文件不远处的Adobe Fireworks CS5,下载下来看起来和ps差不多。。。。。。打开图片后原来是两个图层,把第一张图片拉开再翻转一下二维码颜色得到flag了。
  (5)再遇Adobe Fireworks CS5
  题目链接:http://pan.baidu.com/s/1c3vzum 密码:n26x   题目名为IHDR
  这次比较干脆,直接给了一个png文件,winhex打开一切正常,binwalk跑一下还是满大街的zlib包,也发现了Adobe Fireworks CS5字样,于是用Adobe Fireworks CS5打开,发现格式错误。。。。。回去看了看png文件格式,没毛病,那就只有crc没有检测是否正确了,给个crc抄袭的计算代码。链接:http://pan.baidu.com/s/1dFcQTu5 密码:ytxd  里面的数据替换为相应的HIDR Chunk,就得到正确的crc了,再次用Adobe Fireworks CS5打开flag就直接出来了
  (6)这个应该属于杂项
  题目链接:http://pan.baidu.com/s/1jIwZIFc 密码:bk62
  file一下发现是data文件(跟没发现一样),扔到winhex里发现是这样

CTF之隐写

CTF之隐写

CTF之隐写

CTF之隐写
  FF D8不就是jpg头文件,FF D9不就是jpg尾文件标志吗,原来是把16进制逆过来了 ,写个脚本再还原回来就好了
  f=open("1.reverseme","rb")
  g=open("1.jpg","wb")
  f.write(g.read()[::-1])
  f.close()
  g.close()

CTF之隐写

CTF之隐写
  用ps旋转一下就好了
  (7)加密的文档
  题目链接:http://pan.baidu.com/s/1misRWU0 密码:b19t
  下载得到一个zip压缩包,确实加密了。。。。可是题目没有给密码提示啊,伪加密?试试看,眼瞎的我没有看到在底部50 4B ,这个地方改成了09 00

CTF之隐写

CTF之隐写
  还是找到writeup才回来找,不过看到了大神用010Editor,又get到一个新工具,并且看到未加密是这里是0,加密这里标志位就不是0了

CTF之隐写

CTF之隐写
  别忘了第二行还有标志位。。。。

CTF之隐写

CTF之隐写
  好了,改成0,成功解压出一个docx文档,

CTF之隐写

CTF之隐写
  刚开始还以为是把flag字体和背景颜色设置一样了,结果没有。。。把图片拷出来也没找到。。。。又回来看大神的writeup,解压之后的docx文档还是藏着压缩包。。。。改成zip格式解压出来找到两张图片
  吐了一升血。。。。。


温馨提示:
1.如果您喜欢这篇帖子,请给作者点赞评分,点赞会增加帖子的热度,评分会给作者加学币。(评分不会扣掉您的积分,系统每天都会重置您的评分额度)。
2.回复帖子不仅是对作者的最好奖励,还可以获得学币奖励,请尊重作者的劳动成果,拒绝做伸手党!
3.发广告、灌水回复等违规行为一经发现直接禁言,如果本帖内容涉嫌违规,请点击论坛底部的举报反馈按钮,也可以在【投诉建议】板块发帖举报。
论坛交流群:672619046

0

主题

194

帖子

0

精华

解密专家

Rank: 16

学币
519
荣耀
0
rank
0
违规
0

神出鬼没

    发表于 2020-5-27 08:28:34 | 显示全部楼层
    感谢分享,我会认真学习的!
    学逆向论坛-免费的逆向学习论坛
    微信公众号
    快速回复 返回顶部 返回列表