这次的比赛比上一次有了很大的进步,毕竟能够做出来 两个杂项题目了。
签到题:鸣雏恋
题目附件是一个zip压缩包,里面只有一个word文档,但是却有49M多 有点奇怪。Word里是“我们才是爱情”,好像没啥用。
短短几个字怎么可能又49M呢,接下来可以用binkwalk分离,我是用的压缩软件WinRAR直接打开就可以分离。
Rels里面有一个压缩包love.zip和key.txt,压缩包里面是13w张图,解压需要密码,大概率就是key.txt里得到了
来看看key.txt里面是什么吧
这里卡了很久,然后我直接复制key.txt的文本到百度搜索时发现,
内容溢出了,百度可以搜索256个中文,而这只有五十个字不到,考虑到零宽度字符隐写,看到一篇文章http://www.ga1axy.top/index.php/archives/20/,找到两个工具,
这里我用了下面这个在线工具解密:
http://330k.github.io/misc_tools/unicode_steganography.html
把零宽度字符文本复制过去,得到密码:Because I like naruto best
解压后是两张重复的雏田和鸣人,给我的第一感觉就是一个转化成0,一个转化成1.查看两张图片属性后,发现雏田和鸣人大小不一样,
接下来写一个python脚本,通过大小区别鸣人(27*29)和雏田(23 *26).
脚本:
#coding = "utf-8"
from PIL import Image
result =[]
for i in range(0,124988):
# i = 1
im = Image.open("C:/Users/Administrator/Desktop/love/out/{}.png".format(i))
if(im.size[0]==23):
result.append(0)#雏田0
elif(im.size[0]==27):
result.append(1)#鸣人1
print(result)
跑一下,得到01码:
然后,01码转base64码,
然后我百度了一下,“data:image/png;base64”,发现需要base64码转图片,然后就开始找工具,最后使用了下面这个在线工具:
https://www.toolnb.com/tools/base64ToImages.html
最后直接转就行,得到flag。
flag值:
flag{57dd74fb21bb1aee50f19421bf836f23}
层层取证
本题较大,确实!下载花了我六元大洋开了24h的baiduyunVIP!
利用FTK挂载镜像,打开后发现桌面有个flag.txt文档,噶,被嘲讽了。顺着他的思路来想,应该需要仿真打开,然后获取更多的东西。
看到另一个压缩包里面还有一个mem文件,直接利用这个玩意儿找系统密码。
拉入Linux中,使用volatility来对mem文件进行分析。
可以看到
XiaoMing:1001:aad3b435b51404eeaad3b435b51404ee:92efa7f9f2740956d51157f46521f941:::
所以通过利用xiaoming的MD5值92efa7f9f2740956d51157f46521f941,进行NTLM解密可以得到:xiaoming_handsome即为系统密码。
利用FTK挂载这个镜像到本地
用VM创建一个虚拟机具体设置如图所示:
磁盘类型选择SATA 点击下一步
选择 使用物理磁盘 点击下一步
选择上刚刚挂载的Drive2,点击下一步
然后下一步,完成即可。
然后打开虚拟机,使用我们刚才得到的系统密码,进入系统,桌面上有密码提示,为 xiaoming1314
对系统内容进行寻找,发现d盘进不去,第一眼看到的流量包也不能用了,所以只能再从别的地方找,终于在用户文件夹下发现了两个流量包。
对流量包进行流量分析
可以发现有一个名为flag.docx的文件,导出原始数据,提取出来,是一个压缩包,密码与开机密码一样xiaoming_handsome
文档加密,猜测密码就是xiaoming1314
打开后获得flag
flag值:
flag{9ca871b668f2-b668-097c-cbm8-9op404c891e2}