
基于 Splunk 检测横向移动Anthropic-Cybersecurity-Skills 威胁狩猎技能实战指南【免费下载链接】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 仓库中的 detecting-lateral-movement-with-splunk 技能展开系统讲解如何以 Splunk 作为 SIEM 平台通过 SPL 查询识别攻击者在网络中的横向移动行为TA0008。你将掌握基于 Windows 认证日志、SMB 流量与远程服务滥用WMI/PsExec/RDP的完整狩猎方法论包括 Type 3 / Type 10 登录事件分析、管理员共享访问检测、服务型横向移动识别、认证图谱构建与异常检测并可直接复用仓库提供的 SPL 查询与 Python 辅助脚本。技能定位与适用场景该技能隶属于仓库的威胁狩猎threat-hunting子域元数据中明确标注了mitre-attack、lateral-movement、splunk、siem、proactive-detection、ta0008等标签见 SKILL.md。它是一套为 AI Agent 设计的结构化操作指令同时映射了多个防御框架MITRE ATTCKT1046、T1057、T1082、T1083、T1021Remote ServicesNIST CSF 2.0DE.CM-01、DE.AE-02、DE.AE-07、ID.RA-05D3FENDApplication Protocol Command Analysis、Network Traffic Analysis、Client-server Payload Profiling 等何时启用该技能按照 SKILL.md 的说明以下场景应启用该技能狩猎攻击者在被攻陷系统之间的横向移动行为检测到凭据被盗后追踪后续横向活动调查网络中异常认证模式事件响应阶段界定入侵影响范围scope the breadth of compromise主动狩猎 TA0008横向移动相关技术。前提条件在运行任何 SPL 查询之前需要确保数据源就绪Splunk Enterprise 或 Splunk Cloud且已接入 Windows 事件数据Windows 安全事件日志已转发重点关注 4624、4625、4648、4672、4768、4769 事件 ID已部署 Sysmon 以获取进程创建与网络连接数据具备 SMB/RDP/WinRM 关联所需的网络流数据或防火墙日志有 Active Directory 用户与组成员关系参考数据。核心概念横向移动的技术与事件模型MITRE ATTCK 横向移动技术映射references/standards.md 给出了完整的战术-技术-事件指针对照技术名称事件特征T1021.001Remote Desktop ProtocolLogon Type 10、RDP 证书事件T1021.002SMB/Windows Admin SharesLogon Type 3、ADMIN$/C$/IPC$ 访问T1021.003Distributed COMLogon Type 3、DCOM 进程创建T1021.004SSHOpenSSH 认证事件T1021.006Windows Remote ManagementWinRM/WSMan 登录事件T1047Windows Management InstrumentationWMI 远程进程创建T1569.002Service ExecutionPsExec 服务安装 Type 3 登录T1570Lateral Tool Transfer经 SMB/RDP 的文件复制T1550.002Pass the Hash使用 NTLM 认证的 Type 3 登录T1550.003Pass the Ticket无前置 TGT 的 Kerberos TGSWindows 登录类型Logon Type速查横向移动的检测高度依赖登录类型区分references/standards.md 整理了完整清单Type名称描述2Interactive本地控制台登录3NetworkSMB、映射驱动器、WinRM4Batch计划任务执行5Service服务启动7Unlock工作站解锁8NetworkCleartextIIS 基本认证9NewCredentialsRunAs /netonly10RemoteInteractiveRDP、远程桌面服务11CachedInteractive缓存域登录实战中Type 3 是 SMB/WinRM/映射驱动器的网络登录标志Type 10 是 RDP 远程交互登录标志二者构成横向移动狩猎的两大主线。关键 Windows 事件 IDEvent ID来源描述4624Security成功登录4625Security失败登录4648Security使用显式凭据登录4672Security分配特殊权限管理员登录4768Security请求 Kerberos TGT4769Security请求 Kerberos TGS4776SecurityNTLM 凭据验证5140Security访问网络共享5145Security网络共享对象访问检查7045System安装新服务1Sysmon进程创建3Sysmon网络连接认证协议与横向移动的对应关系references/standards.md 提供了协议维度的参考协议横向移动方式事件特征NTLMPass-the-HashEvent 4776、NtLmSsp 包KerberosPass-the-TicketEvent 4768/4769、票据异常CredSSPRDPEvent 4624 Type 10WSManWinRMEvent 4624 Type 3、WSMan 来源此外Splunk 数据模型Data Model也是关键关联手段Authentication数据模型对应登录事件、Network_Traffic对应连接数据、Endpoint.Processes对应进程创建、Change.Endpoint_Changes对应服务安装可参考 references/standards.md。标准狩猎工作流SKILL.md 定义了七步工作流定义横向移动范围确定要狩猎的技术RDP、SMB/Admin Shares、WinRM、PsExec、WMI、DCOM、SSH查询认证事件使用 SPL 搜索全环境的 Type 3Network与 Type 10RemoteInteractive登录构建认证图谱映射源到目标主机的认证关系识别异常连接模式检测首次关系识别历史基线中从未出现的源-目标对关联进程活动将认证事件与目标主机上的后续进程创建关联识别异常模式标记对敏感服务器的横向移动、非工作时间活动、服务账户滥用或快速多主机访问报告与遏制记录横向移动路径、受影响系统并协调遏制响应。实战 SPL 查询六大狩猎阶段references/workflows.md 将上述工作流细化为六个阶段的可直接运行查询。以下查询基于indexwineventlogWindows 安全日志与indexsysmon两类索引使用时请根据实际索引名调整。Phase 1网络登录分析Step 1.1 — Type 3 网络登录SMB、WinRM统计每个账户从哪些源地址登录了多少台主机过滤系统账户找出连接目标数超过 3 台的账户indexwineventlog EventCode4624 Logon_Type3 | where NOT match(Account_Name, (?i)(SYSTEM|ANONYMOUS|\\$)) | stats count dc(Computer) as unique_destinations values(Computer) as destinations by Account_Name Source_Network_Address | where unique_destinations 3 | sort -unique_destinationsStep 1.2 — Type 10 RDP 登录借助dnslookup查找命令将源 IP 反查为主机名统计 RDP 登录分布indexwineventlog EventCode4624 Logon_Type10 | stats count by Account_Name Source_Network_Address Computer | lookup dnslookup clientip as Source_Network_Address OUTPUT clienthost as src_hostname | table Account_Name src_hostname Source_Network_Address Computer count | sort -countStep 1.3 — 显式凭据登录PsExec、RunAsEvent 4648 是 runas、PsExec 等显式凭据使用的直接信号过滤本地主机目标后按进程聚合indexwineventlog EventCode4648 | where NOT match(Target_Server_Name, (?i)(localhost|\\$)) | stats count values(Target_Server_Name) as targets by Account_Name Process_Name Computer | sort -countPhase 2管理员共享访问检测Step 2.1 — ADMIN$、C$、IPC$ 共享访问横向移动常用ADMIN$隐藏共享承载远程文件写入Event 5140 记录共享访问indexwineventlog EventCode5140 | where Share_Name IN (\\*\\ADMIN$, \\*\\C$, \\*\\IPC$) | where NOT match(Account_Name, (?i)(\\$|SYSTEM)) | stats count values(Share_Name) as shares by Account_Name Source_Address Computer | sort -countStep 2.2 — 管理员共享上的 SMB 文件操作Event 5145 记录共享对象访问过滤 exe/dll/ps1/bat/cmd 等可执行文件特征识别工具投递indexwineventlog EventCode5145 | where match(Share_Name, (?i)(ADMIN\\$|C\\$)) | where match(Relative_Target_Name, (?i)(\\.exe|\\.dll|\\.ps1|\\.bat|\\.cmd)) | stats count by Account_Name Source_Address Share_Name Relative_Target_Name ComputerPhase 3服务型横向移动Step 3.1 — PsExec 服务安装PsExec 会在目标主机创建PSEXESVC服务Event 7045 记录新服务安装indexwineventlog EventCode7045 | where match(Service_File_Name, (?i)(psexec|PSEXESVC|cmd\\.exe|powershell)) | table _time Computer Service_Name Service_File_Name Service_AccountStep 3.2 — 远程服务创建与网络登录关联将可疑服务安装路径含 temp/appdata/cmd/powershell与同主机的 Type 3 网络登录通过join关联还原服务安装的来源主机indexwineventlog EventCode7045 | eval is_suspiciousif(match(Service_File_Name, (?i)(temp|appdata|cmd|powershell)), 1, 0) | where is_suspicious1 | join Computer [ search indexwineventlog EventCode4624 Logon_Type3 | rename Computer as Computer, Source_Network_Address as lateral_src ] | table _time Computer Service_Name Service_File_Name lateral_srcPhase 4WMI 与 DCOM 横向移动Step 4.1 — 远程 WMI 执行WMI 远程执行时进程由WmiPrvSE.exe派生通过 Sysmon Event 1进程创建识别indexsysmon EventCode1 | where match(ParentImage, (?i)WmiPrvSE\\.exe) AND NOT match(Image, (?i)(WmiApSrv|scrcons)) | table _time Computer User ParentImage Image CommandLineStep 4.2 — DCOM 横向移动DCOM 技术常借 mmc、excel、outlook 等进程派生 cmd、powershell、mshtaindexsysmon EventCode1 | where match(ParentImage, (?i)(mmc\\.exe|excel\\.exe|outlook\\.exe)) | where match(Image, (?i)(cmd\\.exe|powershell\\.exe|mshta\\.exe)) | table _time Computer User ParentImage Image CommandLinePhase 5认证图谱分析Step 5.1 — 构建横向移动图谱用source_IP-destination形式拼接连接关系统计首末次出现时间形成可追溯的移动路径indexwineventlog EventCode4624 Logon_Type IN (3, 10) | where NOT match(Account_Name, (?i)(\\$|SYSTEM|ANONYMOUS)) | eval connectionSource_Network_Address.-.Computer | stats count first(_time) as first_seen last(_time) as last_seen by connection Account_Name | sort -countStep 5.2 — 首次出现的源-目标对以 30 天历史基线为参照用子查询排除已知关系只保留过去 1 天内新出现的账户-源-目标组合——这是发现初始移动的最有效手段indexwineventlog EventCode4624 Logon_Type IN (3, 10) earliest-1d | where NOT match(Account_Name, (?i)(\\$|SYSTEM)) | eval pairAccount_Name.:.Source_Network_Address.-.Computer | search NOT [ | search indexwineventlog EventCode4624 Logon_Type IN (3, 10) earliest-30d latest-1d | eval pairAccount_Name.:.Source_Network_Address.-.Computer | dedup pair | fields pair ] | stats count by pair | sort -countPhase 6异常模式检测Step 6.1 — 速度异常10 分钟内访问 5 台以上主机用bin按 10 分钟窗口分桶统计窗口内访问主机数indexwineventlog EventCode4624 Logon_Type3 | where NOT match(Account_Name, (?i)(\\$|SYSTEM)) | bin _time span10m | stats dc(Computer) as hosts_accessed values(Computer) as destinations by _time Account_Name Source_Network_Address | where hosts_accessed 5 | sort -hosts_accessedStep 6.2 — 非工作时间横向移动提取小时字段标记凌晨6 时与深夜22 时的活动indexwineventlog EventCode4624 Logon_Type IN (3, 10) | where NOT match(Account_Name, (?i)(\\$|SYSTEM)) | eval hourstrftime(_time, %H) | where hour 6 OR hour 22 | stats count by Account_Name Source_Network_Address Computer hour | sort -countStep 6.3 — 服务账户横向移动服务账户svc_/service/admin 命名通常不应进行 RDP 登录命中即告警indexwineventlog EventCode4624 Logon_Type10 | where match(Account_Name, (?i)(svc_|service|admin)) | stats count by Account_Name Source_Network_Address Computer | sort -count源码级支撑查询生成器与离线分析脚本该技能并非只有查询模板仓库同时提供了两套 Python 脚本将 SPL 生成与离线分析自动化。SPL 查询生成器agent.pyscripts/agent.py 内置了LATERAL_MOVEMENT_QUERIES字典覆盖 8 种横向移动技术的即用 SPL 查询每项标注了对应的 MITRE ID 与严重级别技术键MITRE ID严重级别pass_the_hashT1550.002CRITICALpsexec_executionT1569.002HIGHwmi_remote_executionT1047HIGHrdp_pivotingT1021.001MEDIUMsmb_lateralT1021.002HIGHwinrm_executionT1021.006HIGHservice_creationT1543.003HIGHscheduled_task_remoteT1053.005HIGH以 Pass-the-Hash 检测为例脚本中的查询比手工版本更严格同时约束Authentication_PackageNTLM与Logon_ProcessNtLmSsp排除回环地址并要求单一源地址访问目标主机数超过 3indexwineventlog EventCode4624 Logon_Type3 | where Authentication_PackageNTLM AND Logon_ProcessNtLmSsp | where NOT match(Source_Network_Address, ^(127\\.0\\.0\\.1|::1|-)) | stats count dc(Computer) as target_count values(Computer) as targets by Source_Network_Address Account_Name | where target_count 3 | sort -target_countPsExec 检测则从进程创建角度交叉验证同时覆盖PSEXESVC.exe服务进程与 psexec 客户端本身indexsysmon EventCode1 | where (ParentImage*\\services.exe AND Image*\\PSEXESVC.exe) OR (Image*\\psexec.exe OR Image*\\psexec64.exe) | stats count by Image, ParentImage, CommandLine, Computer, User | sort -countCLI 用法见 references/api-reference.mdpython agent.py --generate-queries python agent.py --generate-queries --techniques pass_the_hash psexec_execution python agent.py --parse-results splunk_output.json--generate-queries输出 JSON 格式的查询集--parse-results则调用parse_splunk_results解析 Splunk 导出的 JSON/CSV 结果当某源地址的target_count 3时判定为发现≥10 标记为 CRITICAL否则为 HIGH对应源码见 scripts/agent.py。离线日志分析器process.pyscripts/process.py 是一个不依赖 Splunk 环境的独立分析器适合对导出的日志批量复盘字段归一化normalize_eventscripts/process.py兼容 Splunk_time、SysmonUtcTime、ELKtimestamp等多种字段命名四个检测器网络登录Type 3/10、显式凭据4648、管理员共享访问5140、服务型横向移动7045/4697风险评分机制Type 3 基准 20 分、Type 10 基准 25 分命中 NTLM 认证 10 分潜在 Pass-the-Hash显式凭据 35 分管理员共享 40 分ADMIN$/C$、服务型 60 分评分 ≥70 为 CRITICAL、≥50 为 HIGH、≥30 为 MEDIUMscripts/process.py速度异常分析analyze_velocity按账户聚合短时间内访问 ≥5 台不同主机即触发 VELOCITY_ANOMALY风险 80 分、CRITICAL 级别scripts/process.py移动图谱构建build_movement_graph以源 IP→目标主机为边输出路径图scripts/process.py。运行方式python process.py hunt --input auth_events.json --output ./latmov_output python process.py querieshunt命令会生成lateral_movement_findings.json含 hunt_id、统计、移动图谱、完整发现列表与hunt_report.mdMarkdown 报告两份产出。Splunk REST API 集成splunklib如需将检测流程嵌入自动化管道references/api-reference.md 给出了使用官方 splunklib Python SDK 提交查询的最小示例import splunklib.client as client import splunklib.results as results service client.connect(hostsplunk, port8089, token...) job service.jobs.create(search indexwineventlog EventCode4624) for result in results.JSONResultsReader(job.results(output_modejson)): print(result)常见攻击场景与狩猎要点SKILL.md 列举了五类高频场景结合上文查询即可形成完整狩猎矩阵PsExec 横向移动攻击者经 SMB 在远程系统上执行命令产生 Type 3 登录与ADMIN$共享访问——用 Phase 1.3 Phase 3 的 4648/7045 查询组合定位RDP 跳板使用窃取凭据对内部系统 RDP 登录产生 Type 10 登录——用 Phase 1.2 与 6.3服务账户 RDP查询WMI 远程执行WMIC process call create远程派生进程——用 Phase 4.1 的 WmiPrvSE 父进程查询WinRM PowerShell 远程Enter-PSSession/Invoke-Command远程执行代码——参考 agent.py 中wsmprovhost.exe/winrshost.exe特征查询scripts/agent.pySMB Pass-the-Hash未掌握明文密码即以 NTLM 哈希认证——用 Phase 5/6 结合 NTLM 认证包约束的查询识别。结果输出与报告规范每次狩猎应输出结构化结果。SKILL.md 定义了标准化输出格式Hunt ID: TH-LATMOV-[DATE]-[SEQ] Movement Type: [RDP/SMB/WinRM/WMI/DCOM/PsExec] Source Host: [Hostname/IP] Destination Host: [Hostname/IP] Account Used: [Username] Logon Type: [3/10/other] First Seen: [Timestamp] Event Count: [Number of events] Risk Level: [Critical/High/Medium/Low] Lateral Movement Path: [A - B - C - D]配套的 assets/template.md 提供了完整的狩猎记录模板包含狩猎元数据Hunt ID/分析师/状态、假设声明Hypothesis、技术清单勾选T1021.001/T1021.002/T1021.006/T1047/T1569.002/T1550.002/T1570、路径图示意[Source A] --RDP-- [Host B] --SMB-- [Host C]、发现明细表、受影响账户表以及遏制/凭据重置/检测规则三部分整改建议。模板中的路径图格式与 Phase 5 的connection字段拼接逻辑一一对应可直接用于报告生成。辅助工具链除 Splunk 本体外SKILL.md 建议配合以下工具构建完整闭环工具用途Splunk EnterpriseSIEM 日志聚合与 SPL 查询Splunk Enterprise Security威胁检测与 notable 事件Windows Event Forwarding集中化 Windows 日志Sysmon详细进程与网络遥测BloodHoundAD 攻击路径分析PingCastleAD 安全评估本技能在整个仓库的横向移动检测矩阵中具有代表性——仓库共 68 个技能映射到 TA0008Lateral Movement战术且 T1021.002SMB/Windows Admin Shares是覆盖度最高的 ATTCK 技术之一详见 mappings/README.md。建议结合仓库中 hunting-for-ntlm-relay-attacks、detecting-dcsync-attack-in-active-directory 等同域技能形成从凭据窃取、横向移动到域控提权的完整狩猎链路。【免费下载链接】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),仅供参考