资讯动态

易失性证据采集标准与取证框架实战指南:Anthropic-Cybersecurity-Skills 中 RFC 3227 与 NIST/ACPO/SWGDE 体系的工程落地

发布时间:2026/9/11 18:26:23 来源:尧图企业网站定制
易失性证据采集标准与取证框架实战指南Anthropic-Cybersecurity-Skills 中 RFC 3227 与 NIST/ACPO/SWGDE 体系的工程落地【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills攻击者的痕迹大量存在于内存、网络连接、运行进程等一重启便消失的易失数据中。本文以 Anthropic-Cybersecurity-Skills 仓库中collecting-volatile-evidence-from-compromised-host技能所沉淀的 标准与框架参考文档 为核心系统梳理 RFC 3227、NIST SP 800-86/800-61、SANS DFIR、MITRE ATTCK、ACPO、ISO/IEC 27037、SWGDE 等国际公认取证标准并对照仓库内的 操作手册、详细工作流、API 参考 与 自动化采集脚本 讲清标准如何落地为可执行命令。读完本文你将掌握完整的易失性证据采集标准体系、按波动性排序的采集顺序以及一套可直接复用的证据完整性保障流程。一、为什么易失性证据采集必须先有标准易失性证据volatile evidence指那些随系统运行而不断变化、在断电或重启后即永久消失的数据包括 CPU 寄存器与缓存、物理内存、网络连接状态、运行进程、打开的文件句柄等。与磁盘上的持久化数据不同这类证据具有一次性、不可再生的特性——错过采集时机证据便永远丢失。正因如此取证领域形成了两条铁律按波动性从高到低采集先采集最易丢失的数据寄存器、内存再采集次易失数据网络状态、进程最后才处理持久化数据磁盘、归档介质证据必须在法律与审计上站得住脚任何采集动作都必须可追溯、可复现、可验证即所谓取证健全性forensic soundness。仓库技能 SKILL.md 的 frontmatter 中将其场景定义为安全事件已确认、主机已定位在系统隔离、关机或处置之前捕获内存、网络连接、运行进程与系统状态并记录完整的监管链chain of custody。适用时机包括怀疑无文件fileless/驻留内存型恶意软件、需要进行根因分析、或证据可能进入法律程序。二、RFC 3227波动性顺序的基石RFC 3227《Guidelines for Evidence Collection and Archiving》证据采集与归档指南是整个易失性证据采集领域的核心标准它首次以规范形式定义了数字证据的波动性顺序Order of Volatility。2.1 标准定义的七级波动性顺序RFC 3227 将证据源按波动性从高到低划分为七个层级寄存器与缓存Registers, cache——CPU 内部生命周期以纳秒计路由表、ARP 缓存、进程表、内核统计、内存Routing table, ARP cache, process table, kernel statistics, memory临时文件系统Temporary file systems磁盘Disk远程日志与监控数据Remote logging and monitoring data物理配置、网络拓扑Physical configuration, network topology归档介质Archival media。2.2 更细粒度的八级优先级表仓库的 API 参考文档 将 RFC 3227 的波动性顺序细化为带持久性量级的可执行优先级表优先级证据源持久性1CPU 寄存器、缓存纳秒级2物理内存RAM直到断电3网络状态秒分钟4运行进程分钟级5磁盘文件系统持久6远程日志/监控持久7物理配置持久8归档介质长期2.3 RFC 3227 的三条关键原则标准同时给出了必须贯穿全程的原则最小化数据改动minimize data alteration任何取证动作都不得改变目标系统上的原始数据这一原则直接演化成了后文 ACPO 的第一原则记录每一步操作document actions从采集开始到分析结束所有动作都必须留痕使用可信工具use trusted tools绝不使用被入侵系统自带的工具攻击者可能已替换必须从外部可信介质如只读挂载的取证 U 盘运行校验过的工具。2.4 标准在仓库中的工程化体现RFC 3227 的波动性顺序并非停留在纸面。仓库脚本 scripts/agent.py 用数据结构直接编码了这条标准——VOLATILITY_ORDER定义了 10 个按priority排序的证据源每个源同时给出 Linux 与 Windows 两套采集命令优先级证据源Linux 工具Windows 工具1memory内存avmlwinpmem_mini_x64.exe2network_connections网络连接ss -tunapnetstat -anob3running_processes运行进程ps auxwwftasklist /V /FO CSV4open_files打开文件lsof -nPhandle64.exe -a5network_config网络配置ip addr showipconfig /all6routing_table路由表ip route showroute print7arp_cacheARP 缓存ip neigh showarp -a8dns_cacheDNS 缓存cat /etc/resolv.confipconfig /displaydns9logged_users登录用户wquery user10scheduled_tasks计划任务crontab -l、ls /etc/cron.d/schtasks /query /FO CSV /Vrun_collection()在采集前对列表按priority排序sorted(sources, keylambda x: x[priority])确保脚本天然遵循最易失的优先采集。值得注意的是内存采集priority1在脚本中被标记为skipped并注明Memory dump requires elevated privileges and dedicated tool需要特权与专用工具这与 SKILL.md 中使用 WinPmem/LiME 从取证 U 盘运行内存采集的要求一致——通用脚本不代替专用内存采集工具。三、NIST SP 800-86取证技术集成指南NIST SP 800-86《Guide to Integrating Forensic Techniques into Incident Response》从技术集成角度回答哪些数据源能用于取证、如何采集与分析。3.1 第 4 章数据源的使用标准文档重点引用了第 4 章Using Data from Data Sources4.2 数据文件Data Files易失与非易失的操作系统数据4.3 操作系统数据Operating System Data内存、进程、网络连接。这直接对应 SKILL.md 工作流中的 Step 2采集系统内存、Step 3采集网络状态、Step 4采集运行进程即仓库技能将 NIST 数据源分类具体化为逐条 shell 命令。3.2 四阶段取证流程SP 800-86 定义了标准取证过程采集Collection→ 检验Examination→ 分析Analysis→ 报告Reporting。其中采集阶段的核心诉求是通过正确的获取方式保证数据完整性——这正是仓库 workflows.md 中证据完整性流程一节要解决的工程问题# 采集后立即对每个文件计算 SHA256 sha256sum /evidence/*.txt /evidence/checksums.sha256 # 传输后、分析前再次校验 sha256sum -c /evidence/checksums.sha256四、NIST SP 800-61 Rev. 3事件响应中的证据处理NIST SP 800-61 Rev. 3《Computer Security Incident Handling Guide》从事件响应视角对证据处理提出要求仓库标准文档将其与 NIST CSF 2.0 的RespondRS功能对齐RS.AN-03开展分析以确定事件范围Analysis to establish incident scope。标准文档强调两点证据必须以取证健全的方式采集collected in a forensically sound manner记录所有采集活动并维护监管链document all collection activities and maintain chain of custody。这一点在技能 frontmatter 中同样有据可查该技能的nist_csf映射为RS.MA-01、RS.MA-02、RS.AN-03、RC.RP-01即缓解与响应活动缓解活动评估事件范围分析与恢复计划执行——四者共同构成从采集到恢复的响应闭环。监管链的具体落地方式见 SKILL.md Step 7下文将详细展开。五、SANS DFIR活体采集的实操最佳实践SANS DFIR数字取证与事件响应社区针对**活体取证live forensics**总结了最贴近实战的操作规范标准文档归纳为五条从最易失到最不易失采集Collect evidence from most volatile to least volatile使用外部可信工具不依赖被入侵系统上的工具这是 RFC 3227可信工具原则的强化采集后立即对所有证据做哈希Hash all evidence immediately after collection记录系统时间与 UTC 的偏移Document system time offset from UTC——这是构建取证时间线的基础最小化在被入侵系统上的足迹Minimize footprint on compromised system。其中时间偏移记录在 SKILL.md Step 6 有直接实现# 系统时间对时间线至关重要 date -u $EVIDENCE_DIR/system_time_utc.txt w32tm /query /status $EVIDENCE_DIR/ntp_status.txt # Windows ntpq -p $EVIDENCE_DIR/ntp_status.txt # Linux而 report 模板 专设System Time Verification表格系统时钟、参考时间、时间偏移、NTP 是否同步、NTP 服务器确保时间偏移被固化进交付物。六、MITRE ATTCK面向检测的证据源映射标准文档提供了一个非常实用的对照表将易失性证据采集与 MITRE ATTCK 的**数据源Data Source**一一对应回答采集这些证据到底能检出什么数据源ATTCK 参考证据类型ProcessDS0009进程创建、命令行运行进程Network TrafficDS0029连接建立、流量网络连接FileDS0022文件创建、修改打开句柄、临时文件Windows RegistryDS0024注册表键修改自启动项Logon SessionDS0028登录创建活跃用户会话ModuleDS0011模块加载已加载 DLL/共享对象这张表揭示了采集与检测的双向关系采集到的易失数据本身就是 ATTCK 检测规则的证据来源。仓库技能 frontmatter 中同时标注了关联的 ATTCK 技术T1059.001、T1057、T1049、T1003.001、T1543.003例如T1059.001PowerShell与T1003.001LSASS 凭证转储常表现为内存中的恶意载荷与可疑进程——对应 DS0009/DS0011 的进程与模块证据T1049系统网络连接发现与T1543.003Windows 服务创建的痕迹分别落在网络状态与注册表/服务配置上——对应 DS0029/DS0024。这意味着在主机被隔离、处置之前按此表完成采集就相当于把 ATTCK 检测所需的最新鲜证据全部留存。七、ACPO 四原则司法视角的证据底线ACPO英国警察局长协会《Good Practice Guide for Digital Evidence》提供了被全球司法体系广泛接受的四条原则标准文档完整收录原则 1任何操作都不得改变数字设备上的数据No action should change data on digital devices原则 2必要时必须由具备能力的人访问原始数据Competent person must access original data when necessary原则 3所有应用于证据的过程都必须有审计追踪Audit trail of all processes applied to evidence原则 4负责人须确保法律与原则得到遵守Person in charge ensures law and principles are adhered to。这四条原则直接决定了采集方式的边界活体采集虽然必须运行在运行中的系统上但所有命令都应从外部可信介质执行、只读采集、不改动目标系统配置并在每一步留下审计记录。仓库 SKILL.md Step 1 的准备采集环境正是对原则 1 与原则 2 的落地# 挂载取证 U 盘工具包绝不在被入侵系统上安装工具 # 校验工具包完整性 sha256sum /mnt/forensic_usb/tools/* /tmp/toolkit_hashes.txt diff /mnt/forensic_usb/tools/known_good_hashes.txt /tmp/toolkit_hashes.txt # 创建带时间戳的证据输出目录 EVIDENCE_DIR/mnt/evidence/$(hostname)_$(date %Y%m%d_%H%M%S) mkdir -p $EVIDENCE_DIR echo Collection started: $(date -u) $EVIDENCE_DIR/collection_log.txt echo Collector: $(whoami) $EVIDENCE_DIR/collection_log.txt echo System: $(hostname) $EVIDENCE_DIR/collection_log.txt工具包先做哈希校验防篡改、证据目录带主机名与时间戳、采集日志记录开始时间/采集人/主机名——每一个细节都服务于审计追踪。八、ISO/IEC 27037第一响应人的证据处理规范ISO/IEC 27037《Guidelines for identification, collection, acquisition and preservation of digital evidence》是面向**第一响应人first responder与取证专员forensic specialist**的国际标准。标准文档强调其四个要点定义数字证据识别、采集、获取与保全的程序明确第一响应人与取证专员的资质要求覆盖易失与非易失证据的获取强调证据处理人员的能力competency。该标准在仓库技能中的对应物是前置条件清单SKILL.md 的 Prerequisites 一节装有取证工具集的 U 盘或网络共享可信工具WinPmem/LiME 用于内存获取写保护器或取证工作站用于磁盘镜像监管链文档表单带完整性校验的安全证据存储采集授权内部人员案件需法务/HR 批准。其中采集授权正是 ISO/IEC 27037 对处理人员资质与程序合规要求的直接体现。九、SWGDE取证流程的质量保证SWGDEScientific Working Group on Digital Evidence数字证据科学工作组为计算机取证制定技术标准。标准文档归纳其核心贡献制定证据获取、检验与报告的标准对取证过程提出质量保证QA要求。在仓库中SWGDE 的质量保证精神体现在两处一是 report 模板 末尾的Collector Certification采集人认证声明我证明以上证据采用取证健全的方法、使用外部可信工具采集且所有证据在采集后立即完成哈希二是采集脚本 scripts/process.py 中每个证据文件落盘时即计算 SHA256 并写入清单_save_evidence内调用_hash_file逐块 8192 字节流式哈希实现采集即哈希、哈希即记录的质量闭环。十、标准落地七步采集工作流将上述标准汇总后仓库 SKILL.md 给出了一个可直接执行的七步工作流每一步都对应前文某一标准。Step 1准备采集环境如第七节所示校验取证工具包哈希、创建带时间戳的证据目录并初始化采集日志。Step 2采集系统内存最高波动性# Windows - WinPmem 内存获取 winpmem_mini_x64.exe $EVIDENCE_DIR\memdump_$(hostname).raw # Linux - LiME 内核模块内存获取 insmod /mnt/forensic_usb/lime.ko path$EVIDENCE_DIR/memdump_$(hostname).lime formatlime # Linux - 备选方案通过 /proc/kcore dd if/proc/kcore of$EVIDENCE_DIR/kcore_dump.raw bs1M # macOS - osxpmem osxpmem -o $EVIDENCE_DIR/memdump_$(hostname).aff4 # 立即对内存转储做哈希 sha256sum $EVIDENCE_DIR/memdump_* $EVIDENCE_DIR/memory_hash.sha256API 参考 补充了内存获取工具矩阵AVMLLinuxavml /path/to/output.lime、WinPmemWindows、LiMELinux 内核模块、Magnet RAM CaptureWindows GUI 工具。Step 3采集网络状态# 活动网络连接 # Windows netstat -anob $EVIDENCE_DIR/netstat_connections.txt 21 Get-NetTCPConnection | Export-Csv $EVIDENCE_DIR/tcp_connections.csv -NoTypeInformation Get-NetUDPEndpoint | Export-Csv $EVIDENCE_DIR/udp_endpoints.csv -NoTypeInformation # Linux ss -tulnp $EVIDENCE_DIR/socket_stats.txt netstat -anp $EVIDENCE_DIR/netstat_all.txt 2/dev/null cat /proc/net/tcp $EVIDENCE_DIR/proc_net_tcp.txt cat /proc/net/udp $EVIDENCE_DIR/proc_net_udp.txt # ARP 缓存、路由表、DNS 缓存、防火墙规则 arp -a $EVIDENCE_DIR/arp_cache.txt route print $EVIDENCE_DIR/routing_table.txt # Windows ip route show $EVIDENCE_DIR/routing_table.txt # Linux ipconfig /displaydns $EVIDENCE_DIR/dns_cache.txt # Windows systemd-resolve --statistics $EVIDENCE_DIR/dns_stats.txt 2/dev/null netsh advfirewall show allprofiles $EVIDENCE_DIR/firewall_rules.txt # Windows iptables -L -n -v $EVIDENCE_DIR/iptables_rules.txt # LinuxStep 4采集运行进程# Windows - 详细进程列表 tasklist /V /FO CSV $EVIDENCE_DIR/process_list_verbose.csv wmic process get ProcessId,Name,CommandLine,ParentProcessId,ExecutablePath /FORMAT:CSV \ $EVIDENCE_DIR/process_commandlines.csv # Linux - 完整进程树 ps auxwwf $EVIDENCE_DIR/process_tree.txt ps -eo pid,ppid,user,args --forest $EVIDENCE_DIR/process_forest.txt cat /proc/*/cmdline 2/dev/null | tr \0 $EVIDENCE_DIR/proc_cmdline_all.txt # 已加载模块/DLL 与打开的文件句柄 listdlls.exe -accepteula $EVIDENCE_DIR/loaded_dlls.txt # Windows lsof $EVIDENCE_DIR/open_files.txt # LinuxStep 5采集登录用户与会话# Windows query user $EVIDENCE_DIR/logged_in_users.txt query session $EVIDENCE_DIR/active_sessions.txt net session $EVIDENCE_DIR/net_sessions.txt 21 # Linux who $EVIDENCE_DIR/who_output.txt w $EVIDENCE_DIR/w_output.txt last -50 $EVIDENCE_DIR/last_logins.txt cat /var/log/auth.log | tail -200 $EVIDENCE_DIR/recent_auth.txt 2/dev/nullStep 6采集系统配置状态# 系统时间UTC与 NTP 状态 date -u $EVIDENCE_DIR/system_time_utc.txt # 环境变量、计划任务、服务 set $EVIDENCE_DIR/environment_vars.txt # Windows env $EVIDENCE_DIR/environment_vars.txt # Linux schtasks /query /fo CSV /v $EVIDENCE_DIR/scheduled_tasks.csv # Windows crontab -l $EVIDENCE_DIR/crontab_current.txt 2/dev/null # Linux sc queryex typeservice stateall $EVIDENCE_DIR/services_all.txt # Windows systemctl list-units --typeservice --all $EVIDENCE_DIR/systemd_services.txt # Linux # Windows 注册表自启动关键位置 reg export HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run $EVIDENCE_DIR/reg_run_hklm.reg /y reg export HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run $EVIDENCE_DIR/reg_run_hkcu.reg /y reg export HKLM\SYSTEM\CurrentControlSet\Services $EVIDENCE_DIR/reg_services.reg /yStep 7证据哈希与监管链文档cd $EVIDENCE_DIR sha256sum * evidence_manifest.sha256 # 创建监管链记录 cat $EVIDENCE_DIR/chain_of_custody.txt EOF CHAIN OF CUSTODY RECORD Case ID: IR-YYYY-NNN Collection Date: $(date -u) Collected By: $(whoami) System: $(hostname) System IP: $(hostname -I 2/dev/null || ipconfig | grep IPv4) Collection Method: Live forensic collection via trusted USB toolkit Evidence Items: $(ls -la $EVIDENCE_DIR/ | grep -v chain_of_custody) SHA256 Manifest: evidence_manifest.sha256 Transfer: [TO BE COMPLETED] Storage Location: [TO BE COMPLETED] EOF十一、证据完整性与常见陷阱11.1 哈希协议对应 SANS 与 NIST 完整性要求workflows.md 定义了严格的哈希协议每个采集到的文件创建后立即哈希最低使用SHA256法律案件优先SHA512哈希清单单独存放任何传输前后都要复验哈希哈希值纳入监管链文档。11.2 监管链要求记录每个证据项的采集人记录精确采集时间UTC记录采集方法与工具版本记录任何证据转移记录存储位置与访问控制记录对副本绝不对原件执行的分析。11.3 八类常见陷阱从被入侵系统的磁盘运行工具忘记立即哈希证据未记录系统时间与 UTC 的偏移在被入侵系统上安装采集工具在内存采集前重启系统证据永久丢失通过浏览文件系统改变文件时间戳未实时记录采集步骤未经授权采集证据。十二、源码视角脚本如何将标准工程化12.1 agent.py标准驱动的轻量采集代理scripts/agent.py 是一个 150 行左右的采集代理核心设计如下标准编码化VOLATILITY_ORDER将 RFC 3227 波动性顺序固化为可排序数据结构见 2.4 节表格跨平台命令分发collect_artifact()根据platform.system()选择tool_windows或tool_linux字段命令列表支持当某类证据需要多条命令如 scheduled_tasks 的crontab -l与ls /etc/cron.d/时脚本依次执行并合并输出结构化清单每个工件记录source、priority、command、timestampISO 8601 Z 后缀的 UTC 时间、status、output_lines、exit_code、sha256JSON 总清单run_collection()最终产出collection_manifest.json含采集起止时间、主机名、平台、工件列表与成功计数。从源码结构看该脚本刻意将内存采集排除在自动执行之外并明确标注原因体现了通用脚本 专用内存工具的专业分工设计。12.2 process.pypsutil 全量采集器scripts/process.py 是更完整的采集器依赖pip install psutil其EvidenceCollector类提供了覆盖十个证据类别的采集方法collect_network_connections()遍历psutil.net_connections()关联每个连接的 PID 与进程名同时输出 CSV 与文本两种格式collect_running_processes()通过psutil.process_iter()抓取 PID/PPID/用户名/命令行/可执行路径/创建时间/CPU/内存/线程数/连接数命令行截断 500 字符collect_open_files()、collect_logged_in_users()、collect_system_info()含开机时间、内存总量、磁盘分区、网络接口、collect_services()、collect_scheduled_tasks()、collect_environment_variables()完整性内建每个文件落盘即经_hash_file()流式计算 SHA256 并写入evidence_manifest最终产出collection_log.json、evidence_manifest.json与sha256_manifest.txt。命令行用法python3 process.py --case-id IR-2026-001 --output-dir ./evidence_collection python3 process.py --case-id IR-2026-001 --skip-memory # 跳过内存提示12.3 报告模板标准要求的交付物assets/template.md 提供了标准化的《易失性证据采集报告》模板包含案件信息Case ID、主机名、IP、OS、采集时间 UTC、采集人、授权来源、采集摘要表每个证据类别标记 Collected/Failed/Skipped、证据清单文件名/SHA256/大小/类别、监管链时间表、系统时间校验表、采集期间的显著发现、工具信息表工具/版本/来源/哈希以及采集人认证声明——该模板将前文所有标准ACPO 审计追踪、ISO 27037 资质声明、SWGDE 质量保证固化为可直接填写的表单。十三、典型应用场景仓库 SKILL.md 列举了五个最常见场景结合标准可理解其证据价值无文件恶意软件攻击基于 PowerShell 的攻击不在磁盘落盘内存转储是包含恶意脚本的关键证据对应 RFC 3227 第一优先级活跃 C2 会话攻击者保持在线网络连接与进程数据揭示 C2 基础设施对应 DS0029内部人员数据窃取进程列表、映射驱动器与网络连接显示外传活动对应 DS0009/DS0029被入侵的 Web 服务器检测到 Web shell内存中可能还有未落盘的后门对应 DS0011 模块证据横向移动进行中内存中的认证令牌与会话揭示影响范围对应 DS0028 登录会话证据。结语从 RFC 3227 的波动性顺序到 NIST SP 800-86/800-61 的数据源与证据处理、SANS DFIR 的活体采集实践、MITRE ATTCK 的证据源映射再到 ACPO 四原则、ISO/IEC 27037 与 SWGDE 的质量保证——本仓库将这一整套标准体系浓缩为一个可操作的 DFIR 技能包标准定义为什么与按什么顺序SKILL.md 与 workflows.md 定义怎么做agent.py 与 process.py 定义如何自动化template.md 则定义如何交付可入证据。实际应急响应时只需记住一条主线先内存、再网络、后进程、最后配置全程哈希、全程留痕、全程使用可信工具——这十六个字就是全部标准在实战中的精华。【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价