https://buuoj.cn/challenges#[BSidesSF2019]bWF0cnlvc2hrYQ
题目名字解码是:matryoshka
(俄罗斯套娃)
下载下来的附件是一个eml
文件
EML格式是微软公司为Outlook和Outlook Express开发的文件格式。EML文件是将邮件归档后生成的文件,保留着原来的HTML格式和标题。大多数邮件客户端都支持EML格式,但是如果你没有安装邮件客户端,或者你使用的是移动设备,那么你可以用其它方法打开EML格式的文件。
Outlook
预览下这个文件
得到私钥文件Matry_Oshka.key
和加密文件hack.pgp
,GPG
解密还需要密码,以文件方式打开attachment.eml
,Face这里的base64解码是一张二维码
https://the-x.cn/zh-cn/base64/
得到密码
h4ck_the_plan3t
密文、私钥、密码都有了,利用PGPTool
来解密,PGPTool: https://pgptool.github.io/
Key ring->Import PGP Key->导入Matry_Oshka.key->然后输入密码
解压得到file.bin
binwalk
发现是lzip
文件,lzip的文件头就是LZIP
,使用010 Editor
打开后去掉前面10个字节
保存后使用lzip -d file.bin
解压,得到file.bin.out
,是一个pdf
文件
pdf里面只有一张windows xp
的壁纸
将图片提取出来,用stegsolve
查看一下
在Blue
通道发现好像是二维码的内容,猜测这张图片可能需要对比原图做逻辑处理,搜索引擎找一下原图
WindowsXP Default Wallpaper: https://upload.wikimedia.org/wikipedia/en/2/27/Bliss_%28Windows_XP%29.png
/Td6WFoAAATm1rRGAgAhARwAAAAQz1jM4ELCAORdABhgwwZfNTLh1bKR4pwkkcJw0DSEZd2BcWATAJkrMgnKT8nBgYQaCPtrzORiOeUVq7DDoe9feCLt9PG-MT9ZCLwmtpdfvW0n17pie8v0h7RS4dO/yb7JHn7sFqYYnDWZere/6BI3AiyraCtQ6qZmYZnHemfLVXmCXHan5fN6IiJL7uJdoJBZC3Rb1hiH1MdlFQ/1uOwaoglBdswAGo99HbOhsSFS5gGqo6WQ2dzK3E7NcYP2YIQxS9BGibr4Qulc6e5CaCHAZ4pAhfLVTYoN5R7l/cWvU3mLOSPUkELK6StPUBd0AABBU17Cf970JQABgALDhQEApzo4PbHEZ/sCAAAAAARZWg==
Base64编码,但是有无效字符-
,这里应该是需要用-
来替换了标准表中的+
,换成+
解码看看
是7z的字节流数据,Python简单处理
from base64 import *
base64data = "/Td6WFoAAATm1rRGAgAhARwAAAAQz1jM4ELCAORdABhgwwZfNTLh1bKR4pwkkcJw0DSEZd2BcWATAJkrMgnKT8nBgYQaCPtrzORiOeUVq7DDoe9feCLt9PG-MT9ZCLwmtpdfvW0n17pie8v0h7RS4dO/yb7JHn7sFqYYnDWZere/6BI3AiyraCtQ6qZmYZnHemfLVXmCXHan5fN6IiJL7uJdoJBZC3Rb1hiH1MdlFQ/1uOwaoglBdswAGo99HbOhsSFS5gGqo6WQ2dzK3E7NcYP2YIQxS9BGibr4Qulc6e5CaCHAZ4pAhfLVTYoN5R7l/cWvU3mLOSPUkELK6StPUBd0AABBU17Cf970JQABgALDhQEApzo4PbHEZ/sCAAAAAARZWg=="
with open('flag.7z','wb') as f:
f.write(b64decode(base64data,altchars='-/'))
默认参数
altchars
的可选值必须是长度至少两字节的字符串
(第二个字符后的内容将被忽略),该方法表示在编/解码过程中将使用参数altchars中的前两个字符
替换标准Base64字符集中的’+‘和’/’。
这里至少要填两个字符,就填-
和/
,用这两个替换base64标准表中的+
和/
flag里面是二进制数据
CyberChef
一把梭
flag{delat_iz_muhi_slona}