mcpField
I
incident-response

incident-response

github.com/happy-technologies-llcセキュリティ4141 回インストール3 日前に更新
リポジトリ

incident-response について

incident-responseは、脅威の疑い、不正アクセス、データ侵害、不審な活動に対応するセキュリティチーム向けのServiceNowスキルです。検知、分類、封じ込め、調査、復旧、連絡、事後レビューの各段階を扱います。

主な機能

  1. 01不審な活動の検知
  2. 02重大度に基づくインシデント分類
  3. 03侵害されたアカウントの封じ込め
  4. 04監査ログとシステムログの証拠収集
  5. 05対応内容と調査結果の記録
  6. 06復旧と事後レビューの支援

活用シーン

  1. 01ログイン失敗の急増調査
  2. 02アカウント侵害の疑いへの対応
  3. 03セキュリティインシデントの証拠収集
  4. 04封じ込めと復旧措置の記録

MCP 対応

ServiceNow MCPツールで監査ログやシステムログを検索し、セキュリティインシデントを作成し、ユーザーまたはインシデントのレコードを更新して、作業メモに調査結果を記録します。

インストール

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

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill incident-response

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

詳細

セキュリティインシデント対応

概要

このスキルでは、ServiceNow におけるセキュリティインシデントへの対応方法を扱います。

  • 潜在的なセキュリティインシデントの検出
  • セキュリティ脅威の分類
  • 封じ込め手順
  • 調査と証拠収集
  • コミュニケーション手順
  • インシデント発生後のレビュー

使用するタイミング: セキュリティ上の脅威、不正アクセス、データ侵害、または不審なアクティビティを検出した場合。

前提条件

  • ロール: sn_si.admin(セキュリティインシデント対応)、security_admin
  • アクセス権: セキュリティインシデントテーブル、監査ログ、システムログ
  • プラグイン: Security Incident Response (sn_si)

手順

フェーズ 1:検出と特定

一般的な検出元:

  • ユーザーからの報告(フィッシング、不審なメール)
  • SIEM アラート
  • 監査ログの異常
  • ログイン失敗の急増
  • 通常と異なるデータアクセスパターン

不審なログインアクティビティを照会する:

Tool: SN-Query-Table
Parameters:
  table_name: sys_audit
  query: tablename=sys_user^fieldname=failed_attempts^newvalueGT5^sys_created_onONLast 24 hours
  fields: documentkey,user,newvalue,sys_created_on
  limit: 100

最近の管理者操作を確認する:

Tool: SN-Query-Table
Parameters:
  table_name: sys_audit
  query: sys_created_onONLast hour^userLIKEadmin
  fields: tablename,fieldname,oldvalue,newvalue,user,sys_created_on
  limit: 50
フェーズ 2:分類

セキュリティインシデントの重大度マトリックス:

重大度影響範囲例
重大全社規模ランサムウェア、データ侵害、管理者アカウントの侵害
高部門全体機密データへの不正アクセス
中限定的な範囲フィッシングの試み、単一システム上のマルウェア
低最小限スパム、攻撃の試みの失敗

セキュリティインシデントを作成する:

Tool: SN-Create-Record
Parameters:
  table_name: sn_si_incident
  data:
    short_description: "Potential unauthorized access - Admin account"
    description: |
      Detection: Multiple failed login attempts followed by successful login
      Source IP: 203.0.113.50 (external)
      Target Account: [email protected]
      Time: 2026-02-06 14:30 UTC

      Initial Analysis:
      - 15 failed attempts over 5 minutes
      - Successful login from unfamiliar IP
      - Unusual time (outside business hours)
    category: Unauthorized Access
    subcategory: Account Compromise
    priority: 1
    state: Analysis
    affected_user: [user_sys_id]
    business_criticality: Critical
フェーズ 3:封じ込め

即時対応(重大/高):

  1. 侵害されたアカウントを無効にする:
Tool: SN-Update-Record
Parameters:
  table_name: sys_user
  sys_id: [compromised_user_sys_id]
  data:
    locked_out: true
    active: false
  1. 有効なセッションを取り消す:
Tool: SN-Execute-Background-Script
Parameters:
  script: |
    var gr = new GlideRecord('v_user_session');
    gr.addQuery('user', '[compromised_user_sys_id]');
    gr.query();
    while (gr.next()) {
      gr.deleteRecord();
    }
    gs.info('Terminated all sessions for compromised user');
  description: "Emergency: Terminate compromised user sessions"
  1. 封じ込め措置を記録する:
Tool: SN-Add-Work-Notes
Parameters:
  sys_id: [security_incident_sys_id]
  table_name: sn_si_incident
  work_notes: |
    CONTAINMENT ACTION - [TIMESTAMP]

    Actions Taken:
    1. Account locked - sys_user.locked_out = true
    2. Account deactivated - sys_user.active = false
    3. Active sessions terminated - v_user_session cleared

    Performed by: [Analyst Name]
    Approved by: [Manager Name]
