「AWSアカウントセキュリティ(セキュアアカウント) 入門セミナー ~面倒な設定はクラスメソッドにお任せ!~」というタイトルで登壇しました

弊社メンバーズサービスの「セキュアアカウント」サービスにご興味を持たれているものの、「セキュアアカウントはどういうメリットがあるの?」「始め方がわからない」といった疑問点がある方に必見の記事となります。
2023.09.23

こんにちは!AWS事業本部カスタマーソリューション部のこーへいです。

本記事では、8月より月次(終了時期未定)で開催しているAWSアカウントセキュリティ(セキュアアカウント)入門セミナーの資料の共有と解説を行います!

本セミナーはメンバーズのお客様向けに開催しているものですが、より多くの方にセキュアアカウントサービスの魅力や始め方をお届けしたく、ブログ執筆することにしました。

資料

はじめに

セキュアアカウントご利用におすすめな環境とは

  • 何かしらのAWSアカウントのセキュリティ対策が必要と考えている
  • セキュリティ対策何したら良いか分からない
  • コストも対応負担も最小限で効率よく始めたい

→そんな方(環境)にセキュアアカウントが刺さる!

セキュアアカウントの概要とメリット

セキュアアカウントとは

セキュアアカウントとは、AWSが推奨するセキュリティベストプラクティスな設定をAWSアカウントに適用いただけるサービスです。

クラスメソッドメンバーズご加入のお客様全てにご利用いただけ、AWSアカウントに対するセキュリティ対策をお手軽に実装できます。

具体的なサービスメリットのイメージは次の「想定インシデント」でお話しします。

想定インシデント

今回想定するインシデントのシナリオは、自社の作業者がMFA未設定のIAMユーザーアカウントを利用していた状況から始まります。

攻撃者は、作業者のIAMユーザーアカウントにMFAが登録されていないことに目をつけ、ブルートフォース攻撃(パスワード総当たり攻撃)を仕掛けました。

ブルートフォース攻撃で無事にAWSアカウントにログインした攻撃者は、次にコインマイニング用のハイスペックEC2インスタンスを何台も立てていきます。

このように攻撃者も人のお金で仮想通貨をマイニングできるため、攻撃者の笑顔が思わずこぼれます。

今回は不運なことに1ヶ月後、アカウント利用費が請求されるタイミングで不正利用の事実が発覚しました。

1ヶ月間不正利用に気づかない状況では、不正利用費が数千万以上になるケースもあります。

ちなみに実際に似たようなインシデントが発生した際の1時間あたりの被害額が約500$だった例があり、仮に1ヶ月間放置した状態だと360000$、ドル円レート約150円で計算すると5400万円の被害が発生してしまいます。

インシデントに対するセキュアアカウントの有効性

不正アクセスからのコインマイニング被害に対して、セキュアアカウントを利用した場合の有効性はいかがでしょうか。

上記の図は、先ほどの想定インシデントに対してセキュアアカウントが「事前防止」「発見」「調査」の各フェーズでの有効性を示している様子です。

一連の出来事に対して、各フェーズでセキュアアカウントが働くことで簡単に突破されない、被害が拡大し辛い仕組みとなっていることがわかります。

  • 事前防止
    • Security HubはIAMユーザーにMFAが登録されていないことを検知します。検知が上がったタイミングでMFAを登録すれば今回のような被害は発生しませんでした
  • 発見
    • GuardDutyが不正ログインやコインマイニングの挙動を検知します。このタイミングで気づくことができれば被害をもっと抑えられていました
  • 調査
    • 主にGuardDutyやDetectiveが活躍してくれます。攻撃者の動き(アカウント操作や構築リソースなど)を調べましょう。
  • 対応

全体図の紹介

セキュアアカウントではAWSアカウントに、下記の設定が施されています。

  • セキュリティサービス有効化+チューニング機能のブロック
    • アカウント内の脅威を検知する、セキュアアカウントの核となるサービス群
    • Security Hubはアカウント内の危険設定を検知するサービス
      • 例として、MFA未設定やS3バケットが外部公開されている場合に検知
    • GuardDutyはアカウント内に発生した怪しい挙動を検知するサービス
      • 例として、コインマイニングや、世界中からの複数の正常なAWSアカウントのログインを検出した場合(パスワードが流出し、不正アクセスを受けている可能性があるため)に検知
    • Detecitiveは、GuardDutyで検知された脅威に関連するアクティビティ(通信ログや操作ログ)を分かりやすく確認できるサービス
      • 発生した脅威に対する調査の手間を大幅に削減
    • IAM Access Analyzerは、IAMロール等が外部リソースからアクセスできる状態になっている場合、その状態を検知するサービス

  • セキュリティアラート整形、通知設定機能のブロック
    • 「セキュリティサービス有効化+チューニング機能」のブロックで紹介した「Security Hub」「GuardDuty」「IAM Access Analyzer」の検知をメールやSlackに通知出来るようにするもの
      • セキュアアカウントサービスを有効化後に、セキュアアカウントご利用者のメールアドレス登録作業を実施することでメール等に通知されるようになる
      • アカウント内で検知が上がるだけでは発見が遅れてしまう可能性が高いため必ず設定しましょう
      • 設定手順はこちら

  • AWS上の証跡を管理する機能のブロック
    • AWSアカウント内の各種記録を管理するサービス群
    • CloudTrailはアカウント内の操作を記録するサービス
      • 例として、アカウント内のリソースが意図せず削除された場合に、アカウント内で誰がどのような操作が行っていたか調べることが可能
    • ConfigはAWSリソースを記録するサービス
      • 例として、意図しないEC2の設定が変更された場合に、その設定変更履歴を調べることが可能
    • それらの記録情報をログとしてS3バケットに暗号化した状態で保存

  • アカウント内初期の危険設定の是正ブロック
    • AWSアカウント初期の一部デフォルト設定をAWSが推奨する設定に是正する
    • パスワードポリシー強化
      • IAMユーザーのパスワードポリシーを強化
    • デフォルトVPC削除
      • アカウント発行時に作成されているデフォルトのVPCを削除。これはデフォルトVPCをシステム構築に利用した場合、意図していない設定によりサーバー等が外部に晒されてしまう可能性を防ぐため
    • EBSのデフォルト暗号化
      • EBSをデフォルトで暗号化するように設定
    • デフォルトのS3公開防止
      • AWSアカウントレベルでのブロックパブリックアクセスを有効化することで、デフォルト状態では外部にS3バケットが公開されないようにする

