L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

performing-endpoint-forensics-investigation

performing-endpoint-forensics-investigation

对受损端点执行数字取证调查,包括内存获取、磁盘镜像、工件分析和时间线重建。 适用于调查安全事件、为法律诉讼收集证据或分析端点受损范围的场景。 适用于涉及端点取证、内存分析、磁盘取证或事件调查的请求。

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: performing-endpoint-forensics-investigation description: > 对受损端点执行数字取证调查,包括内存获取、磁盘镜像、工件分析和时间线重建。 适用于调查安全事件、为法律诉讼收集证据或分析端点受损范围的场景。 适用于涉及端点取证、内存分析、磁盘取证或事件调查的请求。 domain: cybersecurity subdomain: endpoint-security tags: [endpoint, forensics, memory-analysis, disk-imaging, incident-investigation, Volatility] version: 1.0.0 author: mahipal license: Apache-2.0

执行端点取证调查

使用场景

在以下情况下使用本技能:

  • 调查需要取证分析的已确认或疑似端点入侵
  • 为事件响应或法律诉讼收集易失性和非易失性证据
  • 分析内存转储以发现恶意软件、注入代码或凭据窃取工件
  • 从端点工件(prefetch、shimcache、amcache)重建攻击者时间线

不适用于实时威胁狩猎(使用 EDR/SIEM)或网络取证。

前置条件

  • 配备分析工具的取证工作站(Volatility 3、KAPE、Autopsy、Eric Zimmerman 工具)
  • 磁盘镜像的写阻断器(硬件或软件)
  • 具有监管链文档的安全证据存储
  • 内存获取工具(WinPMEM、FTK Imager、Magnet RAM Capture)
  • 目标端点的管理员访问权限(或物理访问)

操作流程

步骤 1:证据保全(易失性顺序)

按从最易失到最不易失的顺序收集证据:

1. 系统内存(RAM)- 最易失
2. 网络连接和路由表
3. 运行中的进程和打开的文件
4. 磁盘内容(文件系统)
5. 可移动媒体
6. 日志和备份数据 - 最不易失

内存获取:

# WinPMEM(Windows)
winpmem_mini_x64.exe memdump.raw

# FTK Imager - 通过 GUI 创建内存捕获
# 文件 → 捕获内存 → 目标路径 → 捕获内存

# Linux(LiME 内核模块)
sudo insmod lime.ko "path=/evidence/memory.lime format=lime"

易失性数据收集:

# 捕获运行中的进程
Get-Process | Export-Csv "evidence\processes.csv" -NoTypeInformation
tasklist /v > "evidence\tasklist.txt"

# 捕获网络连接
netstat -anob > "evidence\netstat.txt"
Get-NetTCPConnection | Export-Csv "evidence\tcp_connections.csv"

# 捕获已登录用户
query user > "evidence\logged_users.txt"

# 捕获计划任务
schtasks /query /fo CSV /v > "evidence\scheduled_tasks.csv"

# 捕获服务
Get-Service | Export-Csv "evidence\services.csv"

# 捕获 DNS 缓存
ipconfig /displaydns > "evidence\dns_cache.txt"

步骤 2:磁盘镜像

# FTK Imager - 创建取证磁盘镜像
# 文件 → 创建磁盘镜像 → 物理驱动器 → E01 格式
# 始终验证镜像哈希(MD5/SHA1)与源匹配

# dd(Linux)
sudo dc3dd if=/dev/sda of=/evidence/disk.dd hash=sha256 log=/evidence/imaging.log

# 验证镜像完整性
sha256sum /evidence/disk.dd
# 与镜像期间生成的哈希对比

步骤 3:使用 Volatility 3 进行内存分析

# 识别操作系统配置文件
vol -f memdump.raw windows.info

# 列出运行中的进程
vol -f memdump.raw windows.pslist
vol -f memdump.raw windows.pstree

# 查找隐藏进程
vol -f memdump.raw windows.psscan

# 分析网络连接
vol -f memdump.raw windows.netscan

# 检测进程注入
vol -f memdump.raw windows.malfind

# 提取命令行参数
vol -f memdump.raw windows.cmdline

# 分析进程加载的 DLL
vol -f memdump.raw windows.dlllist --pid 1234

# 从内存提取文件
vol -f memdump.raw windows.filescan | grep -i "suspicious"
vol -f memdump.raw windows.dumpfiles --pid 1234

