AWSのSecurity Hubについてまとめています。
AWS Security Hubでセキュリティチェック自動化とセキュリティアラートを集約
AWS Security Hubは、セキュリティのベストプラクティスからの逸脱を1クリックで検出するサービス。AWSやパートナーサービスからのセキュリティ検出結果を標準化されたデータ形式で自動的に集約し、自動修復を可能にします。
関連)AWS Security Hub(統合されたセキュリティ & コンプライアンスセンター)| AWS
AWS Security Hubは現在のセキュリティの状態が、セキュリティ標準やベストプラクティスに準拠しているかどうかを把握するためのツールです。AWS Security Hubは多くのAWSサービスと連携して動作します。
- AWS Config リソースのインベントリと変更の追跡
- Amazon GuardDuty マネージド型脅威検出サービス
- Amazon Inspector アプリのセキュリティとコンプライアンスの改善サポート
- Amazon Macie 機械学習による機密データの検出、分類、保護
- AWS IAM Access Analyzer アクセスの安全性を分析
- AWS Fire Wall Manager ファイアウォールルールの一元管理
上記サービスの情報を、統一されたフォーマットで検出結果として集約し、Security Hubコンソールで確認できます。各ツールを順に開いたりしなくても、一箇所でセキュリティ全般の検出結果が確認できる点がポイントです。
AWS Security Hubの使い方
AWS Security Hubは、AWSマネジメントコンソールから開くことができます。
【関連記事】
▶AWSを集中管理したい!AWS マネジメントコンソールを使いこなそう!
検索窓に「Security」と入力し、検索結果の「Security Hub」をクリックします。
AWS Security Hubの管理画面が表示されるので「Security Hubに移動」をクリックします。
AWS Security Hubの有効化画面が表示されます。
AWS Security Hubを使用するには、AWS Configにて、リソースの記録を有効にする必要があります。
【関連記事】
▶AWS Configは、AWSリソースの変更モニタリングと監視機能 SQLで状態取得が可能
セキュリティ基準を選択して、「Security Hubの有効化」をクリックします。2021年現在、以下の3つのセキュリティ基準が選べるようになっています。デフォルトでは、AWS 基礎セキュリティのベストプラクティスと、CIS AWS Foundations Benchmarkにチェックがついています。
- AWS 基礎セキュリティのベストプラクティス V1.0.0
- CIS AWS Foundations Benchmark v1.2.0
- PCI DSS V3.2.1
Secrity Hubを有効化すると、以下のような画面になります。全体のセキュリティチェックの結果が、セキュリティスコアとして最大100%という数値で表示されるんですね。セキュリティ対応をして、セキュリティスコアを上げ、100%に近づけていくことで、システムのセキュリティを向上させていきます。
画面左のナビゲーションペインから、「セキュリティ基準」をクリックすると、各セキュリティ基準ごとのセキュリティスコアを表示することができます。
画面左のナビゲーションペインから、「インサイト」をクリックすると、特定の条件でフィルタした検出結果を表示することができます。
「インサイト」には、デフォルトで以下のようなものが用意されています。
- 最も検出結果の多い AWS リソース
- パブリックの書き込みまたは読み取り権限を持つ S3 バケット
- 最も多くの検出結果を生み出している AMI
- 既知の戦術、技術、および手順 (TTP) に関与する EC2 インスタンス
- 疑わしいアクセスキーアクティビティがある AWS プリンシパル
- セキュリティ基準/ベストプラクティスを満たしていない AWS リソースインスタンス
- データ漏洩の可能性がある AWS リソース
- 不正なリソース消費に関連する AWS リソース
- セキュリティ基準/ベストプラクティスを満たしていない S3 バケット
- 機密データを含む S3 バケット
- 漏洩した可能性がある認証情報
- 重要な脆弱性に対するセキュリティパッチが欠けている EC2 インスタンス
- 一般的な異常動作をする EC2 インスタンス
- インターネットからアクセス可能なポートがある EC2 インスタンス
- セキュリティ基準/ベストプラクティスを満たしていない EC2 インスタンス
- インターネットに公開されている EC2 インスタンス
- 敵対的偵察に関連する EC2 インスタンス
- マルウェアに関連付けられている AWS リソース
「インサイトを作成する」独自に作成することも可能です。「フィルターを追加」の箇所にフィルタ条件を入力して、インサイトを追加します。
「検出結果」では、セキュリティステータスの検出結果一覧を確認できます。
セキュリティステータスとして以下の項目が表示されます。
- 重要度
- ワークフローのステータス
- レコードの状態
- リージョン
- 会社
- 製品
- タイトル
- リソース
- コンプライアンスのステータス
- 更新日時
「タイトル」のリンクをクリックすると、各検出情報の詳細が表示されます。
上記の検出結果には、「API呼び出しのリアルタイムモニタリングは、CloudTrailログをCloudWatchログに送信し、対応するメトリックスフィルターとアラームを確立することで実現できます。 S3バケットポリシーの変更には、メトリックフィルタとアラームを設定することをお勧めします。」と表示されています。原文のメッセージは以下の通りです。
Real-time monitoring of API calls can be achieved by directing CloudTrail Logs to CloudWatch Logs and establishing corresponding metric filters and alarms. It is recommended that a metric filter and alarm be established for changes to S3 bucket policies.
セキュリティの検出結果を自動修復
セキュリティの検出結果の自動修復は、AWS CloudWatchとの連携で可能です。
Security Hubの左のナビゲーションペインから「設定」をクリックし、「カスタムアクション」にて、特定の検出結果をCloudWatch Eventsに送信することで、Cloud Watchで修復作業をトリガーすることができるんですね。
【関連記事】
▶AWS CloudWatchで各種サービスを監視しよう!
AWS Security Hubの料金
AWS Security Hubは、セキュリティチェックと検出結果の取り込みに対して課金されます。米国東部(オハイオ)リージョンの場合の料金は以下の通りです。
- セキュリティチェック 料金
- チェック/アカウント/リージョン/月あたり最初の 10 万回 = 0.0010USD/チェック
- チェック/アカウント/リージョン/月あたり次の 40 万回 = 0.0008USD/チェック
- チェック/アカウント/リージョン/月あたり 50 万回を超える場合 = 0.0005USD/チェック
- 調査結果の取り込み
- Security Hub のセキュリティチェックに関連する、検出結果の取り込み = 無料
- イベント/アカウント/リージョン/月あたり最初の 1 万回 = 無料
- イベント/アカウント/リージョン/月あたり 1 万回を超える場合 = 0.00003USD/イベント
例えば、月のセキュリティチェックが250回、検索結果の取り込みが5,000回の中小規模の組織の場合、一ヶ月あたりのコストは以下のようになります。
- 250 × 1 リージョン × 1 チェックあたり 0.0010 USD (最初の 100,000 回チェック枠) = 0.25 USD
- 5,000 回の検出結果の取り込み = 5,000 × 1 リージョン × 1 イベントあたり 0.00 USD (最初の 10,000 イベントは無料利用枠)
- 1 か月当たりの総コスト = 0.25 USD
AWS Security Hubのまとめ
- AWS Security Hubは、AWSのセキュリティの状態を検出し、一元管理するサービス
- 各AWSサービスと連携し、同一フォーマットで検出結果を一覧できる
- AWS Security Hubの料金はセキュリティチェックと検出結果取り込みの回数に課金される