攻防世界--Misc文件类型

本文讲述了如何处理Misc文件类型,从识别加密的Base64字符串开始,通过转换为十六进制,再到识别文件头确定文件类型(ZIP),最后使用Python脚本处理数据并用Winhex工具创建解密后的ZIP文件,成功解压得到flag。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Misc文件类型

文件下载后发现一大字符串

一开始放进winhex里面各种对照文件头 修改后缀名 但发现都没有效果

后来看了wp才知道一开始拿到的是一串密文(被题目误导了) 需要进行解码

放入winhex里 转换为base64

得到一串字符

UEsDBBQAAAAIAAldCFXqOw7cKAAAACYAAAAIAAAAZmxhZy50eHRLy0lMrzZISk02SEwxTkk0MjQ0TjY3SDU1SEsxNTM0T7JINU+zrAUAUEsBAhQAFAAAAAgACV0IVeo7DtwoAAAAJgAAAAgAJAAAAAAAAAAgAAAAAAAAAGZsYWcudHh0CgAgAAAAAAABABgAGxEfk9iq2AEbER+T2KrYAQJF+4rYqtgBUEsFBgAAAAABAAEAWgAAAE4AAAAAAA

仔细观察 开头的46ESAB 取反一下就是BASE64

说明这段密文是base64加密的

因为我们需要获取到文件的原始数据 通过原始数据中的文件头部分判断文件类型 而原始数据是以十六进制保存的 所以要将这段密文转换为十六进制

Base64与十六进制互相转换:Base64与十六进制互转 - 在线工具

50,4B,03,04,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,00,00,66,6C,61,67,2E,74,78,74,4B,CB,49,4C,AF,36,48,4A,4D,36,48,4C,31,4E,49,34,32,34,34,4E,36,37,48,35,35,48,4B,31,35,33,34,4F,B2,48,35,4F,B3,AC,05,00,50,4B,01,02,14,00,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,24,00,00,00,00,00,00,00,20,00,00,00,00,00,00,00,66,6C,61,67,2E,74,78,74,0A,00,20,00,00,00,00,00,01,00,18,00,1B,11,1F,93,D8,AA,D8,01,1B,11,1F,93,D8,AA,D8,01,02,45,FB,8A,D8,AA,D8,01,50,4B,05,06,00,00,00,00,01,00,01,00,5A,00,00,00,4E,00,00,00,00,00

50 48 03 04 很明显是zip文件的文件头

常见文件类型的文件头我已进行整理:CTF MISC---常见文件文件头总结_tzyyyyyy的博客-优快云博客_ctf 常见文件头

将解密后的数据添加至winhex中去

先写一个脚本将逗号全部改为空格

脚本代码如下:

str="50,4B,03,04,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,00,00,66,6C,61,67,2E,74,78,74,4B,CB,49,4C,AF,36,48,4A,4D,36,48,4C,31,4E,49,34,32,34,34,4E,36,37,48,35,35,48,4B,31,35,33,34,4F,B2,48,35,4F,B3,AC,05,00,50,4B,01,02,14,00,14,00,00,00,08,00,09,5D,08,55,EA,3B,0E,DC,28,00,00,00,26,00,00,00,08,00,24,00,00,00,00,00,00,00,20,00,00,00,00,00,00,00,66,6C,61,67,2E,74,78,74,0A,00,20,00,00,00,00,00,01,00,18,00,1B,11,1F,93,D8,AA,D8,01,1B,11,1F,93,D8,AA,D8,01,02,45,FB,8A,D8,AA,D8,01,50,4B,05,06,00,00,00,00,01,00,01,00,5A,00,00,00,4E,00,00,00,00,00"
s=str.split(",")
a=""
for i in s:
    a= a+i+"\x20"
print(a)

脚本详细编写过程可以参考文章:python小记--攻防世界Misc文件类型解题脚本编写_tzyyyyyy的博客-优快云博客

winhex新建一个文件 然后剪切板中写入数据(记得将光标放在第一位)

选择ASCII Hex格式 点击确定

这样就将数据放进去了

另存为zip格式的文件

解压并打开 得到flag.txt

flag出现

flag{0bec0ad3da2113c70e50fd5617b8e7f9}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tzyyyyyy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值