mcpField
B
building-soc-playbook-for-ransomware

building-soc-playbook-for-ransomware

github.com/mukul975セキュリティ35.2k181 回インストール8 週間前に更新
リポジトリ

building-soc-playbook-for-ransomware について

SOCチーム向けに、ランサムウェア対応プレイブックの設計と文書化を支援するスキルです。検知から復旧、証拠保全、事後レビューまでの手順とクエリ例を扱います。

主な機能

  1. 01SIEM検知ルールの例
  2. 02アラートのトリアージ分岐
  3. 03端末隔離と封じ込め手順
  4. 04フォレンジック証拠の収集
  5. 05バックアップ復旧と事後レビュー

活用シーン

  1. 01Tier 1~3アナリスト向け対応手順の策定
  2. 02ランサムウェア封じ込め・復旧手順の整備
  3. 03机上演習での連携課題の特定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mukul975/anthropic-cybersecurity-skills --skill building-soc-playbook-for-ransomware

インストール後、Claude Code で/building-soc-playbook-for-ransomwareを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

LICENSE
references/
api-reference.md
scripts/
agent.py

詳細

ランサムウェア対応SOCプレイブックの構築

使用する場面

以下の場合にこのスキルを使用します。

  • SOCチームがTier 1~3のアナリスト向けに、標準化されたランサムウェア対応プレイブックを必要としている
  • 組織にランサムウェアの封じ込めと復旧に関する文書化された手順がない
  • 机上演習で、ランサムウェア対応の連携におけるギャップが明らかになった
  • コンプライアンス要件(NIST CSF、ISO 27001)により、インシデント対応プレイブックの文書化が義務付けられている

使用しないでください。進行中のランサムウェアインシデントにおいて、唯一の指針として使用しないでください。インシデント発生前に、事前に作成したプレイブックをテストし、訓練しておいてください。

前提条件

  • エンドポイントおよびネットワークのデータを備えたSIEMプラットフォーム(Splunk ES、Elastic Security、またはSentinel)
  • ネットワーク隔離機能を備えたEDRソリューション(CrowdStrike、SentinelOne、またはMicrosoft Defender for Endpoint)
  • テスト済みの復旧手順と、オフラインまたはイミュータブルなバックアップを備えたバックアップインフラストラクチャ
  • 法務部門、経営幹部、および外部のIRリテーナー連絡先を含むコミュニケーション計画
  • ランサムウェアの攻撃手法の連鎖に関するMITRE ATT&CKの知識

ワークフロー

ステップ1:検知トリガーを定義する

ランサムウェアの初期兆候を検知するSIEMルールを作成します。

大規模なファイル暗号化の検知(Splunk):

index=sysmon EventCode=11
| bin _time span=1m
| stats dc(TargetFilename) AS unique_files, values(TargetFilename) AS sample_files by Computer, Image, _time
| where unique_files > 100
| eval suspicious_extensions = if(match(mvjoin(sample_files, ","), "\.(encrypted|locked|crypt|enc|ransom)"), "YES", "NO")
| where suspicious_extensions="YES" OR unique_files > 500
| sort - unique_files

シャドウコピーの削除(T1490):

index=wineventlog sourcetype="WinEventLog:Security" OR index=sysmon EventCode=1
(CommandLine="*vssadmin*delete*shadows*" OR CommandLine="*wmic*shadowcopy*delete*"
 OR CommandLine="*bcdedit*/set*recoveryenabled*no*" OR CommandLine="*wbadmin*delete*catalog*")
| table _time, Computer, User, ParentImage, Image, CommandLine

ランサムウェアの身代金要求ファイルの作成:

index=sysmon EventCode=11
TargetFilename IN ("*README*.txt", "*DECRYPT*.txt", "*RANSOM*.txt", "*RECOVER*.html", "*HOW_TO*.txt")
| stats count by Computer, Image, TargetFilename
| where count > 5

Elastic SecurityのEQL版:

sequence by host.name with maxspan=2m
  [process where event.type == "start" and
    process.args : ("*vssadmin*", "*delete*", "*shadows*")]
  [file where event.type == "creation" and
    file.name : ("*README*DECRYPT*", "*RANSOM*", "*HOW_TO_RECOVER*")]
