Extracting Memory Artifacts With Rekall

使用 Rekall 内存取证框架分析内存转储,检测进程空洞化(process hollowing)、通过 VAD 异常注入的代码、隐藏进程和 rootkit。应用 pslist、psscan、vadinfo、malfind 和 dlllist 等插件从 Windows 内存镜像中提取取证工件。适用于应急响应内存分析场景。

killvxk c3683d8 4 files · 19.8 KB Updated

File contents

使用 Rekall 提取内存工件

说明

使用 Rekall 分析内存转储,查找入侵迹象,包括进程注入、隐藏进程和可疑网络连接。

from rekall import session
from rekall import plugins

# 使用内存镜像创建 Rekall 会话
s = session.Session(
    filename="/path/to/memory.raw",
    autodetect=["rsds"],
    profile_path=["https://github.com/google/rekall-profiles/raw/master"]
)

# 列出进程
for proc in s.plugins.pslist():
    print(proc)

# 检测注入代码
for result in s.plugins.malfind():
    print(result)

关键分析步骤:

  1. 加载内存镜像并自动检测配置文件
  2. 运行 pslist 和 psscan 查找隐藏进程
  3. 使用 malfind 检测进程 VAD 中注入/空洞化的代码
  4. 使用 netscan 检查网络连接
  5. 使用 dlllist/modules 提取可疑 DLL 和驱动程序

示例

from rekall import session
s = session.Session(filename="memory.raw")
# 比较 pslist 与 psscan,查找隐藏进程
pslist_pids = set(p.pid for p in s.plugins.pslist())
psscan_pids = set(p.pid for p in s.plugins.psscan())
hidden = psscan_pids - pslist_pids
print(f"Hidden PIDs: {hidden}")

killvxk/cybersecurity-skills-zh/tree/main/skills/extracting-memory-artifacts-with-rekall commit c3683d8aa7

Frequently asked questions

npx skillmds@latest add killvxk/extracting-memory-artifacts-with-rekall