フェーズ 4:調査

証拠を収集する:

  1. 影響を受けたユーザーの監査証跡:
Tool: SN-Query-Table
Parameters:
  table_name: sys_audit
  query: user=[compromised_user_id]^sys_created_onONLast 7 days
  fields: tablename,fieldname,oldvalue,newvalue,sys_created_on
  limit: 500
  1. システムログ:
Tool: SN-Query-Table
Parameters:
  table_name: syslog
  query: sys_created_onONLast 24 hours^messageLIKElogin
  fields: level,message,source,sys_created_on
  limit: 200
  1. データアクセスログ:
Tool: SN-Query-Table
Parameters:
  table_name: sys_audit
  query: user=[user_id]^tablenameINsys_user,customer_account,hr_core_profile
  fields: tablename,documentkey,fieldname,sys_created_on

調査結果を記録する:

Tool: SN-Add-Work-Notes
Parameters:
  sys_id: [security_incident_sys_id]
  work_notes: |
    INVESTIGATION FINDINGS - [TIMESTAMP]

    Timeline:
    - 14:25 - First failed login attempt
    - 14:30 - Successful login from IP 203.0.113.50
    - 14:32 - Accessed HR records
    - 14:35 - Downloaded employee list
    - 14:40 - Session terminated by security

    Data Accessed:
    - hr_core_profile: 150 records viewed
    - sys_user: 50 records exported

    Indicators of Compromise:
    - External IP (not company VPN)
    - Outside business hours
    - Bulk data access pattern
フェーズ 5:根絶と復旧

認証情報をリセットする:

Tool: SN-Execute-Background-Script
Parameters:
  script: |
    var user = new GlideRecord('sys_user');
    user.get('[compromised_user_sys_id]');
    user.user_password.setDisplayValue('TEMP-' + gs.generateGUID().substring(0,8));
    user.update();
    gs.info('Password reset for: ' + user.user_name);
  description: "Reset compromised user password"

セキュリティを強化して再有効化する:

Tool: SN-Update-Record
Parameters:
  table_name: sys_user
  sys_id: [user_sys_id]
  data:
    active: true
    locked_out: false
    password_needs_reset: true
    failed_attempts: 0
フェーズ 6:コミュニケーション

通知テンプレート:

影響を受けたユーザー宛て:

件名:セキュリティ対応が必要です - アカウントアクセス

不審なアクティビティが確認されたため、お客様のアカウントを一時的に無効にしました。 パスワードはリセットされています。本人確認と新しい認証情報の受け取りについて、 IT セキュリティ(内線 1234)までお問い合わせください。

管理者宛て:

セキュリティインシデント #[number] - 状況報告

概要:[簡単な説明] 影響:[影響範囲] 現在の状況:[封じ込め済み/調査中/解決済み] 実施した措置:[措置の一覧] 次のステップ:[予定している措置]

フェーズ 7:インシデント発生後のレビュー

セキュリティインシデントをクローズする:

Tool: SN-Update-Record
Parameters:
  table_name: sn_si_incident
  sys_id: [incident_sys_id]
  data:
    state: Closed
    close_code: Resolved
    close_notes: |
      Resolution Summary:
      - Compromised credentials reset
      - No data exfiltration confirmed
      - User re-trained on security awareness

      Root Cause: Weak password + phishing attack

      Preventive Actions:
      - MFA enabled for all admin accounts
      - Password policy strengthened
      - Phishing training scheduled

      Lessons Learned documented in KB0012345

対応時間の目標

重大度初動対応封じ込め解決
重大15 分1 時間24 時間
高1 時間4 時間72 時間
中4 時間24 時間1 週間
低24 時間1 週間2 週間

ベストプラクティス

  • 証拠を保全する: 調査が終わるまでログを変更または削除しないでください
  • すべてを記録する: すべての操作を作業メモに記録してください
  • 証拠保全の連鎖を維持する: 誰がどの証拠にアクセスしたかを追跡してください
  • 知る必要のある人に限定する: インシデントの詳細は必要な担当者にのみ共有してください
  • 法的な考慮事項: データ侵害が発生した場合は法務部門に相談してください

トラブルシューティング

セキュリティインシデントテーブルにアクセスできない

原因: Security Incident Response プラグインまたはロールが不足しています 解決策: sn_si プラグインが有効であることを確認し、sn_si.admin ロールを申請してください

監査ログが見つからない

原因: テーブルの監査が有効になっていません 解決策: sys_dictionary でテーブルの監査フラグを確認してください

関連スキル

  • security/audit-compliance - コンプライアンスの確認
  • itsm/major-incident - 重大インシデントへの対応
  • security/acl-management - アクセス制御

参考資料

コメント