ステップ2:トリアージの判断ツリーを作成する
RANSOMWARE ALERT TRIAGE
│
├── Is encryption actively occurring?
│   ├── YES → IMMEDIATE: Isolate host from network (Step 3)
│   │         Do NOT power off (preserve memory for forensics)
│   └── NO → Is this a pre-encryption indicator?
│       ├── Shadow copy deletion → HIGH PRIORITY: Isolate and investigate
│       ├── Known ransomware hash → HIGH PRIORITY: Block hash, scan enterprise
│       └── Suspicious process behavior → MEDIUM: Investigate, prepare isolation
│
├── How many hosts affected?
│   ├── Single host → Contained incident, follow host isolation procedure
│   ├── Multiple hosts (2-10) → Escalate to Tier 2, begin enterprise-wide scan
│   └── Enterprise-wide (>10) → Activate full IR team, engage external retainer
│
└── Is data exfiltration confirmed?
    ├── YES → Double extortion scenario, engage legal for breach notification
    └── NO/UNKNOWN → Check for Cobalt Strike/C2 beacons, review outbound transfers
ステップ3:封じ込め手順

EDRによるネットワーク隔離(CrowdStrike Falcon):

# Isolate host using CrowdStrike Falcon API
curl -X POST "https://api.crowdstrike.com/devices/entities/devices-actions/v2?action_name=contain" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"ids": ["device_id_here"]}'

Microsoft Defender for Endpointによるネットワーク隔離:

