dandye/ai-runbooks/hunt-apt

Claude Code and agent skill by dandye/ai-runbooks

Trust tier 2
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

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.

Install

npx vskill@latest install dandye/ai-runbooks/hunt-apt

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 group
  • HUNT_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_QUERY if 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:

OutputDescription
ACTOR_IOCSIOCs associated with threat actor from GTI
ACTOR_TTPSTTPs from threat actor profile (MITRE techniques)
HUNT_RESULTSSIEM search results for actor indicators
DISCOVERED_INDICATORSIOCs found in environment matching actor profile
CONFIRMED_IOCSIOCs confirmed malicious via GTI enrichment

Key Intelligence Sources

SourceTool
Actor Profileget_collection_report
TTPsget_collection_mitre_tree
Timelineget_collection_timeline_events
Related IOCsget_entities_related_to_a_collection
Technique Detailsget_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

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
127
Repository forks
34
7-day trend score
24

Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 11 May 2026, 5 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/dandye/ai-runbooks/hunt-apt/badge)](https://verified-skill.com/skills/dandye/ai-runbooks/hunt-apt)

Something wrong with this skill or its page? Tell us.