5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ZOZOAdvent Calendar 2021

Day 18

Cloud IDSがGAになったので、導入してみる

Posted at

今月にCloud IDSというフルマネージドなIDSがGCPで利用できるようになりました。
試しに導入してみたので、その手順をメモしておきます。

Cloud IDSとは

Cloud IDSとはGCPが提供しているフルマネージドなIDS(侵入検知システム)です。
VPCネットワーク内の通信を監視し、セキュリティリスクを発見してくれます。
通信の監視のためにVPCのPacket Mirroring機能を使用しています。
この機能はSDNのレイヤーで機能するため、VPC内で動いている個々のVMやコンテナに対する設定は不要です。

また、IDSそのものはPalo Altoのものが使われており、検知可能なシグネチャはPalo Altoのページで確認できます。

設定してみた

Private service accessの設定

最初にPrivate service accessを設定します。

Cloud IDSはIDSとして動作するVMがGoogle管理のVPCに立ち上がり、そのVPCとVPC Peeringすることによって動作します。
そのため、その設定を最初に行います。

Google管理のVPCのCIDR範囲を指定します。
Cloud SQLなどでも初回構築時に同様のことをしている場合があります。
その場合はこのコマンドは不要です。

gcloud compute addresses create <CIDRレンジ予約名> \
  --global \
  --purpose=VPC_PEERING \
  --addresses=<Googleに払い出すCIDRのネットワークアドレス> \
  --prefix-length=<Googleに払い出すCIDRのサブネットマスク> \
  --network=<VPCネットワークID>

次にVPC Peeringを設定します。

gcloud services vpc-peerings connect \
  --service=servicenetworking.googleapis.com \
  --ranges=<CIDRレンジ予約名> \
  --network=<VPCネットワークID> \
  --project=<プロジェクトID>

Cloud IDSのエンドポイントの作成

gcloud ids endpoints create <エンドポイント名> /
  --network=<VPCネットワーク名> /
  --zone=<IDSを配置するゾーン> /
  --severity=<INFORMATIONAL|LOW|MEDIUM|HIGH|CRITICAL>

IDSを配置するゾーンは監視したいVMが配置されているゾーンと同一ゾーンに設定します。
VPCのルーティングモードがグローバルならば、別ゾーンにも配置できそうな気もしますが、未検証です。
また、現状ではエンドポイントを作成後にseverityオプションを変更することができないので、注意が必要です。
エンドポイントの作成は数分〜数十分で完了します。
完了後に以下のコマンドを実行し、endpointForwardingRuleに表示されているURLをメモしておきます。

gcloud ids endpoints describe --zone=<IDSを配置したゾーン> <エンドポイント名>

Packet Mirroringの設定

最後にPacket Mirroringを設定してVPC内に流れるパケットをCloud IDSにも流すようにします。

gcloud compute packet-mirrorings create <ポリシー名> \
--region=<リージョン> --collector-ilb=<さっきメモしたendpointForwardingRule> \
--network=<VPCネットワーク名> --mirrored-subnets=<監視したいVMが配置されているサブネット>

Packet Mirringには他にも多くのオプションがあるので、それによって柔軟に監視対象を設定することもできます。
例えば、mirrored-tagsオプションを使うことで、特定のタグがついているVMのみを監視対象にすることもできます。

設定の確認

Cloud IDSの設定が完了したので、正常に通信を監視できているかどうかを確認してみます。
今回は監視対象のVMの中で以下のコマンドを実行してみました。

curl http://example.com/cgi-bin/../../../..//bin/cat%%20/etc/passwd

その結果、Cloud IDSの画面でこのように表示され、脅威検知ができていることが分かりました。

スクリーンショット_2021-12-18_13_38_10.png

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?