メインコンテンツまでスキップ

CIS AWS/Google Cloud Foundations Benchmark に対する解説・検査の拡充

· 約7分
Takashi Yoneuchi
CTO @ GMO Flatt Security Inc.

Shisho Cloud における CIS AWS/Google Cloud Foundations Benchmark に関連して提供している解説・検査ルールを拡充しました。 これにより Shisho Cloud 上で、より広い範囲の AWS/Google Cloud 上のリソースのセキュリティ様態を、より広い観点で評価していただけます。

eyecatch

拡充の概要​

今回の拡充により、以下のベンチマークに記載のある項目のうち、自動化が可能な項目全て に対して Rego によるマネージド検査ルール・Flatt Security による解説がご利用いただけるようになりました:

  • CIS AWS Foundations Benchmark v1.5.0
  • CIS Google Cloud Foundations Benchmark v1.3.0
info

同ベンチマークの最新版は現在以下です:

  • CIS AWS Foundations Benchmark v2.0.0
  • CIS Google Cloud Foundations Benchmark v2.0.0

バージョン間で削除されずに残っている項目のうち、Manual と Audomated の分類の変化や、Profile Applicability の変化のみを有するものは、既に今回の更新において変更を一部適用しております。 また数点ほど存在する追加項目に関しても、Shisho Cloud 上でのマネージド検査ルールや解説の提供を順次進めてまいります。

Findings

利用開始方法​

Shisho Cloud を新しく利用したい場合​

ご関心をお寄せ頂きありがとうございます!Shisho Cloud 公式ページ からお問い合わせください。 直ちに Shisho Cloud の無料トライアルの開始手順をご案内いたします。

既存の Shisho Cloud 組織での適用​

既に Shisho Cloud を利用している 全てのお客様 が、以下の手順で拡充されたポリシーを利用できます:

  1. Shisho Cloud とクラウド間の連携を更新する
  2. Shisho Cloud に新規ワークフローを追加する
  3. ワークフローを GitHub リポジトリに追加する (オプショナル)

(1) 連携の更新​

以下のガイドを確認し、Shisho Cloud と AWS/Google Cloud 間の連携を更新してください。

既に連携用のサービスアカウントを作成している場合、Google Cloud 連携に関して、Shisho Cloud 側で変更すべき設定は基本的にありません。 また、サービスアカウントを再作成する必要もありません。

しかし、連携用サービスアカウントが存在するプロジェクトにおいて、一部の Google Cloud API を有効化する必要があります。 以下のコマンドや、Google Cloud 連携のチュートリアル 中に記載のある Terraform コード片により、必要な API を全て有効化できますから、これを 必ず 実行してください:

gcloud services enable \
bigquery.googleapis.com \
cloudasset.googleapis.com \
cloudkms.googleapis.com \
cloudresourcemanager.googleapis.com \
compute.googleapis.com \
container.googleapis.com \
dns.googleapis.com \
essentialcontacts.googleapis.com \
logging.googleapis.com \
iamcredentials.googleapis.com \
iam.googleapis.com \
pubsub.googleapis.com \
serviceusage.googleapis.com \
storage-component.googleapis.com \
sqladmin.googleapis.com \
--project "$PROJECT_ID"

(2) 更新後のワークフローの適用​

以下の手順で最新のワークフローを適用できます:

danger

以下の手順では Shisho Cloud 上に登録されたワークフローを上書きします。 Shisho Cloud 上でパラメータの設定をしている場合や、Rego ポリシーを変更している場合は、以下のコマンドにより 必ず 既存の Shisho Cloud マニフェストのバックアップを取得してください:

SHISHO_ORG_ID="自分の Shisho Cloud 組織 ID"
shishoctl workflow export --structured --org "$SHISHO_ORG_ID" --path .

なお現在 Shisho Cloud 上でのワークフローのバージョニング機能の提供も検討してしています。 また意図せずにワークフローを上書きしてしまい、ワークフローに対するパラメータの設定が失われた場合は、Flatt Security サポートにお問い合わせください。

info

shishoctl コマンドを利用したことがない場合は、チュートリアル を参照し、設定を行ってください。

SHISHO_ORG_ID="自分の Shisho Cloud 組織 ID"

# 最新のワークフローを取得する
git clone https://github.com/flatt-security/shisho-cloud-managed-workflows
cd ./shisho-cloud-managed-workflows

# CIS AWS Foundations Benchmark v1.5.0 に対応するポリシーを $SHISHO_ORG 組織に適用する
shishoctl workflow apply --org "$SHISHO_ORG_ID" -f ./workflows/cis-benchmark/aws-v1.5.0

# CIS Google Cloud Foundations Benchmark v1.3.0 に対応するポリシーを $SHISHO_ORG 組織に適用する
shishoctl workflow apply --org "$SHISHO_ORG_ID" -f ./workflows/cis-benchmark/googlecloud-v1.3.0

(3) 自組織の GitHub リポジトリへの取り込み​

GitHub Actions に関するチュートリアル に記載の手順でポリシーコードを格納したリポジトリを作成した場合は、上記手順で Shisho Cloud 上のワークフローを更新した後に、以下の手順を実施してください:

SHISHO_ORG_ID="自分の Shisho Cloud 組織 ID"

# 自組織の GitHub リポジトリを習得する
git clone <GitHub リポジトリの URL> ./repo
cd ./repo

# 改めて更新後のワークフローを Shisho Cloud からエクスポートする
shishoctl workflow export --structured --org "$SHISHO_ORG_ID" --path .

# 差分をレビューする
git diff

# ... 変更を取り込むか判断し、コミット・プッシュする

flatt-security/shisho-cloud-managed-workflows を fork して作成した場合は、同リポジトリの最新のブランチをマージし、差分を取り込んでください。