用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/dandye/adk_runbooks --skill advanced-threat-hunting命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | advanced-threat-hunting |
| description | Use when formulating hypotheses and executing deep-dive proactive threat hunting missions. |
| category | hunting |
| version | 1.0.0 |
| type | Skill |
| title | Skill: Advanced Threat Hunting (Hypothesis-Driven) Runbook |
| generated | {"by":"process:google-labs-jules","at":"2025-12-21T03:04:42.000Z"} |
Conduct proactive, hypothesis-driven threat hunts based on broad threat intelligence (e.g., a new actor report, a novel technique description) or observed anomalies, going beyond pre-defined TTP hunts. Suitable for Tier 3 Analysts or dedicated Threat Hunters.
This runbook outlines a flexible framework for advanced threat hunting, emphasizing iterative investigation and deep analysis using available tools.
${HUNT_HYPOTHESIS}: A clear statement of the hunt's objective (e.g., "Suspected use of DNS tunneling for C2 based on recent actor TTPs", "Anomalous PowerShell execution patterns on critical servers", "Evidence of living-off-the-land techniques bypassing EDR").${RELEVANT_GTI_REPORTS}: Comma-separated list of GTI Collection IDs or report names providing context.${TARGET_SCOPE_QUERY}: UDM query fragment to narrow the initial search scope.${TIME_FRAME_HOURS}: Lookback period in hours for SIEM/log searches (can be adjusted during the hunt, default: 168 = 7 days).${HUNT_CASE_ID}: A SOAR case ID dedicated to tracking this hunt.gti-mcp: All tools, especially get_collection_report, get_entities_related_to_a_collection, get_collection_timeline_events, search_threats, get_threat_intel.secops-mcp: search_security_events (Extensive use), lookup_entity, get_ioc_matches.secops-soar: post_case_comment, list_cases, get_case_full_details.bigquery: execute-query (For large-scale or complex data analysis).${HUNT_HYPOTHESIS}. Define the initial ${TARGET_SCOPE_QUERY} and ${TIME_FRAME_HOURS}. Identify relevant GTI reports (${RELEVANT_GTI_REPORTS}). Create or identify a ${HUNT_CASE_ID} for documentation.get_collection_report).get_entities_related_to_a_collection, get_collection_timeline_events, get_collection_mitre_tree).get_threat_intel for specific technique details.secops-mcp_search_security_events or bigquery.execute-query. Focus on behavioral indicators, anomalies, or specific TTP artifacts.${TARGET_SCOPE_QUERY}.secops-mcp_lookup_entity.get_entities_related_to_a_...).secops-mcp_get_ioc_matches).${HUNT_CASE_ID} using .graph TD
START(["START"]) --> extract_advanced_hunt_node["1. extract_advanced_hunt_node<br/><i>(Extract Hunt Payload & Scope)</i>"]
extract_advanced_hunt_node --> execute_advanced_siem_hunt_node["2. execute_advanced_siem_hunt_node<br/><i>(Iterative SIEM Event Hunt)</i>"]
execute_advanced_siem_hunt_node --> advanced_hunt_router{"3. advanced_hunt_router<br/><i>(Event.actions.route)</i>"}
advanced_hunt_router -- "CONFIRMED_THREAT_PATTERN" --> handle_confirmed_pattern_branch["4a. handle_confirmed_pattern_branch<br/><i>(Escalate Incident to IR)</i>"]
advanced_hunt_router -- "CLEAN_HYPOTHESIS" --> handle_clean_hypothesis_branch["4b. handle_clean_hypothesis_branch<br/><i>(Document Clean Outcome)</i>"]
handle_confirmed_pattern_branch --> document_advanced_hunt_report_node["5. document_advanced_hunt_report_node<br/><i>(SOAR Comment & Report Summary)</i>"]
handle_clean_hypothesis_branch --> document_advanced_hunt_report_node
sequenceDiagram
participant Analyst/Hunter
participant AutomatedAgent as Automated Agent (MCP Client)
participant GTI as gti-mcp
participant SIEM as secops-mcp
participant SOAR as secops-soar
participant BigQuery as bigquery (Optional)
participant OtherTools as EDR/Cloud/IDP (Optional)
participant IR_Team as Incident Response
participant SecEng as Security Engineering
Analyst/Hunter->>AutomatedAgent: Start Advanced Threat Hunt\nInput: HUNT_HYPOTHESIS, GTI_REPORTS (opt), SCOPE (opt), TIME_FRAME, HUNT_CASE_ID (opt)
%% Step 1: Define Scope & Case
Note over AutomatedAgent: Define Hypothesis, Scope, Timeframe. Create/Identify HUNT_CASE_ID.
%% Step 2: Deep Intelligence Analysis
loop For each GTI Report R
AutomatedAgent->>GTI: get_collection_report(id=R)
GTI-->>AutomatedAgent: Report Details
AutomatedAgent->>GTI: get_entities_related_to_a_collection(id=R, ...)
GTI-->>AutomatedAgent: Related Entities/TTPs
AutomatedAgent->>GTI: get_collection_timeline_events(id=R)
GTI-->>AutomatedAgent: Timeline
end
AutomatedAgent->>GTI: get_threat_intel(query="Details on relevant TTPs")
GTI-->>AutomatedAgent: TTP Context
%% Step 3: Develop Initial Queries
Note over AutomatedAgent: Formulate advanced SIEM/BigQuery queries based on Hypothesis & TI
%% Step 4: Iterative Search & Analysis
loop Until Hunt Concluded
AutomatedAgent->>SIEM: search_security_events(text=Query, hours_back=...)
SIEM-->>AutomatedAgent: Search Results
opt Use BigQuery
AutomatedAgent->>BigQuery: execute-query(query=BQ_Query)
BigQuery-->>AutomatedAgent: BQ Results
end
Note over AutomatedAgent: Analyze results, identify leads (Leads L1, L2...)
Note over AutomatedAgent: Refine Hypothesis, Develop New Queries based on Leads
break If No More Leads or Hunt Time Limit Reached
end
%% Step 5: Advanced Enrichment
opt Suspicious Leads Found (L1, L2...)
loop For each Lead Li
AutomatedAgent->>SIEM: lookup_entity(entity_value=Li)
SIEM-->>AutomatedAgent: SIEM Summary
AutomatedAgent->>GTI: get_..._report / get_entities_related_to_a_...(ioc=Li)
GTI-->>AutomatedAgent: GTI Enrichment & Pivot Results
opt Use Other Tools
AutomatedAgent->>OtherTools: Query EDR/Cloud/IDP for Li
OtherTools-->>AutomatedAgent: Additional Context
end
end
end
%% Step 6: Synthesize & Document
Note over AutomatedAgent: Continuously document process, queries, findings in HUNT_CASE_ID
AutomatedAgent->>SOAR: post_case_comment(case_id=HUNT_CASE_ID, comment="Hunt Update: Query [...], Findings [...], Enrichment [...]")
SOAR-->>AutomatedAgent: Comment Confirmation
%% Step 7 & 8: Action / Handover / Conclude
alt Confirmed Threat Found
Note over AutomatedAgent: Escalate to Incident Response
AutomatedAgent->>IR_Team: Handover Findings
AutomatedAgent->>Analyst/Hunter: attempt_completion(result="Advanced Hunt complete. Confirmed threat found and escalated.")
else Suspicious Activity Found
Note over AutomatedAgent: Recommend monitoring or new detections
AutomatedAgent->>SecEng: Propose New Detection Logic
AutomatedAgent->>Analyst/Hunter: attempt_completion(result="Advanced Hunt complete. Suspicious activity documented. Recommendations made.")
else Inconclusive / Negative Findings
Note over AutomatedAgent: Document negative results and limitations
AutomatedAgent->>Analyst/Hunter: attempt_completion(result="Advanced Hunt complete. No significant findings. Hunt documented.")
end
The following rubric is used to evaluate the execution of this Threat Hunt/Analysis runbook by an LLM agent.
| Criteria | Points | Description |
|---|---|---|
| Scope & Query | 25 | Defined a clear scope and executed effective queries (UDM, search). |
| Data Analysis | 30 | Analyzed results to identify patterns, anomalies, or malicious behavior. |
| Findings | 15 | Accurately identified and filtered findings (True Positives vs. False Positives). |
| Documentation | 15 | Documented the hunt methodology and results clearly. |
| Operational Artifacts | 15 | Produced required artifacts: Sequence diagram, execution metadata (date/cost), and summary. |
soar-mcp_post_case_comment${HUNT_CASE_ID} and conclude the runbook execution.