implementing-privileged-session-monitoring について
特権セッションを監視する管理者や監査担当者向けの導入ガイドです。プロキシ経由の記録、リアルタイム監視、特権操作の事後確認を扱い、CyberArk の構成や Teleport などの代替手段を説明します。
主な機能
- 01PSM 経由で特権アクセスをルーティング
- 02セッション録画とキー入力記録
- 03実行中セッションの監視・一時停止
- 04ユーザーや対象別の検索と再生
- 05セッションメタデータを SIEM に転送
- 06代替策として Teleport の記録を紹介
活用シーン
- 01本番サーバーの特権セッション記録を設定
- 02管理者やベンダーの操作を調査
- 03高リスクコマンドにアラートを設定
- 04監査・フォレンジック記録を整備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill implementing-privileged-session-monitoringインストール後、Claude Code で/implementing-privileged-session-monitoringを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSEreferences/api-reference.mdscripts/agent.py詳細
特権セッション監視の実装
使用するタイミング
- 重要なサーバーおよびデータベースへのすべての特権アクセスに対して、セッション記録を導入または構成するとき
- 特権アクティビティの監視を義務付けるコンプライアンス要件(PCI-DSS 10.2、SOX、HIPAA、ISO 27001)に対応するとき
- 管理者またはサードパーティベンダーが不正な操作を行った可能性のあるインシデントを調査するとき
- 特権セッション中に実行された高リスクのコマンドに対して、リアルタイムアラートを実装するとき
- 本番インフラストラクチャ上のすべての管理操作について、フォレンジック監査証跡を確立するとき
使用しないでください:標準的なユーザーセッションやエンドポイントのアクティビティの監視には使用しないでください。一般的なユーザー行動の監視には EDR/UBA ソリューションを使用してください。特権セッション監視は、昇格されたアクセス権を持つセッションに特化しています。
前提条件
- Digital Vault が構成された CyberArk PAM セルフホスト型または Privilege Cloud のデプロイメント
- 堅牢化された Windows/Linux ジャンプサーバーにインストールされた CyberArk Privileged Session Manager (PSM) または PSM for SSH (PSMP)
- すべての特権アクセスが PSM プロキシ経由でルーティングされるネットワークアーキテクチャ(ターゲットへの直接の RDP/SSH はなし)
- セッションレビュー用にデプロイされ、アクセス可能な PVWA (Password Vault Web Access)
- PAM ユーザーの認証に使用する Active Directory 連携
- セッション記録用の十分なストレージ(目安:RDP で 1 分あたり 50〜250 KB、SSH で 1 分あたり 5〜20 KB)
- オープンソースの代替手段として、Teleport、セッション記録機能を備えた Apache Guacamole、または Linux 向けの
script/ttyrec
ワークフロー
ステップ 1:アーキテクチャ — すべての特権アクセスを PSM 経由にルーティングする
記録プロキシを迂回する直接の特権アクセスがないようにします:
Architecture Overview:
Admin User ──> PVWA (Web Portal) ──> PSM (Jump Server) ──> Target Server
│ │ │
│ Credentials never │ Session is │
│ exposed to admin │ recorded and │
│ │ stored in Vault │
└── MFA + AD Auth ──────────────────> │ │
└── RDP/SSH proxy ──>│
Network Controls:
- Firewall: DENY direct RDP (3389) and SSH (22) to target servers from user networks
- Firewall: ALLOW RDP/SSH to target servers ONLY from PSM server IPs
- Firewall: ALLOW PVWA access (443) from admin user networks
- PSM server: Hardened, no internet access, local admin access restricted
ステップ 2:PSM 接続コンポーネントを構成する
PSM がターゲットシステムに接続する方法を定義します。PVWA 管理コンソールで次のように設定します:
PVWA > Administration > Configuration > Connection Components
For Windows RDP targets:
Connection Component: PSM-RDP
Protocol: RDP
Client Application: mstsc.exe
Recording Settings:
Record Sessions: Yes
Recording Format: AVI (video) + Keystrokes (text)
Record Windows Titles: Yes
For Linux SSH targets:
Connection Component: PSM-SSH
Protocol: SSH
Client Application: PSM-SecureCRT or PSM-Putty
Recording Settings:
Record Sessions: Yes
Recording Format: AVI + Text commands
Record Unix Commands: Yes
For Database targets (SQL Server Management Studio):
Connection Component: PSM-SSMS
Protocol: Custom
Client Application: SSMS.exe
Recording Settings:
Record Sessions: Yes
Record SQL Queries: Yes (via keystroke logging)
ステップ 3:セッション記録ポリシーを構成する
リスクレベルとコンプライアンス要件に基づいて記録ルールを定義します:
PVWA > Administration > Platform Management > [Platform] > Session Management
Session Recording Settings:
Enable Session Recording: Yes
Recording Type: Record and Save (not just Monitor)
Keystroke Logging:
Enable Transcript: Yes
Enable Window Events: Yes
Storage:
Recordings Storage Location: Vault (encrypted, tamper-proof)
Retention Period: 90 days (adjust per compliance requirement)
PCI-DSS: Retain for 1 year, available for 3 months
SOX: Retain for 7 years
HIPAA: Retain for 6 years
Compression:
Enable Recording Compression: Yes
Compression Level: Medium (balance storage vs. quality)
よりきめ細かな制御のために、セーフごとの記録ポリシーを構成します:
Safe: Production-Servers-Admin
Record all sessions: Yes
Safe: Development-Servers
Record all sessions: No (optional for non-production)
Safe: Third-Party-Vendor-Access
Record all sessions: Yes
Enable real-time monitoring: Yes
Require dual authorization: Yes
ステップ 4:リアルタイムセッション監視を有効にする
SOC アナリスト向けにライブセッション監視を構成します:
PVWA > Monitoring > Privileged Session Monitoring
Live Monitoring Dashboard:
- Active Sessions: Shows all current privileged sessions in real-time
- Session Details: User, target, duration, risk score
- Actions Available:
- Watch: View the session in real-time (read-only)
- Suspend: Temporarily freeze the session
- Terminate: Immediately end the session
Configure monitoring alerts in CyberArk Privileged Threat Analytics (PTA):
PTA > Configuration > Security Events
Rule: High-Risk Command Detected
Trigger: Unix command matches pattern
Patterns:
- rm -rf /
- chmod 777
- iptables -F
- useradd
- passwd root
- dd if=/dev/
- wget http* | sh
- curl * | bash
- nc -e /bin/sh
- python -c 'import socket,subprocess'
Action: Alert SOC + Flag session as high-risk
Rule: Credential Access Attempt
Trigger: Windows process matches
Patterns:
- mimikatz.exe
- procdump.exe targeting lsass
- ntdsutil.exe
- secretsdump
Action: Terminate session + Alert SOC + Lock account
Rule: Unusual Session Duration
Trigger: Session duration exceeds 4 hours
Action: Alert SOC for review
ステップ 5:セッションレビューワークフローを構成する
監査担当者向けにセッション終了後のレビュープロセスを設定します:
PVWA > Recordings > Search and Review
Search Filters:
- Date range
- Target server
- User who initiated the session
- Safe name
- Session risk score (from PTA)
- Session duration
Review Workflow:
1. Auditor opens recorded session in PVWA HTML5 player
2. Video playback with timeline scrubbing
3. Keystroke transcript displayed alongside video
4. Window title log shows which applications were opened
5. Risk events are highlighted on the timeline with markers
6. Auditor marks session as: Reviewed-OK, Reviewed-Suspicious, or Requires-Investigation
Fast-Forward Features:
- Jump to keystrokes (skip idle time)
- Jump to risk events (flagged by PTA)
- Text search within keystroke transcript
- Filter by window title changes
ステップ 6:オープンソースの代替手段 — セッション記録のための Teleport
CyberArk を使用しない環境では、Teleport が SSH、RDP、Kubernetes 向けのセッション記録を提供します:
# /etc/teleport.yaml - Session recording configuration
teleport:
nodename: teleport-proxy.corp.internal
data_dir: /var/lib/teleport
auth_service:
enabled: yes
session_recording: "node-sync" # Record at the node level, sync to auth server
# Session recording storage (S3 for production)
audit_sessions_uri: "s3://teleport-session-recordings/sessions?region=us-east-1"
# Enhanced session recording (captures commands even in nested shells)
enhanced_recording:
enabled: true
command_events: true
network_events: true
disk_events: true
ssh_service:
enabled: yes
enhanced_recording:
enabled: true
proxy_service:
enabled: yes
web_listen_addr: 0.0.0.0:443
tsh で記録済みセッションを照会します:
# List recorded sessions
tsh recordings ls --from=2026-03-15 --to=2026-03-19
# Play back a specific session
tsh play <session-id>
# Export session events as JSON (for SIEM ingestion)
tsh recordings export <session-id> --format=json > session_events.json
# Search for sessions containing specific commands
tsh recordings ls --query='command == "rm -rf"'
ステップ 7:セッションメタデータを SIEM に転送する
セッションイベントとアラートを SIEM に送信し、他のセキュリティデータと相関させます:
CyberArk PTA Integration:
SIEM Connector: Syslog (CEF format) or REST API
Target: Splunk, Microsoft Sentinel, QRadar, or Elastic
Events Forwarded:
- Session start/stop with user, target, and duration
- High-risk command detection alerts
- Session termination events
- Failed connection attempts
- Dual-authorization requests and approvals/denials
Syslog Configuration (PTA):
PTA > Configuration > SIEM Integration
Protocol: TCP + TLS
Destination: siem.corp.internal:6514
Format: CEF (Common Event Format)
Example CEF Event:
CEF:0|CyberArk|PTA|12.6|HighRiskCommand|High Risk Command Detected|8|
src=10.1.5.42 suser=admin1 dhost=prod-db-01 cs1=rm -rf /var/log
cs2=PSM-SSH cs3=Production-Servers-Admin
主要な概念
| 用語 | 定義 |
|---|---|
| PSM (Privileged Session Manager) | プロキシ/ジャンプサーバーとして機能し、すべての特権セッションを映像とテキストの両形式で記録する CyberArk のコンポーネント |
| PSMP (PSM for SSH Proxy) | SSH、SCP、SFTP セッション専用の Linux ベースの PSM プロキシ |
| 接続コンポーネント (Connection Component) | PSM がクライアントアプリケーション(RDP、SSH、SSMS)を起動してターゲットシステムに接続する方法を定義する CyberArk の構成 |
| Privileged Threat Analytics (PTA) | 記録済みセッションに行動分析とリスクスコアリングを適用し、異常なアクティビティを検出する CyberArk のモジュール |
| デュアル認可 (Dual Authorization) | 特権セッションを確立する前に、2 人の認可されたユーザーによる承認を必要とするセキュリティ統制 |
| セッション分離 (Session Isolation) | 管理者がターゲットに直接接続することはなく、すべてのアクセスが PAM システム経由でプロキシされるアーキテクチャの原則 |
| キーストロークトランスクリプト (Keystroke Transcript) | 記録されたセッション中に入力されたすべてのキーストロークのテキストログで、監査およびフォレンジック目的で検索可能 |
| 保管 (Vaulting) | 特権認証情報を暗号化されたデジタル保管庫に格納し、エンドユーザーに決して露出しないようにすること |
検証
- 本番環境のターゲットへのすべての特権アクセスは PSM を経由します(直接の RDP/SSH はファイアウォールでブロックされています)
- セッション録画が暗号化と改ざん防止機能付きで Vault に保存されています
- SSH および RDP セッションのキーストロークログが取得され、検索可能になっています
- PTA ルールが高リスクのコマンドに対してアラートをトリガーします(無害なトリガーパターンでテストしてください)
- リアルタイム監視ダッシュボードに、正しいメタデータとともにアクティブなセッションが表示されます
- セッション録画が、タイムラインとログ付きで PVWA の HTML5 プレーヤーで正しく再生されます
- ストレージの見積もりが検証され、保持ポリシーがコンプライアンス要件に一致しています
- ベンダーおよび高リスクのターゲットへのアクセスには二重承認が適用されています
- セッションのメタデータとアラートが SIEM に転送され、正しく相関付けされています
- 監査担当者が PVWA インターフェースを通じてセッションを検索、確認、注釈付けできます
- 終了したセッションは、終了時点までの完全な録画を残します
コメント
Markdown 対応