threat-hunting
Proactively detect and respond to advanced cyber threats using forensic tools and analytics in enterprise environments.
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o threat-hunting.zip https://jpskill.com/download/22048.zip && unzip -o threat-hunting.zip && rm threat-hunting.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/22048.zip -OutFile "$d\threat-hunting.zip"; Expand-Archive "$d\threat-hunting.zip" -DestinationPath $d -Force; ri "$d\threat-hunting.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
threat-hunting.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
threat-huntingフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
threat-hunting
目的
このスキルは、フォレンジックツールと分析を使用して、企業環境における高度なサイバー脅威をプロアクティブに検出し、対応することを可能にします。データ駆動型の手法を通じて、異常の特定、インシデントの調査、およびリスクの軽減に焦点を当てています。
使用する場面
このスキルは、異常なネットワークトラフィック、エンドポイントの異常、または侵害後の分析など、アクティブな脅威調査中に使用します。侵害の痕跡(IOCs)の監視、大規模ネットワークでの定期的なハンティングの実施、またはリアルタイムアラートのためのSIEMシステムとの統合など、ブルーチームの運用に適用してください。
主要な機能
- Volatilityでメモリダンプを分析し、マルウェアプロセスを検出します。
- Zeekを使用してネットワークログを解析し、疑わしい接続を特定します。
- カスタムクエリを介してElasticsearchに脅威パターンを照会します。
- Plasoのようなツールを使用してフォレンジックアーティファクトからタイムラインを生成します。
- Sigmaルールでログ分析の脅威相関を自動化します。
使用パターン
まず、エンドポイントまたはネットワークからデータを収集し、次に分析を適用して脅威を特定します。たとえば、ログの取り込み → クエリの実行 → イベントの相関 → 対応というパイプラインを使用します。常に特定のIOCsまたは時間枠にハンティングの範囲を限定してください。自動化と統合する場合は、入力検証と出力解析を処理するスクリプトにコマンドをラップします。複数ステップのハンティングでは、Zeekでキャプチャし、Elasticsearchでインデックス作成を行うなど、ツールを連携させます。
一般的なコマンド/API
脅威ハンティングタスクには、これらのコマンドを使用します。認証のために環境変数を設定してください。例えば、APIアクセスにはexport $ELASTICSEARCH_API_KEYを設定します。
-
メモリフォレンジックのためのVolatility:
volatility -f memory.dump --profile=Win7SP1x64 pslist
これはプロセスをリスト表示します。結果を保存するには-o output.jsonを追加します。 -
ネットワーク分析のためのZeek:
zeek -r capture.pcap policy/scripts
次にzeek-cut conn.log | grep "suspicious_ip"でログをフィルタリングします。 -
ログクエリのためのElasticsearch API:
エンドポイントPOST https://es.example.com/_searchをボディと共に使用します。
{ "query": { "match": { "message": "malware" } } }
ヘッダーAuthorization: Bearer $ELASTICSEARCH_API_KEYで認証します。 -
タイムライン生成のためのPlaso:
log2timeline.py --storage-file timeline.plaso /path/to/logs
次にpsort.py -w output.csv timeline.plasoでクエリを実行します。
設定形式: ElasticsearchクエリにはJSON(上記参照)、ZeekポリシーにはINI(例: [site] interface=eth0)を使用します。
統合に関する注意点
このスキルを他のブルーチームツールと統合するには、ZeekログをLogstash経由でElasticsearchにパイプするなど、出力をパイプします。API統合の場合、スクリプトで$ELASTICSEARCH_API_KEYを使用します。
curl -H "Authorization: Bearer $ELASTICSEARCH_API_KEY" -X POST https://es.example.com/_ingest/pipeline
データ交換のためにツールがJSONのような形式を共有していることを確認してください。コンテナを使用する場合は、フォレンジックデータアクセス用にボリュームをマウントします。例えば、Dockerを-v /host/logs:/container/logsで実行します。本番環境への影響を避けるため、サンドボックスで統合をテストしてください。
エラー処理
Volatilityでの無効なプロファイル(例: --profileが一致しない場合、「Error: No suitable profile found」と出力されます。volatility --infoでオプションをリスト表示して再試行してください)のような一般的なエラーを確認します。API呼び出しの場合、4xx/5xx応答を処理します。
import requests; response = requests.post(url, headers={'Authorization': f'Bearer {os.environ.get("ELASTICSEARCH_API_KEY")}'}); if response.status_code != 200: raise ValueError(response.text)
スクリプトでは、Zeekでpcapが存在するか処理前に確認するなど、ファイルが見つからないエラーに対してtry-catchを使用します。監査のために、タイムスタンプ付きでエラーをファイルにログ記録してください。
具体的な使用例
-
メモリダンプ内のマルウェアを検出する:
まず、$VOLATILITY_PATH=/path/to/volatilityをエクスポートします。次にvolatility -f suspect.dump --profile=Linuxx64x64 pslist | grep "suspicious_process"を実行します。一致が見つかった場合、スクリプトでアラートを送信します。echo "Threat detected" >> alert.log。 -
ネットワーク異常をハンティングする:
Zeekでトラフィックをキャプチャします。zeek -i eth0 -C。次にzeek-cut conn.log | awk '$3 == "192.168.1.100" {print}'でクエリを実行します。Elasticsearchと統合します。curl -H "Authorization: Bearer $ELASTICSEARCH_API_KEY" -d '{"query":{"match":{"source_ip":"192.168.1.100"}}}' https://es.example.com/_search。
グラフの関係
- 関連: blue-team(クラスター)。防御操作のためのツールを共有するためです。
- タグによる接続: threat-hunting(直接一致)、cybersecurity(検出スキルと重複)、blue-team(クラスター連携)。
- リンク先: フォローアップアクションのための「incident-response」や、より深いデータ検査のための「forensics-analysis」など、他のブルーチームスキル。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
threat-hunting
Purpose
This skill enables proactive detection and response to advanced cyber threats in enterprise environments using forensic tools and analytics. It focuses on identifying anomalies, investigating incidents, and mitigating risks through data-driven methods.
When to Use
Use this skill during active threat investigations, such as unusual network traffic, endpoint anomalies, or post-breach analysis. Apply it in blue-team operations like monitoring for indicators of compromise (IOCs), conducting regular hunts in large-scale networks, or integrating with SIEM systems for real-time alerts.
Key Capabilities
- Analyze memory dumps with Volatility to detect malware processes.
- Parse network logs using Zeek for identifying suspicious connections.
- Query Elasticsearch for threat patterns via custom queries.
- Generate timelines from forensic artifacts using tools like Plaso.
- Automate threat correlation with Sigma rules for log analysis.
Usage Patterns
Start by collecting data from endpoints or networks, then apply analytics to identify threats. For example, use a pipeline: ingest logs → run queries → correlate events → respond. Always scope hunts to specific IOCs or time windows. If integrating with automation, wrap commands in scripts that handle input validation and output parsing. For multi-step hunts, chain tools like Zeek for capture and Elasticsearch for indexing.
Common Commands/API
Use these commands for threat hunting tasks. Set environment variables for authentication, e.g., export $ELASTICSEARCH_API_KEY for API access.
-
Volatility for memory forensics:
volatility -f memory.dump --profile=Win7SP1x64 pslist
This lists processes; add-o output.jsonto save results. -
Zeek for network analysis:
zeek -r capture.pcap policy/scripts
Follow withzeek-cut conn.log | grep "suspicious_ip"to filter logs. -
Elasticsearch API for log queries:
Use endpoint:POST https://es.example.com/_searchwith body:
{ "query": { "match": { "message": "malware" } } }
Authenticate via header:Authorization: Bearer $ELASTICSEARCH_API_KEY. -
Plaso for timeline generation:
log2timeline.py --storage-file timeline.plaso /path/to/logs
Then query:psort.py -w output.csv timeline.plaso.
Config formats: Use JSON for Elasticsearch queries (e.g., above) or INI for Zeek policies (e.g., [site] interface=eth0).
Integration Notes
Integrate this skill with other blue-team tools by piping outputs, e.g., Zeek logs to Elasticsearch via Logstash. For API integrations, use $ELASTICSEARCH_API_KEY in scripts:
curl -H "Authorization: Bearer $ELASTICSEARCH_API_KEY" -X POST https://es.example.com/_ingest/pipeline
Ensure tools share formats like JSON for data exchange. If using containers, mount volumes for forensic data access, e.g., Docker run with -v /host/logs:/container/logs. Test integrations in a sandbox to avoid disrupting production environments.
Error Handling
Check for common errors like invalid profiles in Volatility (e.g., if --profile mismatches, output "Error: No suitable profile found"; retry with volatility --info to list options). For API calls, handle 4xx/5xx responses:
import requests; response = requests.post(url, headers={'Authorization': f'Bearer {os.environ.get("ELASTICSEARCH_API_KEY")}'}); if response.status_code != 200: raise ValueError(response.text)
In scripts, use try-catch for file not found errors, e.g., in Zeek: check if pcap exists before processing. Log errors to a file with timestamps for auditing.
Concrete Usage Examples
-
Detect malware in a memory dump:
First, export$VOLATILITY_PATH=/path/to/volatility. Run:volatility -f suspect.dump --profile=Linuxx64x64 pslist | grep "suspicious_process". If matches found, alert via script:echo "Threat detected" >> alert.log. -
Hunt for network anomalies:
Capture traffic with Zeek:zeek -i eth0 -C. Then query:zeek-cut conn.log | awk '$3 == "192.168.1.100" {print}'. Integrate with Elasticsearch:curl -H "Authorization: Bearer $ELASTICSEARCH_API_KEY" -d '{"query":{"match":{"source_ip":"192.168.1.100"}}}' https://es.example.com/_search.
Graph Relationships
- Related to: blue-team (cluster), as it shares tools for defensive operations.
- Connected via tags: threat-hunting (direct match), cybersecurity (overlaps with detection skills), blue-team (cluster linkage).
- Links to: Other blue-team skills like "incident-response" for follow-up actions, and "forensics-analysis" for deeper data examination.