目录
概要
提示:本文主要为了记录博主自己在练习ctf的解题思路与遇到的大坑,希望文章内容能帮到和小编一样接触ctf的朋友们。
涉及主要知识点
图片隐写、文件包含
用到的主要解题工具
010 Editor
kali自带binwalk
kali下压缩包密码爆破工具fcraxkzip(需要安装)
tips:
binwalk (分析图片)工具的使用参考博客:
https://blog.csdn.net/ttovlove_/article/details/135070900- fcrackzip (爆破压缩包密码)工具的使用参考博客:百度安全验证https://baijiahao.baidu.com/s?id=1677915564456311533&wfr=spider&for=pc
一、开始解题前的一些碎碎念
想直接看解题过程可直接跳转到二、解题处此处单纯为了记录自己的思绪和犯迷糊的地方~
在我们开始解题前,正常的思路还是先解析一下文件内容,观察一下文件的头和尾,但是这里有一点固定思维了,因为第一道隐写题是用010 editor看的,这一次第一反应还是拖进这里面。
- 但是我们得到的文件是.bat文件结尾的,再010 editor里是执行文件,无法解析出字节内容;所以就要考虑换一个工具,用weinhex试一下,打开以后也没有发现什么特别的地方,好啦到这一步以后,刷题量有限几乎没经验的小编又需要去看看大佬们是怎么解题的啦~(后补---这一步就是小编犯迷糊的地方,图片需要自己保存到本地,而且不是.bat文件,所以小编这里保存的文件是错的,是根本没有下载文件!)
- 在小编的上一篇博客中提到了一个工具StegSolve,其实当时小编只知道在做图片隐写题的时候可以用这个工具,后来参考大佬博客发现做“图片隐写”时用到的工具三件套就是binwalk、010Editor、Stegsolve。
- 正常情况下的第一步,就是这三个工具一个一个试了
- 010 editor 试过了,没有得到什么有用的信息
- Stegsolve 小编试了一下,发现没有办法解析.bat的文件,这个时候小编就觉得有一些问题了,为什么图片是.bat格式呢?
- 然后带着疑问,参考大佬的解题思路,小编尝试用binwalk工具试一下(可以直接用kali里自带的binwalk工具)
tips:
在使用工具分析前,小编要说一个因为自己愚蠢踩的一个大坑;小编在参考其他大佬的教程时发现大家都在解析.jpg的文件。而我是.bat文件
因为做上次的隐写题时,在下载附件的时候自动下载了一个压缩包。
在这一关下载题目附件的时候,会直接跳转到图片网页,需要自行把图片保存到本地;但小编因为惯性思维,以为是图片自动下载到本地了,逮到下载文件夹里一个.bat文件一顿解析,也没办法对上大佬的解题步骤;希望大家不要想小编一样犯迷糊呀~
二、解题
- 因为之前分析有误,所以我们还是Stegsolve、010Editor、binwalk按照正常的思路逐个的试一下这三个工具。
- Stegsolve 没找到什么特别的信息
- 010Editor 也没找到什么有用的信息
- binwalk
真是一步一个坎儿啊,刚开始又掉坑里了。
小编到解析图片这步还是出现了问题,小编在做题的时候用的是Microsoft Edge浏览器,不知道为什么在下载对应附件的时候会得到一个名为10.jpeg的图片,找了不下10个的解题博客发现人家的图片都是welcom.jpg。
binwalk也解析不了我下载的图片,挣扎了半天以后我换了谷歌浏览器,得到了welcom.jpg /(ㄒoㄒ)/~~;所以有时候不一定是我们的问题,还有可能是浏览器的问题,希望大家也能少走弯路啊~(谷歌浏览器会直接下载好图片)
正式开始啦
好了,这一次应该没有什么问题了吧,让我们跟着大佬的思路,开始复现吧!
1、用010 Editor分析图片
- 把找到的正确图片重新拖拽到010 Editor里看一下(重点关注文件的头和尾部分),能够看到有一个flag.rar和一个.jpg的后缀(虽然jpg的文件名不知道是什么,但看起来也很可疑),到这一步时,大佬告诉我们,可能是文件包含的考点。
2、binwal分析图片
①解析图片
- 接下来再利用kali自带的binwalk工具尝试分离一下我们得到的这张图
第一步复现成功:
接下来我们看一下解析出来的都是什么内容,直接上翻译,看到包含了压缩包,那这张图应该就是用一张图片和压缩包组合成的新图片。
②查看提示内容,尝试破解压缩包密码
提取出的zip文件中包含了一个flag.rar和一个“提示,jpg”图片,压缩包是加密的,根据所给提示爆破密码。
③爆破密码
- 提示告诉我们密码是3个数,那我们就可以尝试直接爆破一下zip的密码了,这里要用的就是fcrackzip工具了。
tips;
fcrackzip在使用前需要安装,具体可参考前文提供的参考链接。
命令:fcrackzip -b -l 3-3 -c1 -v flag.zip
得到几个密码,依次尝试,最后871为压缩包密码
④提取压缩包内容,获取flag
- 将分离出来的图片传到本地(如何操作可参考文章末尾)后,老规矩,先拖进010 Editor里分析一下。
在文件尾,找到了疑似flag的内容,格式与答案格式一样,粘出来试试。
- 哈哈哈,flag错误;想到了也许没有那么容易就得到flag,再看一下里面的内容吧,感觉有一些像base 64编码,在线解码试一下。
tips:穿插一下base 64编码的特征
在线解密一下编码内容:
得到答案:f1@g{y0u Are a h@cker!}
附赠一个小tips吧~
关于如何将文件实现本地windows和kali虚拟机互传
1、windows上传至kali
①- windows传文件到虚拟机:建一个共享文件夹
②建好共享文件夹后,在kali的浏览器访问file:挂载点文件夹路径即可,也可以通过命令行直接访问
2、kali向本地传送文件
①可以利用cp 命令,复制文件到目标路径下:cp file.txt /path/to/directory(目标文件 目标路径)
总结:这一道题可真是走了好多的弯路呀!不过终于是拿下啦~
特别鸣谢(解题思路主体参考);
BugKu misc 隐写2_bugku misc easy-CSDN博客
如有侵权,联系作者删除。