hunt-apt
Hunt for a specific APT/threat actor in your environment. Use when you have a threat actor name or GTI collection ID and want to search for their TTPs and IOCs. Gathers intelligence from GTI, searches SIEM for IOCs and TTP-based indicators, and documents findings.
适合你,如果你需要根据威胁情报在SIEM中搜索入侵指标
npx oh-my-skill add dandye/ai-runbooks/hunt-aptcurl -fsSL https://oh-my-skill.com/install.sh | bash -s -- dandye/ai-runbooks/hunt-aptnpx oh-my-skill verify dandye/ai-runbooks/hunt-apt怎么用
商店整理自技能原文 · 版本 086cbf6 · 表述以原文为准装了这个技能后,当你指定一个APT组织(如APT29)或GTI集合ID,Claude会自动搜集该组织的情报(TTP和IOC),在你的SIEM中搜索匹配的指标,并生成包含所有查询和发现的报告。
当你提供APT组织名称或GTI集合ID,并要求进行威胁狩猎时触发。
技能原文 SKILL.md
APT Threat Hunt Skill
Proactively hunt for TTPs and IOCs associated with a specific Advanced Persistent Threat (APT) group based on threat intelligence.
Inputs
THREAT_ACTOR_ID- GTI Collection ID or name of the target APT groupHUNT_TIMEFRAME_HOURS- Lookback period (default: 168 = 7 days)- (Optional)
TARGET_SCOPE_QUERY- UDM query to narrow scope - (Optional)
HUNT_HYPOTHESIS- Specific hypothesis guiding the hunt - (Optional)
HUNT_CASE_ID- SOAR case for tracking
Workflow
Step 1: Identify Actor & Gather Intelligence
If starting with a name:
gti-mcp.search_threat_actors(query="APT_NAME")
Then gather comprehensive intelligence:
gti-mcp.get_collection_report(id=THREAT_ACTOR_ID) gti-mcp.get_collection_mitre_tree(id=THREAT_ACTOR_ID) gti-mcp.get_collection_timeline_events(id=THREAT_ACTOR_ID)
Extract associated IOCs:
gti-mcp.get_entities_related_to_a_collection(id=THREAT_ACTOR_ID, relationship_name="files") gti-mcp.get_entities_related_to_a_collection(id=THREAT_ACTOR_ID, relationship_name="domains") gti-mcp.get_entities_related_to_a_collection(id=THREAT_ACTOR_ID, relationship_name="urls")
Store as GTI_IOC_LIST.
Step 2: Check SIEM IOC Matches
secops-mcp.get_ioc_matches(hours_back=HUNT_TIMEFRAME_HOURS)
Correlate results with GTI_IOC_LIST.
Step 3: IOC-Based SIEM Search
For each IOC type in GTI_IOC_LIST, construct and execute UDM queries:
secops-mcp.search_security_events(
text="UDM query for IOC",
hours_back=HUNT_TIMEFRAME_HOURS
)
Document both positive and negative results → IOC_SEARCH_FINDINGS.
Step 4: TTP-Based SIEM Search
Based on MITRE techniques from Step 1:
- Use
gti-mcp.get_threat_intel(query="MITRE technique details")for detection ideas - Formulate TTP-specific UDM queries
- Execute searches over the timeframe
- Combine with
TARGET_SCOPE_QUERYif provided
Document results → TTP_SEARCH_FINDINGS.
Step 5: Enrich Findings
If hits found (IOC_SEARCH_FINDINGS or TTP_SEARCH_FINDINGS):
For each found IOC or entity:
secops-mcp.lookup_entity(entity_value=FOUND_ITEM) gti-mcp.get_..._report(identifier=FOUND_ITEM)
Step 6: Check Related Cases
Use /find-relevant-case with found IOCs and entities.
Step 7: Document & Report
Use /document-in-case (if HUNT_CASE_ID provided).
Use /generate-report with REPORT_TYPE="apt_hunt":
- Hunt objective and hypothesis
- Threat actor summary
- TTPs investigated
- IOCs searched
- SIEM queries used
- Findings (positive AND negative)
- Recommendations
Step 8: Escalate or Conclude
Confirmed threat found: → Escalate to Incident Response → Create incident case
No threat found: → Document negative findings → Conclude hunt
Required Outputs
After completing this skill, you MUST report these outputs:
| Output | Description | |--------|-------------| | ACTOR_IOCS | IOCs associated with threat actor from GTI | | ACTOR_TTPS | TTPs from threat actor profile (MITRE techniques) | | HUNT_RESULTS | SIEM search results for actor indicators | | DISCOVERED_INDICATORS | IOCs found in environment matching actor profile | | CONFIRMED_IOCS | IOCs confirmed malicious via GTI enrichment |
Key Intelligence Sources
| Source | Tool | |--------|------| | Actor Profile | get_collection_report | | TTPs | get_collection_mitre_tree | | Timeline | get_collection_timeline_events | | Related IOCs | get_entities_related_to_a_collection | | Technique Details | get_threat_intel |
Critical Requirements
- Document ALL queries used (for reproducibility)
- Report negative findings (no hits is valuable intel)
- Don't report false positives as confirmed threats