Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
briiirussell avatar

Threat Hunting

  • 119 installs
  • 341 repo stars
  • Updated May 27, 2026
  • briiirussell/cybersecurity-skills

Threat Hunting is a Claude Code skill that runs proactive, hypothesis-driven hunts across SIEM, EDR, and logs to find adversaries who have not tripped an alert.

About

Threat Hunting is a Claude skill for proactive, hypothesis-driven hunts that search SIEM, EDR, and logs for adversaries who have not yet tripped an alert. It follows the PEAK framework (Prepare, Execute, Act, Knowledge) and provides a high-yield hunt catalog for persistence, defense evasion, and lateral movement. A defender uses it to form ATT&CK-based hypotheses, run KQL or SPL queries, and graduate findings into detection rules. It is the proactive layer distinct from reactive incident triage.

  • Conducts proactive, hypothesis-driven threat hunts
  • Uses the PEAK framework and MITRE ATT&CK-driven hypotheses
  • Turns hunts into detection rules or documented dead-ends

Threat Hunting by the numbers

  • 119 all-time installs (skills.sh)
  • Ranked #956 of 2,203 Security skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

threat-hunting capabilities & compatibility

Capabilities
siem detection · soc operations · red team engagement · vuln research
Use cases
security audit · research
Pricing
Free
From the docs

What threat-hunting says it does

Hunt for adversaries who are already inside but haven't tripped an alert.
SKILL.md
Hunting is hypothesis-driven, not browse-driven.
SKILL.md
The PEAK (Prepare, Execute, Act, Knowledge) framework from Splunk SURGe
SKILL.md
npx skills add https://github.com/briiirussell/cybersecurity-skills --skill threat-hunting

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs119
repo stars341
Last updatedMay 27, 2026
Repositorybriiirussell/cybersecurity-skills

What it does

Run proactive, hypothesis-driven threat hunts across SIEM and EDR logs using the PEAK framework.

Who is it for?

Defenders looking for adversaries that have evaded existing detections using ATT&CK-based hypotheses.

Skip if: Reactive alert triage or engineering the detection rules themselves, which it delegates to other skills.

When should I use this skill?

You want to proactively hunt for threats, form a hunt hypothesis, or run an ATT&CK-driven hunt.

What you get

Confirmed or ruled-out hunt findings, each turned into a detection rule, a documented dead-end, or a logged coverage gap.

  • Documented hunt hypotheses and queries
  • New detection rules from hits
  • Logged coverage gaps

By the numbers

  • four-step PEAK methodology
  • three execution patterns (pivot from indicator, pivot from technique, anomaly hunt)

Files

SKILL.mdMarkdownGitHub ↗

Threat Hunting — Proactive Adversary Detection

Hunt for adversaries who are already inside but haven't tripped an alert. Distinct from incident-triage (reactive, alert is firing) and from siem-detection (engineer rules so future alerts fire). This skill is the proactive layer — assume something has slipped through, look for it.

Hunting is hypothesis-driven, not browse-driven. "Let's look around the SIEM" is not hunting; "let's check for the specific pattern of T1059.001 (PowerShell) being launched by Office processes" is.

Cross-references: siem-detection (queries you write here often graduate to detection rules), incident-triage (what to do if a hunt confirms a finding), breach-patterns (a rich source of hunt hypotheses), disk-forensics (deeper analysis on confirmed hits).

Methodology — PEAK framework

The PEAK (Prepare, Execute, Act, Knowledge) framework from Splunk SURGe — the most actionable hunting methodology I've seen.

Step 1: Prepare

Form the hypothesis. Strong hypotheses share three properties:

1. Specific — names a technique, log source, and expected artifact 2. Testable — describes what evidence would confirm or deny 3. Bounded — has a defined time window and scope

Bad hypothesis: "Look for anomalies in the SIEM" Good hypothesis: "Within the last 30 days, no service account should have run interactive PowerShell with -encodedCommand flag (T1059.001 + T1027). Search Sysmon event 1 for parent process = service-account-launched scheduled task, child = powershell.exe, command line contains -enc or -encodedcommand."

Hunt hypothesis sources, ranked by yield:

