Policy as Code Bot (PacBot) は、継続的なコンプライアンス監視、コンプライアンスレポート、クラウドのセキュリティ自動化のためのプラットフォームです。 PacBot では、セキュリティとコンプライアンスのポリシーがコードとして実装されます。 PacBot によって検出されたすべてのリソースは、これらのポリシーに対して評価され、ポリシーの適合性が評価されます。 PacBot 自動修正フレームワークは、事前定義されたアクションを実行することでポリシー違反に自動的に対応する機能を提供します。 PacBot には強力な視覚化機能が組み込まれており、コンプライアンスの簡略化されたビューを提供し、ポリシー違反の分析と修正を容易にします。 PacBot は、クラウドの構成ミスを管理するためのツールではなく、あらゆるドメインの継続的なコンプライアンスの監視とレポート作成に使用できる汎用プラットフォームです。
PacBot のプラグインベースのデータ取り込みアーキテクチャにより、複数のソースからデータを取り込むことができます。当社は、Qualys Vulnerability Assessment Platform、Bitbucket、TrendMicro Deep Security、Tripwire、Venafi Certificate Management、Redhat Satellite、Spacewalk、Active Directory、およびその他のいくつかのカスタム構築された内部ソリューションからデータを取得するためのプラグインを構築しました。私たちは、これらのプラグインやその他のツールもオープンソース化するよう取り組んでいます。これらのプラグインによって収集されたデータに基づいてルールを作成すると、クラウドの構成ミスだけでなくエコシステムの全体像を把握できます。たとえば、T-Mobile 内では、重大度 5 (CVSS スコア > 7) の脆弱性が 1 つ以上あるすべての EC2 インスタンスを非準拠としてマークするポリシーを実装しました。
評価 -> レポート -> 修復 -> 繰り返し
評価 -> レポート -> 修復 -> 繰り返しが PacBot の哲学です。 PacBot はリソースを検出し、コードとして実装されたポリシーに照らして評価します。すべてのポリシー違反は問題として記録されます。ポリシーで自動修正フックが使用できる場合は常に、リソースが評価に失敗したときにそれらの自動修正が実行されます。ポリシー違反は手動で解決できません。問題はソースで修正する必要があり、PacBot は次回のスキャンで解決済みとしてマークします。ポリシー違反には例外を追加できます。スティッキー例外 (リソース属性一致基準に基づく例外) を追加して、将来作成される可能性のある同様のリソースを除外できます。
PacBot の資産グループは、コンプライアンスを視覚化する強力な方法です。アセット グループは、1 つ以上のターゲット リソースの属性一致基準を定義することによって作成されます。たとえば、属性「instancestate.name=running」を持つすべての EC2 インスタンスと一致する条件を定義することで、実行中のすべてのアセットのアセット グループを作成できます。アセット グループの作成後に起動された新しい EC2 インスタンスは、自動的にグループに含まれます。 PacBot UI では、ポータルのスコープを特定のアセット グループに選択できます。 PacBot ポータルに表示されるすべてのデータ ポイントは、選択したアセット グループに限定されます。クラウドを使用しているチームは、ポータルの範囲をアプリケーションまたは組織に設定し、ポリシー違反のみに焦点を当てることができます。これによりノイズが軽減され、クラウド ユーザーに鮮明な画像が提供されます。 T-Mobile では、利害関係者ごと、アプリケーションごと、AWS アカウントごと、環境ごとなどにアセット グループを作成します。
アセット グループを使用して、ルール実行の範囲を定義することもできます。 PacBot ポリシーは 1 つ以上のルールとして実装されます。これらのルールは、すべてのリソースまたは特定のアセット グループに対して実行するように構成できます。ルールは、ルールのスコープとして構成されたアセット グループ内のすべてのリソースを評価します。これにより、アプリケーションまたは組織に非常に固有のポリシーを作成する機会が提供されます。たとえば、一部のチームは、クラウド全体に設定されているグローバル標準とは別に、追加のタグ付け標準を強制したいと考えています。カスタム ルールを使用してこのようなポリシーを実装し、これらのルールを自分の資産に対してのみ実行するように構成できます。
PacBot インストーラーは、これらすべてのサービスを自動的に起動して構成します。インストールの詳細な手順については、インストールに関するドキュメントを参照してください。
詳しいインストール手順はこちらからご覧いただけます
インストーラーは、インストール手順に記載されている必要な AWS サービスを起動します。インストールが成功したら、UI ロード バランサーの URL を開きます。インストール中に指定された資格情報を使用してアプリケーションにログインします。ポリシー評価の結果は 1 時間以内に入力され始めます。少なくとも 2 つのデータ ポイントがある場合、トレンドライン ウィジェットが設定されます。
PacBot をインストールする場合、インストール先の AWS アカウントがベース アカウントになります。ベースアカウントにインストールされた PacBot は、他のターゲット AWS アカウントを監視できます。 PacBot に新しいアカウントを追加するには、こちらの手順を参照してください。デフォルトでは、基本アカウントは PacBot によって監視されます。
管理者ユーザーとしてログインし、トップメニューから管理者ページに移動します。 「管理者」セクションでは、次のことができます。
管理機能の使用方法については、スクリーンショット付きの詳細な手順をこちらでご覧ください。
Wikiはこちらです。
PacBot の紹介
PacBot は、Apache 2.0 ライセンスのセクション 7 の条件に基づいてオープンソースであり、いかなる種類の保証や条件もなく現状のままリリースされます。