AWSセキュリティサービスで堅牢な城を築き、宝を守り抜け!!
はじめに
皆様、こんばんは。sanbongawaです。
今年はセキュリティの大切さをみんなに広めるそんな一年でした。
様々な知識レベルのお客様と会話することが多く、猛者たちにはコテンパンにされるような生活でした。
そんな私は今回、アーキテクトして面白くセキュリティで遊びたいと思います。
セキュリティはどうしてもみんなに敬遠されるのでキャラ付けで覚えてしまいましょう。
今回はできるだけセキュリティに嫌悪感が出ない方式としてます。
また宝である重要データに対するセキュリティやデータに対するリスク軽減はこの話では省きます。
HSMやKMS周りはわざと抜いてます。
テーマ
今回は、AWSのセキュリティサービスを、私たちの大切な資産を守る「城」に見立ててご紹介するブログです。
会社という名の城には、顧客データ、機密情報、そして日々の業務を支えるシステムという宝が眠っています。この宝を守り抜くためには、堅牢な城壁を築き、侵入者を防ぎ、内部の秩序を維持する必要があります。
AWSが提供する多様なセキュリティサービスは、まさにこの城を守るための様々な役割を担う兵士や防衛設備!!
本日は、まずAWSの主要なセキュリティサービスとその役割を一覧でご紹介し、その後、それぞれのサービスを城のどこに配置し、どのように連携させることで宝を守るのかを解説していきます。
第一章:城門を守る門番 - 侵入を防ぐ最前線
私たちの城の正面には、巨大な城壁や城門がそびえ立っています。これは、AWSのNetwork Firewallです。不正なアクセスや悪意のあるトラフィックが城内に入り込むのを水際で防ぎます。熟練の門番のように、通過するすべての通信を厳しくチェックし、不審な動きがあれば即座に遮断します。
城門の手前には、さらに用心深い警備兵が立っています。彼らは、AWSのWAF (Web Application Firewall) です。特にWebアプリケーションという名の門を狙う攻撃、例えばSQLインジェクションやクロスサイトスクリプティングなどを防ぎます。Webアプリケーションの脆弱性を悪用しようとする悪者を、門前払いをします。各攻撃手法毎に得意な警備兵が相手をします。
人が門の前に立てる幅に限りがあるようにWAFルールの上限は同様に考えることが必要です。
第二章:城内を見張る監視兵 - 異変を早期発見
城内には、常に目を光らせている監視兵たちがいます。彼らは、AWSのGuardDuty です。ネットワークのトラフィックログやDNSクエリ、AWSアカウントへのアクセスログなどを常に監視し、通常とは異なる不審なアクティビティを検知すると、すぐに報告してくれます。早期発見こそ、被害を最小限に抑えるための重要な鍵となります。
監視兵で監視するために監視兵が見ることができる範囲を考えて配置が必要です。
さらに、城の隅々まで目を配る隠密も存在します。これは、AWSのSecurity Hub です。様々なAWSサービスやサードパーティのセキュリティ検出結果を一元的に集約し、セキュリティ状況を包括的に把握させてくれます。まるで城全体の状況を俯瞰で見渡せる地図のような存在です。
第三章:宝物庫の鍵と警備 - 厳重なアクセス管理
城の中心には、最も大切な宝が保管されている宝物庫があります。この宝物庫へのアクセスは厳重に管理されなければなりません。
宝物庫の鍵を管理するのは、AWSのIAM (Identity and Access Management) です。誰がどの宝にアクセスできるのか、細かく権限を設定し、許可された者だけが宝物庫に入ることができます。多要素認証(MFA)という追加の鍵を用意することで、セキュリティをさらに高めることができます。
宝物庫の入り口には、屈強なガードマンが立っています。これは、AWSのSecrets Manager や Parameter Store (Secure String) です。データベースの認証情報やAPIキーなどの機密情報を安全に管理し、必要な時にのみアプリケーションに提供します。これにより、機密情報がコードや設定ファイルに直接埋め込まれるリスクを減らすことができます。
第四章:侵入後の追跡と対応 - 被害を最小限に
万が一、侵入者が城内に侵入してしまった場合に備え、追跡部隊も配備されています。これは、AWSのCloudTrail です。誰が、いつ、何をしたのかという操作ログを記録し、不正な操作があった場合の証拠となります。
また、緊急対応チームも待機しています。これは、AWSのIncident Manager です。セキュリティインシデントが発生した場合に、迅速かつ効率的に対応するためのワークフローを構築し、関係者への通知や状況の共有をスムーズに行います。
第五章:城の健康診断 - 脆弱性の発見と対策
定期的に城の健康診断を行うことも重要です。これは、AWSのInspector です。EC2インスタンスやコンテナイメージの脆弱性を自動的に評価し、セキュリティ上の弱点を見つけ出してくれます。
また、城の設計段階からセキュリティを考慮することも重要です。AWSのTrusted Advisor は、セキュリティだけでなく、コスト最適化、パフォーマンス、耐障害性など、AWS環境全体に関する推奨事項を提供してくれます。
まとめ
AWSのセキュリティサービスは、それぞれが異なる役割を担い、連携することで強固なセキュリティ体制を構築することができます。まるで、堅牢な城壁、警戒心の強い門番、常に目を光らせる監視兵、厳重に管理された宝物庫、そして迅速な対応部隊が一体となって、大切な宝を守り抜くように。
AWSのセキュリティアーキテクトする際にはこの順番で考えていただければ、設計が苦にならないと思いますので日本人ならまず城!!
今回ご紹介したサービス以外にも、AWSは様々なセキュリティサービスを提供しています。自社の環境や要件に合わせて適切なサービスを選択し、組み合わせることで、より強固で安全な「城」を築き上げてください。
番外編 現在と過去
戦国時代から現代に立ち返り、現在の攻撃における戦術と言えば、MITER ATT&CKでしょう。
今回紹介したサービスをMITER ATT&CKに合わせてみるとこんな表になります。
AWSセキュリティサービスとMITRE ATT&CK戦術攻撃シナリオの例
AWSサービス | MITRE ATT&CK戦術 | 攻撃シナリオ例 | 戦国時代妄想 |
---|---|---|---|
Network Firewall | 初期アクセス (T1190) | アプリケーションプロトコルの脆弱性を悪用した攻撃。 | 門番に酒を飲ませて不意をつく |
WAF | 初期アクセス (T1190)、実行 (T1059.004, T1059.007) | SQLインジェクション、クロスサイトスクリプティング (XSS)。 | 色仕掛けで攻める |
Shield | 影響 (T1498) | 分散型サービス拒否 (DDoS) 攻撃。 | 歩兵の物量で攻める |
GuardDuty | 初期アクセス (T1078)、探索、特権昇格 | 侵害された認証情報による偵察活動。 | 身分を偽って城に潜入 |
Security Hub | コマンドとコントロール (T1562.006) | 設定ミスや脆弱性など突く。 | 様々な破壊工作 |
IAM | 特権昇格、永続化 (T1098) | 攻撃者によるより高い権限の取得の試み。 | 内部の位の高い人に取り入る |
Secrets Manager | 認証情報アクセス (T1552) | ハードコードされた認証情報へのアクセス。 | 鍵がついた扉から入る |
CloudTrail | 永続化 (T1562.008)、防御回避 (T1562.004) | CloudTrailログの無効化または変更の試み。 | 侵入の痕跡、足跡などを消す |
Inspector | 脆弱性 (各種テクニック) | 既知のソフトウェア脆弱性の悪用。 | 使われていない隠し通路を使って侵入 |
Trusted Advisor | 構成 (各種テクニック) | セキュリティグループまたはS3バケットのアクセス許可の誤設定。 | 城に招かれる行商人に化ける |
Config | 永続化 (T1556.004) | リソース構成への不正な変更。 | 進入用の穴を掘る |
※Incident Managerは省きます。
Discussion