SourceYieldEffort
Recent incident (yours or peer's)HighLow — pattern is concrete
breach-patterns skill catalogHighLow — generalizes from public breaches
MITRE ATT&CK technique you don't have a detection forMediumMedium — read the technique, design the hunt
Threat intel report (CrowdStrike, Mandiant, vendor reports)MediumMedium — current patterns
Anomaly: "this number went up — why"LowLow — often FP, occasionally gold

Step 2: Execute

Run the hunt. Three execution patterns:

Pattern A — Pivot from indicator. Start with a specific IOC (IP, hash, domain) and look for any host or user that touched it.

// Sentinel — pivot from a suspicious IP across all log sources
union *
| where TimeGenerated > ago(90d)
| where contains("198.51.100.42")
| project TimeGenerated, Type, Computer, _ResourceId

Pattern B — Pivot from technique. Start with an ATT&CK technique and look for any host doing that.

// Splunk — T1547.001 Registry Run Keys persistence
index=sysmon EventCode=13 
  TargetObject="*\\Software\\Microsoft\\Windows\\CurrentVersion\\Run\\*"
| stats values(Details) by Computer, User
| where len(values(Details)) > 1

Pattern C — Anomaly hunt. Establish a baseline; look for outliers.

// Sentinel — service accounts authenticating from new geographies
SigninLogs
| where TimeGenerated > ago(30d)
| where UserType == "Service"
| summarize Countries = make_set(Location) by UserPrincipalName
| where array_length(Countries) > 1

Step 3: Act

For every hit, three possible outcomes:

OutcomeAction
Confirmed maliciousEscalate to incident-triage immediately
Confirmed benignDocument and move on
Unknown / unable to confirmDeepen investigation (host artifacts, network traffic, user interview)

Don't leave hits in the "unknown" state. Either resolve, or hand off with a documented next-step.

Step 4: Knowledge

The hunt's value isn't the one hit — it's the artifacts.

For each hunt:

  • If you found something, write a detection rule so future occurrences fire automatically (see siem-detection)
  • If you didn't find anything, document the hunt — query, scope, time window, conclusion. Future hunters won't re-do it
  • If the hunt was hard because of missing log coverage, document the gap and create a backlog item to fix log ingestion

Hunts that don't produce artifacts are work without compounding return. The whole point of the methodology is to turn every hunt into either a rule, a documented dead-end, or a coverage improvement.

High-yield hunt catalog

Persistence

  • Scheduled tasks created outside business hoursschtasks.exe /create from Sysmon event 1 + EventCode 4698 from Windows Security
  • Run-key persistence — registry writes to HKCU\...\Run, HKLM\...\Run, HKCU\...\RunOnce
  • Service installation outside known software-install windows — EventCode 7045
  • WMI persistence__EventFilter and CommandLineEventConsumer subscriptions
  • Login items / launch daemons (macOS)/Library/LaunchDaemons/*.plist, ~/Library/LaunchAgents/*.plist
  • Cron / systemd timers (Linux)/etc/cron.*, /etc/systemd/system/*.timer, user crontabs

Defense evasion

  • PowerShell with `-EncodedCommand` — base64-encoded scripts are evasion 80% of the time
  • `certutil.exe -decode` — LOLBin used to decode dropper payloads
  • Sysmon EventCode 7 (Image loaded) for known-bad DLLs from non-standard paths
  • Process executing from `%TEMP%`, `%APPDATA%`, `\Users\Public` — non-standard exec paths
  • Command-line obfuscation patterns — large amounts of ^, backticks, cmd /c echo y | ...

Credential access

  • LSASS access from unexpected processes — Sysmon EventCode 10 with TargetImage = lsass.exe and SourceImage not in [mssense.exe, NisSrv.exe, ...]
  • `procdump.exe` or `comsvcs.dll` use — process-dumping LOLBins
  • NTDS.dit access outside backup windows — domain controller DB
  • AWS `GetSessionToken` or `AssumeRole` from new IPs — credential capture pivot
  • OAuth consent grants for high-scope applications — see iam-audit

Discovery

  • `net group "Domain Admins"` or equivalent enumeration commands
  • AD service ticket requests for high-value SPNs (Kerberoasting prep) — EventCode 4769 with RC4 encryption
  • `whoami /all`, `quser`, `nltest /domain_trusts` — situational awareness commands run by service accounts (humans rarely run these)
  • Cloud API listing — `ListBuckets`, `ListUsers`, `DescribeInstances` from unusual principals

Lateral movement

  • WMI execution to remote hosts — Sysmon EventCode 1 with wmic.exe or Invoke-WmiMethod
  • PsExec / remote service creation patterns — EventCode 7045 with random service name
  • Remote registry connections to unusual hosts
  • SSH key reuse — one private key authenticating to many hosts in a short window
  • AWS / GCP `AssumeRole` chains across accounts — pivot detection

Collection / staging / exfil

  • Large-volume reads from cloud storage by single principal — unusual S3 / GCS access patterns
  • Archive creation patternsCompress-Archive, 7z.exe, tar, zip operating on directories outside user home
  • DNS queries to recently-registered domains — exfil over DNS or C2 beacon resolution
  • Outbound TLS to high-risk geographies — depends on your organization's normal pattern
  • Beaconing patterns — regular-interval connections (every N seconds ± jitter) to the same destination over hours

Cloud-specific

  • IAM credential exfiltration patternsGetCredentialReport, GenerateCredentialReport from unusual principals
  • IMDS access from unusual processes / containers — anything reaching 169.254.169.254 that isn't the cloud SDK
  • CloudTrail / Audit Log tampering attemptsStopLogging, DeleteTrail, log-bucket access from non-logging principals
  • Cross-region resource creation by single principal in short window — pivot or coin-mining setup

Identity-provider-specific

  • OAuth app grants of high-scope permissions (Google Workspace, M365) — adversary technique for persistence outside the user's password
  • MFA method enrollment from new device — attacker registering their own MFA after stealing a session
  • Sign-ins from impossible geographies — geolocation jumps that exceed travel time
  • Service-account authentication from new client / new IP — service accounts should be predictable

Tools

  • SIEM — Splunk, Sentinel, Elastic, Chronicle, Sumo, Wazuh
  • EDR — CrowdStrike (RTR), SentinelOne (deep visibility), Microsoft Defender (advanced hunting), Carbon Black
  • Sysmon — open-source endpoint logging on Windows, output to SIEM
  • osquery — SQL queries over endpoint state (cross-platform)
  • Velociraptor — open-source live response and hunting framework (much more capable than free EDR)
  • Zeek — network metadata for traffic analysis
  • MITRE ATT&CK Navigator — coverage visualization
  • Hunt-Evil — hunting playbook content (open-source)
  • MaxMind GeoIP — geolocation lookup for IP-based hunts

Output Format

# Threat Hunt Report
## Hunt name: [descriptive — e.g., "Office process → encoded PowerShell"]
## Hypothesis: [specific, testable, bounded]
## Date range: [from - to]
## Hunter: [name]

### Methodology
- ATT&CK technique(s): [TXXXX.NNN]
- Data sources queried: [list]
- Query / queries:
  [the actual SIEM query]

### Findings
| Hit ID | Host / User / Resource | Outcome | Notes |
|--------|------------------------|---------|-------|

### Conclusion
- [Confirmed malicious / All benign / Inconclusive]
- [Confidence level — Low / Medium / High]

### Artifacts produced
- [ ] Detection rule added (link)
- [ ] Coverage gap documented (link)
- [ ] Negative-result documentation filed (link)

### Recommended follow-up
[Anything that needs deeper investigation, escalation, or future hunts]

Boundaries

  • Hunt only environments the user has authorization for
  • Never query SIEM / EDR data outside the user's authority — even if the dataset is available, scope matters
  • For confirmed-malicious findings, escalate to incident-triage immediately — do not continue hunting and risk tipping the adversary
  • Live response actions (host isolation, account disablement) are incident response, not hunting — escalate
  • Refuse to use threat-hunting techniques to surveil employees beyond what HR / legal has authorized
  • Negative hunt results are valuable evidence, not failure — document and credit accordingly

References

  • PEAK Threat Hunting Framework (Splunk SURGe)
  • TaHiTI (Targeted Hunting integrating Threat Intelligence) — Dutch model
  • MITRE ATT&CK
  • "The ThreatHunter Playbook" (Cyb3rWard0g) — open-source content
  • Sigma rules repo — many rules can become hunt queries
  • "Practical Threat Intelligence and Data-Driven Threat Hunting" — Valentina Costa-Gazcón
  • David Bianco's "Pyramid of Pain" — IOC value hierarchy
  • SANS FOR508 / FOR578 course materials
  • Velociraptor community hunt content

Related skills

FAQ

What makes a good hunt hypothesis?

It is specific (names a technique, source, and expected artifact), testable, and bounded to a defined time window and scope.

What happens after a hunt finds something?

Write a detection rule so future occurrences fire automatically; if nothing is found, document the hunt so it is not repeated.

Securityappsecaudit

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.