CTF---隐写术入门第三题 打不开的文件
打不开的文件分值:10
- 来源: 实验吧
- 难度:中
- 参与人数:2718人
- Get Flag:1222人
- 答题人数:1276人
- 解题通过率:96%
咦!这个文件怎么打不开?
解题链接: http://ctf5.shiyanbar.com/423/stego/xx.gif
原题链接:http://www.shiyanbar.com/ctf/1878
【解题报告】
这是我入门隐写术开始写的第三道题,这道题很有意思,很多小伙伴可能都不清楚隐写术吧,其实隐写术就是把一些想要表达的信息藏起来,让别人看不见,通过某种方式去获取这些信息,这个就是隐写术了~~~
咱们来看看这题,点击解题链接,发现一片黑,果真是打不开,咱们把这个文件下载下来~~~
这是一个gif文件,gif文件大家都知道,是个动态图片,打开试试看,果真打不开,这个时候就很有意思了,咱们想想看是不是可以用工具?
咱们需要一个工具,叫Notepad++,打开发现一堆乱码,有些简单的题目会直接把flag写在文件里面,我们可以搜索一下看看有没有flag~~~
查找一下,发现没有!!!这就说明这题目还不是很简单,怎么办呢?
这个时候需要我们有一点基本的知识,咱们来看一个正常的gif图片
我选择了一幅柯南的图片,咱们同样用Notepad++打开,对比一下这两个图片
你发现了什么呢?
发现这个xx.gif头部少了点东西!!!
似乎缺少了一个GIF8,我们试试补全GIF8保存下这个xx.gif图片,我们发现这个gif图片能正常打开啊!
在这里我们需要进行解释下文件原理!
文件也好,图片查看器也好,它是通过文件头部来识别该文件是什么文件,是gif图片,还是png图片,还是jpg图片,或者是其它之类的图片啥的,GIF89a,这个信息是gif的开头信息,缺了这个信息之后,无论浏览器也好,图片查看器也好,都没法查看这个图片内容,这样的话它的内容就会隐藏起来!!!
咱们需要修复很简单,只需要把GIF8加进去然后保存就OK了!
我们得到动图以后,发现key的关键字,大概就能猜测这里面有猫腻,咱们发现这个动图晃得太快了,看不明白,咱们有两种思路,第一种咱们可以利用截图截下来,第二种思路咱们可以利用工具,把图片的帧给分出来,叫StegSolve,这里面有个功能,叫逐帧查看,如图所示:
图片是由4帧构成的,原本晃动的图片,现在已经完全定下来了!!!咱们就可一帧一帧的看清楚,咱们就可以把key抄下来!
我们得到的key是一个这样的结果:dGhpcyBpcyBhIGdpZg==
这个如果直接提交肯定是不行的,说明这里面有猫腻,对于熟悉编码的人来说,这种形式的编码是Base64的一个编码,那么它的特征是结尾有两个"==",一般我们看到后面跟着两个"==",我们可以确定是一个Base64的编码!
咱们可以用工具解密,我推荐使用火狐解密,火狐的插件HackBar,可以对Base64解密!如图所示:
咱们看看这个是不是最后的答案呢?
那就说明答案正确了!
CTF---隐写术入门第三题 打不开的文件的更多相关文章
- CTF---密码学入门第三题 奇怪的短信
奇怪的短信分值:10 来源: Ayn 难度:易 参与人数:5117人 Get Flag:2623人 答题人数:2858人 解题通过率:92% 收到一条奇怪的短信: 335321414374744361 ...
- CTF---Web入门第三题 这个看起来有点简单!
这个看起来有点简单!分值:10 来源: 西普学院 难度:易 参与人数:10515人 Get Flag:3441人 答题人数:4232人 解题通过率:81% 很明显.过年过节不送礼,送礼就送这个 格式: ...
- CTF---安全杂项入门第三题 这是捕获的黑客攻击数据包,Administrator用户的密码在此次攻击中泄露了,你能找到吗?
这是捕获的黑客攻击数据包,Administrator用户的密码在此次攻击中泄露了,你能找到吗?分值:30 来源: 2014sctf 难度:难 参与人数:3918人 Get Flag:384人 答题人数 ...
- jQuery入门第三
jQuery入门第三 1.HTML 2.CSS 衣服 3.javascript 可以动的人 4.DOM 编程 对html文档的节点操作 5.jQuery 对 javascript的封装 简练的语法 复 ...
- CTF---密码学入门第六题 古典密码
古典密码分值:10 来源: 北邮天枢战队 难度:易 参与人数:5115人 Get Flag:1549人 答题人数:1783人 解题通过率:87% 密文内容如下{79 67 85 123 67 70 8 ...
- JavaMail入门第三篇 发送邮件
JavaMail API中定义了一个java.mail.Transport类,它专门用于执行邮件发送任务,这个类的实例对象封装了某种邮件发送协议的底层实施细节,应用程序调用这个类中的方法就可以把Mes ...
- CTF---Web入门第十三题 拐弯抹角
拐弯抹角分值:10 来源: cwk32 难度:易 参与人数:5765人 Get Flag:2089人 答题人数:2143人 解题通过率:97% 如何欺骗服务器,才能拿到Flag? 格式:CTF{} 解 ...
- CTF---Web入门第十一题 PHP大法
PHP大法分值:20 来源: DUTCTF 难度:中 参与人数:8205人 Get Flag:2923人 答题人数:3042人 解题通过率:96% 注意备份文件 解题链接: http://ctf5.s ...
- CTF---Web入门第十题 Once More
Once More分值:10 来源: iFurySt 难度:易 参与人数:4782人 Get Flag:2123人 答题人数:2166人 解题通过率:98% 啊拉?又是php审计.已经想吐了. hin ...
随机推荐
- springboot 结合mybatis
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 XML ...
- SQL Server AlwaysOn添加监听器失败
标签:MSSQL/ 一.错误描述 1.群集服务未能使群集服务或应用程序“Alwayson22”完全联机或脱机.一个或多个资源可能处于失败状态.这可能会影响群集服务或应用程序的可用性 2.群集服务中的群 ...
- CPU31X-2DP通过DP网络连接远程IO站
一.远程IO站介绍 二.该DP网络系统结构 三.组态DP主站 1.组态机架硬件配置 2.设置profibus属性,主站地址为2,如下图 3.完成主站组态 四.组态远程IO从站ET200M 1.接口模块 ...
- 小白的Python之路 day4 迭代器
迭代器 学习前,我们回想一下可以直接作用于for循环的数据类型有以下几种: 1.集合数据类型,如list.tuple.dict.set.str等: 2.是generator,包括生成器和带yield的 ...
- 根据NPOI 读取一个excel 文件的多个Sheet
大家都知道NPOI组件可以再你本地没有安装office的情况下来 读取,创建excel文件.但是大家一般都是只默认读取一个excel文件的第一个sheet.那么如果要读取一个excel 的所有shee ...
- JMeter数据库操作详解
Jmeter提供了JDBC连接的插件,通过执行SQL语句的java API,实现对数据库的访问和查询,同时可以操作一次向数据库插入上百条上千条数据. 一.安装驱动包 将需要连接JDBC的jar包放入j ...
- [编织消息框架][消息服务]rmi
RMI(即Remote Method Invoke 远程方法调用) 远程对象: 用于远程客户端调用 必需继承java.rmi.Remote,每个调用方法必须添加java.rmi.RemoteExcep ...
- python2 与python3的变化
1 写文件如果是bytes类型的话,打开文件 open参数设置为wb 2 python2 默认包import是相对路径,python3是绝对路径 3 python3的dict没有has_key方法,用 ...
- JQ trigger函数无法触发a标签的两种解决方法
起因:点击icon图标后要触发a标签的链接转跳动作,但是用 JQ 的 $('#a').trigger('click') 居然不起作用,遂百度之,总结两种方法如下: (原因:JQ 的 trigger() ...
- linux 下安装 sphinx 服务器
准备工作:安装需要的扩展文件 yum install make gcc g++ gcc-c++ libtool autoconf automake imake libxml2-devel expat- ...