Volatility

按照网上教程自行安装。

取证文件后缀:.raw、.vmem、.img

命令格式:

vol.py -f [image] --profile=[profile] [plugin]

取证题目

[鹏城杯 2022]简单取证

题目给了file.raw文件,直接放入kali里,看系统版本以及进程等信息。

首先查看系统版本信息:

vol.py -f file.raw imageinfo

1.png

接着看内存中的文件:

vol.py -f file.raw --profile=WinXPSP2x86 filescan

可以看到一个可疑图片

2.png

将其提取出来

vol.py -f file.raw --profile=WinXPSP2x86 dumpfiles -Q 0x0000000002325028 --dump-dir=wenjian

3.png

将提取出来的图片放进010editor可以看到是base64编码,解码翻转得到一个加密压缩包。

import base64
import struct

with open("file.None.0x81fc6610.dat", "r") as f:
    r = f.read()

lst = list(base64.b64decode(r))
lst.reverse()

with open("flag.zip", "wb") as f:
    for i in lst:
        s = struct.pack('B', i)
        f.write(s)

在该内存中还存在cmd.exe进程考虑从cmd提取输入的密码。

vol.py -f file.raw --profile=WinXPSP2x86 cmdscan

4.png输入该密码得到flag.txt文件,打开可以看到类似坐标的点,考虑到是二维码,脚本一把梭。

from PIL import Image

im = Image.new("RGB", (350, 350), (0, 0, 0))

with open("flag.txt", "r") as f:
    r = f.read()

lst = r.split("\n")
for i in lst:
    x = int(i.split(" ")[0])
    y = int(i.split(" ")[1])
    im.putpixel((x, y), (255, 255, 255))
im.save("flag.png")

扫描二维码即可得到flag。

[湖湘杯 2021]某取证题

附件给了.raw文件直接丢进kali。

3-wcwx.png再看内存中是否存在可疑文件,并提取出来

4-ywxp.png5.png6.png从这三张jpg中找到了flag后半段。

7.png

接着看看有没有可疑进程,看到了一个Wireshark.exe将其提取出来可以得到一个dmp文件。

2-serp.png

1-pqgc.png再使用foremost对该dmp文件分析,可以得到加密的压缩包。由于其中是jpg,故可以用jpg文件头的12位进行明文攻击。

8.png9.png10.png

该文件由于使用了deflate算法压缩,故需要对其进行解压缩,得到前半部分flag。

11.png12.png

文章作者: x1ao
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 x1ao
CTF Misc取证
喜欢就支持一下吧