deploying-software-defined-perimeter について
Software-Defined Perimeter の導入と検証を支援するセキュリティスキルです。CSA SDP の構成要素やアクセス制御、ゼロトラストの検証を扱います。
主な機能
- 01CSA SDP の導入手順
- 02SPA と mTLS の設定
- 03コントローラーとゲートウェイの構成
- 04アクセス ポリシーの設計
- 05NIST ゼロトラスト検証
活用シーン
- 01SDP 導入の計画
- 02ゲートウェイのアクセス制御設定
- 03ゼロトラスト導入要件の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill deploying-software-defined-perimeterインストール後、Claude Code で/deploying-software-defined-perimeterを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSEassets/template.mdreferences/api-reference.mdstandards.mdworkflows.mdscripts/agent.pyprocess.py詳細
Software-Defined Perimeter のデプロイ
前提条件
- ゼロトラストの原則(NIST SP 800-207)の理解
- CSA Software-Defined Perimeter 仕様の知識
- PKI および相互 TLS 認証の理解
- ネットワークセキュリティアーキテクチャの経験
概要
Software-Defined Perimeter(SDP)は、個々のリソースの周囲に動的にプロビジョニングされる、ID 中心のperimeterを作成することでゼロトラストを実現します。Cloud Security Alliance(CSA)によって定義されたSDPは、認証と認可が完了するまでサービスを隠す「ダーククラウド」アプローチにより、アプリケーションインフラストラクチャを権限のないユーザーから見えない状態にします。従来のVPNとは異なり、SDPは検証済みのユーザーと特定のアプリケーションの間に1対1の暗号化接続を確立します。
このスキルでは、CSA v2.0 仕様を使用したSDPのデプロイ、Single Packet Authorization(SPA)の実装、SDPコントローラーとゲートウェイの設定、そしてNIST SP 800-207の要件に照らしたデプロイの検証について説明します。
使用するタイミング
- 環境においてSoftware Defined Perimeter機能をデプロイまたは設定する場合
- コンプライアンス要件に沿ったセキュリティ統制を確立する場合
- この分野のセキュリティアーキテクチャを構築または改善する場合
- この実装を必要とするセキュリティアセスメントを実施する場合
前提条件
- ゼロトラストアーキテクチャの概念とツールへの理解
- 安全な実行のためのテストまたはラボ環境へのアクセス
- 必要な依存関係がインストールされたPython 3.8以降
- テスト活動に対する適切な承認
アーキテクチャ
SDPコンポーネント(CSA仕様)
┌─────────────────────┐
│ SDP Controller │
│ - Authentication │
│ - Authorization │
│ - Policy management │
│ - Key management │
└──────────┬──────────┘
│
┌──────┴──────┐
│ │
v v
┌────────┐ ┌────────────┐
│ IH │ │ AH │
│(Client)│ │(Gateway) │
│ │ │ │
│ SPA │──│ Protected │
│ mTLS │ │ Resources │
└────────┘ └────────────┘
IH = Initiating Host (User Device)
AH = Accepting Host (Application Gateway)
SPA = Single Packet Authorization
SDPデプロイモデル
- クライアントからゲートウェイ: ユーザーデバイスがSDPゲートウェイを経由してバックエンドアプリケーションに接続します
- クライアントからサーバー: ユーザーとアプリケーションサーバー間の直接接続
- サーバーからサーバー: SDPを経由したワークロード間通信
- ゲートウェイからゲートウェイ: 従来のVPNトンネルを置き換えるサイト間接続
主要な概念
Single Packet Authorization(SPA)
SPAは、SDPゲートウェイがデフォルトですべてのTCP/UDPパケットを破棄するネットワークセキュリティの仕組みです。接続を確立する前に、暗号署名された単一のパケットを送信する必要があります。ゲートウェイはSPAパケットを検証し、その後にのみ認証済みセッション用の一時的なポートを開きます。これにより、ゲートウェイはポートスキャナーから見えなくなります。
相互TLS(mTLS)
SPAの検証後、クライアントとサーバーの双方がX.509証明書を使用して互いを認証します。この双方向認証により、中間者攻撃を防ぎ、両方のエンドポイントが検証されることを保証します。
動的プロビジョニング
SDP接続は、リアルタイムのポリシー評価に基づいてオンデマンドでプロビジョニングされます。永続的なネットワークトンネルは存在せず、各セッションは個別に認可され、暗号化されます。
ワークフロー
フェーズ1: SDPコントローラーのデプロイ
-
SDPコントローラーのデプロイ
- 堅牢で冗長化されたインフラストラクチャにSDPコントローラーをインストールする
- 証明書発行のためのPKI統合を設定する
- 認証バックエンド(LDAP、SAML、OIDC)を設定する
- アプリケーション定義を含むポリシーデータベースを設定する
- すべてのコントローラーの判断について監査ログを有効にする
-
認証の設定
- SAML 2.0またはOIDCを介してエンタープライズIdPと統合する
- デバイス証明書の登録(SCEP/EST)を設定する
- 多要素認証の要件を有効にする
- 証明書失効チェック(OCSP/CRL)を設定する
-
アクセスポリシーの定義
- ユーザー/グループを認可されたアプリケーションにマッピングする
- アプリケーションごとにデバイスのポスチャ要件を定義する
- 文脈条件(場所、時間、リスクレベル)を設定する
- セッション期間と再認証間隔を設定する
フェーズ 2: SDP ゲートウェイのデプロイ
-
受け入れホスト(ゲートウェイ)のデプロイ
- 保護対象アプリケーションの前段に SDP ゲートウェイインスタンスをインストールする
- デフォルトドロップのファイアウォールルール(すべての受信トラフィックを拒否)を設定する
- 指定したポートで SPA リスナーを有効にする
- コントローラーが発行した証明書で mTLS を設定する
- ヘルスモニタリングとフェイルオーバーを設定する
-
アプリケーション定義の設定
- 保護対象の各アプリケーションをコントローラーに登録する
- バックエンドサーバーの IP アドレス、ポート、プロトコルを定義する
- 複数インスタンスのアプリケーション向けにロードバランシングを設定する
- アプリケーションのヘルスチェックを設定する
フェーズ 3: クライアントのデプロイ
-
イニシエーティングホスト(クライアント)のデプロイ
- ユーザーのエンドポイントに SDP クライアントソフトウェアをインストールする
- 自動プロビジョニングを通じてデバイス証明書を登録する
- SPA 鍵素材の配布を設定する
- 認証フロー(SPA → mTLS → アプリケーションアクセス)をテストする
-
エンドツーエンドのフローの検証
- SPA パケットがゲートウェイで受理されることを確認する
- 有効な証明書で mTLS ハンドシェイクが成功することを確認する
- SDP トンネル経由でアプリケーションへのアクセスをテストする
- 未承認のアクセスがブロックされることを確認する(SPA がなければゲートウェイは不可視)
フェーズ 4: 運用検証
-
セキュリティテスト
- SDP ゲートウェイにポートスキャンを実行し、不可視であることを確認する(すべてのポートが filtered/closed と表示される)
- 有効な SPA なしで接続を試行する(失敗し、応答がないことを確認する)
- 失効したクライアント証明書でテストする(アクセスが拒否されること)
- 認可された 1 つのアプリケーションから、未認可のアプリケーションへの横方向移動を試行する
- 監査証跡の完全性を検証する
-
モニタリングと保守
- SDP コントローラーとゲートウェイのログを SIEM に統合するよう設定する
- SPA 試行の失敗や証明書エラーに対するアラートを設定する
- 証明書のローテーションスケジュールを策定する
- SDP イベントに対するインシデント対応手順を文書化する
検証チェックリスト
- HA と監査ログを備えた SDP コントローラーをデプロイ済み
- SAML/OIDC と MFA による IdP 連携をテスト済み
- デフォルトドロップのファイアウォールを備えた SDP ゲートウェイをデプロイ済み
- SPA の仕組みを検証済み(ポートスキャンに対してゲートウェイが不可視)
- クライアントとゲートウェイの間で mTLS を確立済み
- アクセスポリシーがユーザー/アプリケーションごとに最小権限を強制している
- デバイス証明書の登録を自動化済み
- 未承認のアクセス試行が静かにブロックされる
- アプリケーション間の横方向移動を防止済み
- ログが SIEM にストリーミングされ、アラートを設定済み
- 証明書のローテーションと失効の手順をテスト済み
参考文献
- CSA Software-Defined Perimeter Architecture Guide v3
- CSA SDP Specification v2.0
- NIST SP 800-207: Zero Trust Architecture
- CISA Zero Trust Maturity Model v2.0
- fwknop: Single Packet Authorization implementation