关于 extracting-memory-artifacts-with-rekall
面向安全测试人员的 Rekall 内存取证技能,用于从内存转储中寻找入侵迹象。它涵盖隐藏进程、代码注入、网络连接以及可疑 DLL 和驱动的提取。
主要功能
- 01加载内存映像并自动检测配置文件
- 02对比进程列表以发现隐藏进程
- 03检测注入或空洞化代码
- 04检查网络连接
- 05提取可疑 DLL 和驱动
适用场景
- 01在受控环境中分析恶意软件样本
- 02调查内存转储中的入侵迹象
- 03通过攻击技术知识构建检测能力
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill extracting-memory-artifacts-with-rekall安装后在 Claude Code 中输入/extracting-memory-artifacts-with-rekall确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEreferences/api-reference.mdscripts/agent.py详细介绍
使用 Rekall 提取内存工件
何时使用
- 在执行授权的安全测试并涉及使用 rekall 提取内存工件时
- 在受控环境中分析恶意软件样本或攻击工件时
- 开展红队演练或渗透测试项目时
- 基于对攻击技术的理解构建检测能力时
前提条件
- 熟悉安全运营概念和工具
- 可访问用于安全执行的测试或实验环境
- 已安装所需依赖的 Python 3.8+
- 对任何测试活动拥有适当授权
操作说明
使用 Rekall 分析内存转储,查找失陷迹象,包括进程 注入、隐藏进程和可疑网络连接。
from rekall import session
from rekall import plugins
# Create a Rekall session with a memory image
s = session.Session(
filename="/path/to/memory.raw",
autodetect=["rsds"],
profile_path=["https://github.com/google/rekall-profiles/raw/master"]
)
# List processes
for proc in s.plugins.pslist():
print(proc)
# Detect injected code
for result in s.plugins.malfind():
print(result)
关键分析步骤:
- 加载内存镜像并自动检测 profile
- 运行 pslist 和 psscan 以查找隐藏进程
- 使用 malfind 检测进程 VAD 中注入/镂空的代码
- 使用 netscan 检查网络连接
- 使用 dlllist/modules 提取可疑 DLL 和驱动程序
示例
from rekall import session
s = session.Session(filename="memory.raw")
# Compare pslist vs psscan for hidden processes
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}")
评论
支持 Markdown