各設定の詳細は下記記事やクラスメソッドメンバーズ サービス仕様書をご参照ください。

料金について

  • 前提
    • 「セキュアアカウント」サービス利用においては、GuardDutyなど各種AWSサービス利用費のみ頂戴致します。
    • クラスメソッドへ支払う設定手数料等の諸費用はいただきません。
  • AWSサービス利用費は以下に依存
    • Amazon GuardDutyとAmazon Detective
    • AWS内の操作回数
    • VPC内のトラフィック量
    • Route53による名前解決の回数
    • etc
  • AWS Config と AWS Security Hub
    • AWSリソースの構築や設定変更の回数
    • etc
  • 実際にかかる料金
    • アカウント内全体利用費の数%程度の追加が目安となります
    • AWSアカウントの操作や利用がほとんどない状態でも毎月$5〜$15程度発生します

セキュアアカウントの始め方

セキュアアカウントには図のように「初期導入」「設定維持」機能がございます。

初期導入機能

「初期導入」機能は、セキュリティベストプラクティスを施した状態で、新規AWSアカウント発行できる機能となります。

※初期導入機能は現在組織管理プランに対応しておりません

セキュアアカウント適用の新規AWSアカウントを発行される場合は下記手順を実施してください。

1.クラスメソッドメンバーズサービスにて新規AWSアカウントをこちらのフォームから申し込む

2.途中、アカウント情報の入力ページに辿り着くので、契約種別を「新規」にし、セキュリティ設定オプションを「セキュア」にする

セキュアアカウントとベーシックアカウントどちらを選択するべきですか?

Q.セキュアアカウントとベーシックアカウントどちらを選択するべきですか?

お客様のアカウント運用方法のご希望により、異なるタイプをおすすめしております。

・セキュアアカウント

AWSアカウントのセキュリティ対策として何を行えばよいか不明、あるいはお客様ご自身での設計・設定の工数を削減したい場合、セキュアアカウントの選択をおすすめいたたします。

AWSのベストプラクティスに沿った推奨設定を適用した状態にてAWSアカウントを発行します。

・ベーシックアカウント

AWSアカウント発行後、お客様ご自身で適用するセキュリティ対策が決まっている場合、ベーシックアカウントの選択をお勧めします。

お客様がセキュリティ対策を実施する前提の最小設定の状態にてAWSアカウントを発行します。

その他、セキュアアカウントのFAQはこちらをご確認ください(メンバーズのログインが必要になります)。

設定維持機能

「設定維持」機能は、発行済みのアカウントや、クラスメソッドメンバーズにて「初期導入」機能に対応していないプランをご利用する場合に、先ほどご紹介した「初期導入」機能を後付けで再現・維持するサービスとなります。

  • 設定維持機能について
    • メンバーズポータルサイトから設定可能
    • 設定維持機能を有効化すると、毎週土曜日にメンテナンスが実施されAWSアカウントに内容が反映される
    • 設定維持機能により、発行済みアカウントに対しても初期導入機能の設定再現が可能
      • 必要な設定のみ有効化するなど、より柔軟に設定することも可能
    • 初期導入機能ご利用の場合は、設定維持機能も有効化済み

既にお持ちのAWSアカウントにセキュアアカウントを適用される場合はこれから説明する手順を実施してください。

1.メンバーズポータルにアクセスし、ナビゲーションバーの「AWSアカウント」をクリック

2.設定対象のAWSアカウントを選択

3.メンバーズサービス設定をクリック

4.セキュリティ設定を選択

5.対象の設定を有効化し、保存

設定項目がたくさんありますが、例としてGuardDutyを有効化したい場合は上図の設定にて保存してください。

このように、「設定維持」機能では各種設定ごとに有効化・無効化を選択できますので、お客様の環境により柔軟にカスタマイズすることが可能です。

発行済みアカウントに完全なセキュアアカウントを適用したい場合

設定維持機能にて、初期導入機能と同等のセキュアアカウントを再現する場合は下記の設定にて保存します。

既存のAWSリソースに影響を与える可能性がございますので、クラスメソッドメンバーズ サービス仕様書にて構築されるリソースパラメータをご確認いただき、ご利用をお願いします。

セキュアアカウントを始めたら

セキュアアカウントご利用開始後、以下の作業を実施していただく必要があります。

セキュアアカウントの運用について

まとめ

セキュアアカウントはクラスメソッドが長年に渡り培ってきたセキュリティベストプラクティスを詰め込んだサービスです!

AWSアカウントのセキュリティ対策にお困りの方はセキュアアカウントを導入し、様々な脅威からアカウントを保護しましょう!

参考