# 检测凭据窃取
vol -f memdump.raw windows.hashdump
vol -f memdump.raw windows.lsadump

# 从内存进行注册表分析
vol -f memdump.raw windows.registry.printkey --key "Software\Microsoft\Windows\CurrentVersion\Run"

步骤 4:Windows 工件分析

关键取证工件及其工具:

Prefetch 文件(C:\Windows\Prefetch\):
  工具:PECmd.exe(Eric Zimmerman)
  显示:带时间戳和运行次数的程序执行历史
  命令:PECmd.exe -d "C:\Windows\Prefetch" --csv output\

ShimCache(AppCompatCache):
  工具:AppCompatCacheParser.exe
  显示:系统中存在过的程序(即使已删除)
  命令:AppCompatCacheParser.exe -f SYSTEM --csv output\

AmCache(C:\Windows\appcompat\Programs\Amcache.hve):
  工具:AmcacheParser.exe
  显示:带 SHA1 哈希和安装时间戳的程序执行
  命令:AmcacheParser.exe -f Amcache.hve --csv output\

NTFS 工件($MFT、$UsnJrnl、$LogFile):
  工具:MFTECmd.exe
  显示:完整文件系统时间线,包括已删除文件
  命令:MFTECmd.exe -f "$MFT" --csv output\

事件日志:
  工具:EvtxECmd.exe
  显示:安全、系统、PowerShell、Sysmon 事件
  命令:EvtxECmd.exe -d "C:\Windows\System32\winevt\Logs" --csv output\

注册表配置单元(SAM、SYSTEM、SOFTWARE、NTUSER.DAT):
  工具:RECmd.exe 及批处理文件
  显示:用户账户、服务、已安装软件、USB 历史
  命令:RECmd.exe -d "C:\Windows\System32\config" --bn BatchExamples\RECmd_Batch_MC.reb --csv output\

步骤 5:时间线重建

# 使用 KAPE 进行自动化工件收集
kape.exe --tsource C: --tdest C:\evidence\kape_output \
  --target KapeTriage --module !EZParser

# 使用 plaso/log2timeline 创建超级时间线
log2timeline.py timeline.plaso disk_image.E01
psort.py -o l2tcsv timeline.plaso -w timeline.csv

# 过滤事件期间附近的时间线
psort.py -o l2tcsv timeline.plaso "date > '2026-02-20' AND date < '2026-02-22'" -w filtered_timeline.csv

步骤 6:记录发现

取证报告结构:

1. 执行摘要
2. 范围和方法论
3. 证据清单(含监管链)
4. 事件时间线
5. 发现和分析
   - 初始访问向量
   - 持久化机制
   - 横向移动
   - 数据访问/泄露
6. 失陷指标(IOC)
7. 建议措施
8. 附录(工具输出、哈希、原始证据)

关键概念

术语定义
易失性顺序从最易失(RAM)到最不易失(备份)的证据收集优先级
监管链从收集到呈堂的证据处理完整文档记录
写阻断器防止修改源证据的硬件或软件设备
超级时间线所有工件时间戳的综合时间顺序视图,用于事件重建
Prefetch记录程序执行历史的 Windows 工件
ShimCache跟踪端点上程序存在情况的应用程序兼容性工件

工具与系统

  • Volatility 3:用于分析 RAM 转储的内存取证框架
  • KAPE(Kroll Artifact Parser and Extractor):自动化分类收集和解析
  • Eric Zimmerman 工具:Windows 工件解析器套件(PECmd、MFTECmd、RECmd 等)
  • Autopsy/Sleuth Kit:用于文件系统分析的磁盘取证平台
  • FTK Imager:取证镜像和内存获取工具
  • Plaso/log2timeline:超级时间线创建框架

常见误区

  • 在实时系统上修改证据:始终先镜像再分析。在实时系统上运行工具会改变时间戳和内存状态。
  • 忘记监管链:没有记录监管链的证据在法律诉讼中不可采信。
  • 只分析磁盘,忽略内存:仅在内存中的恶意软件(无文件攻击)不留下磁盘工件。始终先捕获内存。
  • 未对证据进行哈希:所有证据必须在收集时进行加密哈希以证明完整性。
  • 隧道视野:专注于单一工件而忽视时间线呈现的更广泛故事。始终构建全面的时间线。
Skills enregistrées