您的位置 首页 CTF

Bugku杂项misc writeup(1)

前几天在Bugku上做misc的时候做到几道挺好的题目,想写个复盘跟大家分享下。欢迎各位大佬互相交流 1.善用…

前几天在Bugku上做misc的时候做到几道挺好的题目,想写个复盘跟大家分享下。欢迎各位大佬互相交流

1.善用工具

文件如下:

先看看hint文件,发现png格式打不开,试试用txt文本打开

(干得漂亮)

试试用winhex打开,发现一段神秘代码

在查询一番资料过后得知这是UUEncode+base85加密

Uuencode解密网址: http://www.mxcz.net/tools/UUEncode.aspx

再将”keyis”去除进行base85解密: http://www.atoolbox.net/Tool.php?Id=934

联系下标题<善用工具>,百读搜索下Camouflage软件,发现是个用AES加密算法把隐藏的文件存放到jpg图片中的软件

那意思很明确了,就是把那张水晶的图片放进去解一下

(下载地址:https://www.onlinedown.net/soft/94324.htm)

是一个docx文档,放到winhex看看

看到PK果断改后缀为zip

是一个xml文件,在一番遍历后,word文件夹下的document.xml找到了密码

密码为XiAo_1U

我们用kali下的file看一下是什么格式的文件

riff(用画图打开)或者webp(用浏览器打开)格式都可以

(WDNMD)

之后可以用python的stegpy的脚本解码解密

pip install stegpy

stegpy csgo.webp(csgo.riff)

         拿下

2.Photo的自我修养

压缩包含有以下文件:

第一眼看去应该是要先分别解出001和002的给的密码再解出keyAB就能拿flag了

先看001压缩包

这里有可能是伪加密

所谓伪加密就是将压缩包中全局方式位标记更改,00为无加密,其余为加密

详细可参考https://blog.csdn.net/qq_26187985/article/details/83654197

一般 全局方式位标记的位置压缩包的文件头标记结束标记 旁边(比如504B0102、504B0304、504B0506),所以我们先用winhex打开看看,用HEX搜索压缩包的文件头(504B)

全局方式位标记在头文件标记后2bytes或4bytes

所以我们只要一个个找有没有不为0000的改为0000,就可以破解伪加密了

找到了,双击数值把0700改为0000,然后ctrl+s保存文件,再打开文件就是无密码了。

成功破解

打开图片,发现是张表情包

在杂项misc中,以我目前的经验积累,通常遇到一张图片会先考虑是否存在:

图片隐写(可用binwalk+foremost破解)、LSB隐写(Stegsolve)、修改宽高(看图片是否显示完整,Winhex更改)、修改后缀(重命名)、文件头是否正确(winhex)、查看图片详情是否存在重要信息(右键文件属性-详情)。

因为篇幅有限,有时间之后可以跟大家分享一下。

这里的是查看图片详情

keyA:Just

接下来我们看002文件

这张图片很明显下面还有一部分没有显示完整,这时就要修改图片的高度了,先查看图片的详情。

把高度改为178与宽度相同就能显示了。

用python的hex函数查看178和150对应的hex值,以方便我们去查找

这里就是图片的高度(一般在第二行就能看到高宽的hex值)将其改为B2

keyB:One2021@

所以解密密码为AB结合:JustOne202@

遇事不决,winhex解决。

在winhex打开key

一看文件头,卧槽,这不png的头,然后还写错了,都成YNG了,我们帮他改改

再把key的后缀改成png

针不挫~

这里列下常用的文件头:

———常用文件头———

JPEG (jpg),文件头:FFD8FFE1
PNG (png),文件头:89504E47 (0D0A1A0A)

GIF (gif),文件头:47494638

ZIP Archive (zip),文件头:504B0304
RAR Archive (rar),文件头:52617221

XML (xml),文件头:3C3F786D6C

MPEG (mpg),文件头:000001BA
MPEG (mpg),文件头:000001B3

AVI (avi),文件头:41564920

3.where is flag?

下载文件得到10个文本

         用winhex或直接打开文本发现每个文本内容都是空的

那么问题来了,为什么内容是空的但每个文本的大小却不同呢。这时我的思路是将所有文件的大小拼接在一起形成一段字符串,再观察字符串是否有蹊跷,我写了一段代码读取文件大小

这是一段ascii码(0-127),对其分割再进行解码

这题的脑洞挺大的

4.where is flag2

打开压缩包,发现又是一堆文本

按照上题的思路来看,这道题大概率也是看文本的属性来写flag,并且这么多文件不好爆破,所以我们先试试从文本属性来下手。

不难看出,每个文本大小都相同,不同的是CRC32值,尝试将每个文本的crc32值拼接在一起。这里写了个脚本

这题的思路就是用crc32值拼接,拼接后的值为16进制,再转换成字符串就是flag了

前几天自己被虐的时候,自己总结出了经验,今天心血来潮记录了下”这坎坷的过程”

杂项太难了,各位师傅带带弟弟好吗

本文来自网络,不代表F12sec立场,转载请注明出处:http://www.0dayhack.net/index.php/2071/
头像

作者: Anyyy

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

CAPTCHAis initialing...
联系我们

联系我们

QQ群:884338047

在线咨询: QQ交谈

邮箱: 2676666667@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部