# Isolate machine via MDE API
$headers = @{Authorization = "Bearer $token"}
$body = @{Comment = "Ransomware containment - IR-2024-0500"; IsolationType = "Full"} | ConvertTo-Json
Invoke-RestMethod -Uri "https://api.securitycenter.microsoft.com/api/machines/$machineId/isolate" `
    -Method Post -Headers $headers -Body $body -ContentType "application/json"

ファイアウォールの緊急ルール:

# Palo Alto — Block SMB lateral spread
set rulebase security rules RansomwareContainment from Trust to Trust
set rulebase security rules RansomwareContainment application ms-ds-smb
set rulebase security rules RansomwareContainment action deny
set rulebase security rules RansomwareContainment disabled no
commit

Active Directoryの緊急対応:

# Disable compromised account
Disable-ADAccount -Identity "compromised_user"

# Reset Kerberos TGT (if domain admin compromised)
# WARNING: This resets krbtgt and requires two resets 12+ hours apart
Reset-KrbtgtKeys -Server "DC-PRIMARY" -Force

# Block lateral movement by disabling remote services
Set-Service -Name "RemoteRegistry" -StartupType Disabled -Status Stopped
ステップ4:証拠の収集と保全

修復前にフォレンジック成果物を収集します。

# Capture running processes and network connections
Get-Process | Export-Csv "C:\IR\processes_$(hostname).csv"
Get-NetTCPConnection | Export-Csv "C:\IR\netstat_$(hostname).csv"

# Capture memory dump (if host still running)
winpmem_mini_x64.exe C:\IR\memory_$(hostname).raw

# Collect ransomware artifacts
Copy-Item "C:\Users\*\Desktop\*README*" "C:\IR\ransom_notes\" -Recurse
Copy-Item "C:\Users\*\Desktop\*.encrypted" "C:\IR\encrypted_samples\" -Force

# Capture event logs
wevtutil epl Security "C:\IR\Security_$(hostname).evtx"
wevtutil epl System "C:\IR\System_$(hostname).evtx"
wevtutil epl "Microsoft-Windows-Sysmon/Operational" "C:\IR\Sysmon_$(hostname).evtx"
ステップ5:駆除と復旧

ランサムウェアの亜種を特定する:

Splunkで組織全体のIOCスキャンを実施する:

index=sysmon (EventCode=1 OR EventCode=11 OR EventCode=3)
(TargetFilename="*ransomware_binary_name*" OR sha256="KNOWN_HASH"
 OR DestinationIp="C2_IP_ADDRESS" OR CommandLine="*malicious_command*")
| stats count by Computer, EventCode, Image, CommandLine
| sort - count

バックアップからの復旧:

  1. バックアップの完全性を確認します(オフラインまたはイミュータブルなバックアップが影響を受けていないことを確認します)
  2. 既知の正常なイメージから影響を受けたシステムを再構築します
  3. 最後のクリーンなバックアップからデータを復元します
  4. ネットワークに再接続する前に、復元したシステムを検証します
  5. 再感染がないか、復元したシステムを72時間監視します
ステップ6:インシデント後の文書化

教訓を盛り込んだプレイブックの結論を構成します。

POST-INCIDENT REVIEW TEMPLATE
1. Timeline of events (detection to full recovery)
2. Initial access vector identification
3. Dwell time analysis (time from initial compromise to encryption)
4. Detection gaps identified
5. Response effectiveness metrics (MTTD, MTTC, MTTR)
6. Playbook improvements recommended
7. New detection rules deployed
8. Backup and recovery procedure updates

重要な概念

用語定義
二重恐喝データの暗号化と窃取を組み合わせ、身代金が支払われなければデータを公開すると脅すランサムウェアの手口
潜伏期間初期侵害から検知までの期間。ランサムウェアの攻撃者は、暗号化を開始するまで平均5~9日潜伏します
MTTC封じ込めまでの平均時間。検知から影響を受けたシステムの隔離成功までの時間です
キルチェーンランサムウェアの進行過程:初期アクセス -> 実行 -> 永続化 -> 権限昇格 -> ラテラルムーブメント -> 収集 -> 外部送信 -> 影響
イミュータブルバックアップ定められた保持期間中、変更や削除ができないバックアップストレージ(WORMストレージ)
RTO/RPORecovery Time Objective(目標復旧時間)/Recovery Point Objective(目標復旧時点)。許容可能な最大ダウンタイムとデータ損失のしきい値です

ツールとシステム

  • CrowdStrike Falcon / SentinelOne:ネットワーク隔離、プロセスの終了、脅威ハンティング機能を備えたEDRプラットフォーム
  • Splunk ES / Elastic Security:検知ルールの導入や組織全体のIOCスキャンに使用するSIEMプラットフォーム
  • ID Ransomware:暗号化されたファイルのサンプルや身代金要求ファイルからランサムウェアの亜種を特定するオンラインサービス
  • No More Ransom Project:既知のランサムウェアファミリー向けに無料の復号ツールを提供する、Europolが支援する取り組み
  • Veeam / Rubrik:イミュータブルバックアップのサポートと即時復旧機能を備えたエンタープライズ向けバックアップソリューション

一般的なシナリオ

  • LockBit 攻撃:SMB 経由のラテラルムーブメントと大量のファイル暗号化によって検出されます — 隔離し、Cobalt Strike のビーコンをスキャンします
  • BlackCat/ALPHV:ランサムウェアの身代金要求文の作成によって検出されます — Rclone または Mega へのアップロードによるデータ窃取がないか確認します
  • Conti/Royal:シャドウコピーの削除によって検出されます — 先行する BazarLoader/Emotet による初期侵入がないか確認します
  • RansomHub:異常なプロセス実行によって検出されます — VPN または RDP の認証情報が侵害されていないか調査します
  • Play Ransomware:サービスアカウントの悪用によって検出されます — AD を監査し、新たに作成されたアカウントやグループメンバーシップの変更を確認します

出力形式

RANSOMWARE PLAYBOOK EXECUTION — IR-2024-0500
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Phase 1 - Detection:
  Alert:      Mass file encryption detected on FILESERVER-03
  Variant:    LockBit 3.0 (confirmed via ID Ransomware)
  MTTD:       12 minutes from first encryption to SOC alert

Phase 2 - Containment:
  [DONE] FILESERVER-03 isolated via CrowdStrike at 14:35 UTC
  [DONE] SMB blocked enterprise-wide via firewall emergency rule
  [DONE] Compromised service account disabled in AD
  MTTC:       23 minutes

Phase 3 - Eradication:
  [DONE] 3 additional hosts with C2 beacon identified and isolated
  [DONE] Cobalt Strike C2 domain (c2[.]evil[.]com) sinkholed
  [DONE] Enterprise-wide IOC scan completed — no additional infections

Phase 4 - Recovery:
  [DONE] FILESERVER-03 rebuilt from gold image
  [DONE] Data restored from immutable Veeam backup (RPO: 4 hours)
  [DONE] Systems monitored 72 hours — no reinfection
  MTTR:       18 hours

Total Affected: 1 server, 3 workstations
Data Loss:      4 hours of file modifications (backup RPO)
Exfiltration:   No evidence of data exfiltration confirmed

コメント