带你走入CTF之路-杂项MISC(五) – 作者:凯信特安全团队

      通过之前的杂项类型,我们发现bugku上的杂项好多其实涉及到的是隐写类型的题目,接下来进行新的知识点内容的学习。

1、闪的好快

图片.png      按照之前的思路,我们遇到图片呀什么的第一步查看图片属性,接着通过winhex查看文件找寻相关敏感信息。

图片.png然后通过binwalk分析,也未发现该文件中包含其他东西,都是正常的。

图片.png        可以发现我们找不到任何有价值的东西,这就使得我们进入一个误区。首先,我们来看一下这个图的本身,是一个gif图片不断的在闪烁。这里介绍一个图片隐写的查看神器StegSolve。(StegSolve是一个java包,只需有java环境就行,不需要安装。这里提供一个该工具介绍的一个链接https://www.cnblogs.com/dzkwwj/p/9473357.html)如果说通过之前介绍的方式找不到任何内容,我们可以尝试使用该工具,如图是我们使用StegSolve打开的文件。

图片.png        我们可以使用StegSolve中的Frame Brower(框架浏览的功能,至于其他功能,我们后续遇到在逐步通过题目介绍)功能进行图片查看,这样就不会像原始图那样闪烁的那么快了。

图片.png        好了,接下来就需要大家去扫描二维码获取flag了。最后把扫描的内容拼接在一起就好啦,自己尝试吧,注意中间扫描出来会有个“_”的符号。

2、come_game

图片.png       这道题目一打开给我的第一感觉就是应该是一个游戏逆向的题目。可是根据分值和题目类型,应该不会是逆向的方向。所以我们打开看一下这个游戏,看能不能顺利通关。如下图,发现跳跃的时候最多能跳两格(自己尝试)。

图片.png    当我们感觉玩不过去,退出后发现多了2个文件

图片.png

图片.png

图片.png     我们一开始打开这个文件根本没有什么可以发现的,也不理解里面的含义是什么,此时我们只能通过调试对比的方式去查看是否有异常。

我们打开winhex和运行程序页面

图片.png      发现在点击运行程序后,但游戏未开始的时候生成一个Deathtime的文件,但是该文件夹没有内容。(通过该文件名字可以判定是死亡次数的计数文件)我们接着往下执行。

图片.png       点击shift开始游戏。发现在进行以下页面后页面无改变(仅限页面)

图片.png       继续点击shift运行游戏,发现此时新增文件save1,通过winhex打开该文件。

图片.png       接下来我们来玩一玩,当我们跳入这个页面后发现save1文件有改变,请求刷新,点击是。

图片.png       我们尝试来死一下试试,发现save1中无改变,只改变了Deathtime的文件,那么可以说明,在页面发送变化的时候改变了以下标红的值。

图片.png      我们尝试从第一个数值型的开始改一下试试,往上+1,改为33后保存,然后在游戏中点击R重新开始游戏看看,发现如下画面,直接跳到下一关。

图片.png       至此我们找到了可以通关的方法,改变这个数值即可。尝试加到34试试。

图片.png         还没通过,加到35试试。发现flag。(什么?你说会有come voer挡住?直接点R重新刷新截图喽!)

图片.png图片.png3、白哥的鸽子

图片.png       通过我们直接的思路,从winhex中查看该图片发现以FF D8 FF开头的jpg文件没有后缀FFD9。而是

图片.png我们找到文件的结尾FF D9标识,把后面的部分copy出来进行解密。这就需要大家掌握以下密码类型:fg2ivyo}l{2s3_o@aw__rcl@。那么我们观察这段字符,发现在这段字符中,flag的特征字符“f”,“l”,“a”,“g”,“{”,“}”均出现了,那么我们可以想到的就是顺序发生了变化,顺序发送变化的加密方式我们就尝试去往古典密码上靠(古典密码:古典密码编码方法归根结底主要有两种,即置换和代换)。置换:把明文中的字母重新排列,字母本身不变,但其位置改变了,这样编成的密码称为置换密码。最简单的置换密码是把明文中的字母顺序倒过来,然后截成固定长度的字母组作为密文。代换:则是将明文中的字符替代成其他字符。

显然我们找到的这段字符明显是置换加密的。一般使用凯撒密码和栅栏密码解密,但是根据字符包含flag特征字符,就尝试用栅栏解密。(因为栅栏进行错位转换,原文不一定包含flag特征字符,所以使用栅栏密码解密,此处也可以根据题目提示“咕咕咕”:代表数字“3”,解密栅栏需要的每组数字的个数。)如图:

图片.png4、linux

图片.png       通过解压该题目的压缩包,发现一个flag文件。还是第一时间尝试检查属性,通过winhex打开,发现大部分数据用00填充。我们用binwalk分析下,发现这是一个Linux ext2文件系统。那么我们就从其中找敏感信息吧。

图片.png       对于磁盘文件我们当然使用winhex打开啦(第一节说明了原因)下拉发现还是有一些字符的,尝试ctrl+f搜索一下关键字flag和key等。发现key。

图片.png       是不是发现好难找?可以在kali下使用strings命令来查看对象文件或者二进制文件中查找可打印的字符串哦。如图所示:

图片.png     发现key。

5、隐写3

图片.png      通过下载的一个图片我们进行图片的属性等一些检查,发现图片是一个不完整的图片,只有上半身。我们已经通过《带你走入CTF之路-杂项MISC(二)》中的《隐写》分析过了。这里我们在看一下对于这道题的应用。发现图片像素宽679。高256。发现图片之所以一半没了是高的像素才256.我们给它改大些,也改成679试试。

图片.png

图片.png       这次我们打开这个图片看一下试试。在下方找到flag,不过就是图片改的不好看,高给的太高了。

图片.png     这个题目具体为什么改内部数值,详细见《带你走入CTF之路-杂项MISC(二)》中的隐写。此处不在赘述。

 

来源:freebuf.com 2020-03-18 22:04:26 by: 凯信特安全团队

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论