本题来自moectf的easyForensics。
下面是题目链接:
一、首先下载软件X-ways Forensics
我们可以了解一下e01文件的文件类型。参照下面这篇文章。一句话来讲就是e01就是一个计算机某一时刻全部操作的证据文件。
二、打开文件
文件打开后是这个样子:
然后点击这个按钮,就可以看到解析好的证据:也就是我们保存的操作。
然后打开分区1,就可以看到嫌疑人一定时间段内的使用被取证电脑的工作状态。对这道题目来讲,Documents目录下就可以看到出题人删除的1.py文件。
我们将该文件恢复到电脑上,然后就可以逆向工程。
from base64 import b64encode as be
import os
import re
with open("file.in", "rb") as fin:
data = fin.read()
data = be(data).decode()
data = data.replace("/", "_")
data = re.findall(r'.{40}', data)
base = os.getcwd() + "\\file\\"
count = 1
for item in data:
folder = str(count) + " " + item
if count < 10:
path = base + "00" + folder
elif count <100:
path = base + "0" + folder
else:
path = base + folder
os.mkdir(path)
count += 1
EXP如下:
import base64
import os
data = ""
for root,dirs,files in os.walk("./file/"):
for dir in dirs:
data += dir.split()[1]
data = data.replace("_", "/")
with open("file", "wb") as fout:
fout.write(base64.b64decode(data))
#file_path:就是你想要的path(路径)
#os.walk(path):就是在path路径下去遍历文件夹,就像是a = [b,c,d[]],walk获取到是就是b,c,d的名称
#root:就是获取当前目录路径,就是a
#dirs:就是获取当前路径下所有子目录,就是d
#files: 就是获取当前路径下所有非目录子文件,就是b,c
三、后面的操作就是把目录的名字提取出来,按照逆向工程解码。得到一个文件,但不知道是什么,这时候你就把他拖到winhex里面看看。
是一个docx文件,这个可以查看百度百科。docx实际上就是一个压缩包,由许多xml文件组成。改后缀。
打开文档即可发现flag。
后续还有很多类型的取证,参见下面这个师傅的博客。