[レポート]Well-Architected Frameworkを使ったアプリケーションセキュリティの開発手法を学びました (SEC219) #AWSreInvent

2023.11.30

こんにちは。たかやまです。

現在開催中のre:Invent 2023で行われたBreakOutセッション「SEC219 Build secure applications on AWS the well-architected way」のレポートをお伝えします。

セッション概要

タイトル : Build secure applications on AWS the well-architected way

今年、AWSは6つの柱すべてにわたってAWS Well-Architected Frameworkのアップデートを発表した。セキュリティの柱には、アプリケーションセキュリティ(AppSec)という新しいベストプラクティスエリアが追加されました。このセッションでは、この分野で強調されたベストプラクティスをいくつか紹介する。組織、文化、パイプラインのセキュリティ、依存関係の管理という4つの重要な領域について検討する。各領域が、どのように実装可能な原則を提供し、どのようにワークロードを設計、開発、構築、配備、運用するかを完全に見通すことができるかを探ります。このガイダンスを使用して、ソフトウェア開発に使用するツール、テスト、組織的アプローチに関する意思決定をどのように行うことができるかを学びます。

スピーカー :

  • Reef Dsouza
  • Jeff Lombardo
  • Joshua McKiddy Zillow

セッションレベル : 200

(追記)動画と資料も公開されました!

レポート内容

AWS上でのアプリケーション開発について

まず初めにAWS上でのアプリケーション開発について説明されています。まず、AWS上でのアプリケーション開発の価値とセキュリティの重要性とAWSのサービスやインフラストラクチャを活用したアプリケーション開発の手法やアーキテクチャの進化についても説明されています。

  • アプリケーション開発では、ハード化された環境でのセキュリティガードレールの構築が重要です。ランディングゾーンと呼ばれるセキュリティを備えたデータセンターのような環境を構築
  • AWSの Well-Architect Framework のセキュリティの柱が、アプリケーション開発におけるセキュリティのガイドライン
  • コンポーザブルなアーキテクチャやマイクロサービスベースのアーキテクチャの採用が一般的。また、コンテナ化されたワークロードやサーバーレスアプリケーションの採用も増えている

アプリケーションのセキュリティに関する戦略とベストプラクティス

ここではアプリケーションのセキュリティに関する戦略とベストプラクティスについて説明されていました。まず、AWSのWell-Architected Frameworkのセキュリティの柱について紹介されています。また、アプリケーションセキュリティに関するベストプラクティスやAWSのセキュリティツールの活用方法についても説明されています。

  • セキュリティチャンピオンプログラムは、セキュリティエンジニアとサービスチームとが共感を持ってリードし、アップデートを実行することで、セキュリティの向上を支援
  • セキュリティ情報の提供、脅威のモデル化、侵入テスト、エンジニアの増強によって、セキュリティチームとサービスチームの橋渡しをすることを目的としたのがセキュリティチャンピオンプログラム
  • このプログラムは、Well-Architected Framework を使用して、チーム内でセキュリティチャンピオンに認定されたセキュリティエンジニアや開発者を含む、セキュリティチャンピオンのためのメカニズムを提供
    • データベースの見直しでは、Well-Architect Framework SEC 1,3,8のベストプラクティスを活用
    • パイプラインのフォローアップをする場合は、Well-Architect Framework SEC 5,6,7のベストプラクティスを活用
  • 脅威モデリングやペネトレーションテストを行い、セキュリティの脆弱性を特定し、適切な対策を実施することが重要
  • セキュリティのレビューやコードのレビュー、開発環境のチェックなど、開発者がセキュリティに対して責任を持つことが重要
  • AWSのセキュリティツールやパートナー製品を活用して、アプリケーションのセキュリティを継続的に監視し、改善することが重要
  • セキュリティチャンピオンプログラムの始めて得た教訓
    • サービスチームにセキュリティの教育を行ったとしても、それが実際の成果に結びつかないことがある
    • ただし、セキュリティエンジニアは非難するのではなく、助けるためにそこにいるという事実に共感することが大事

セキュリティチャンピオンプログラムの紹介

最後にセキュリティチャンピオンプログラムの目的や活動内容について詳しく説明されていました。

  • セキュリティチャンピオンプログラムの目的は、サービスチームとの協力を通じてセキュリティ意識を高めること
  • セキュリティエンジニアがサービスチームに参加し、セキュリティの脆弱性の分析やアップデート、脅威モデリング、ペネトレーションテストなどを行う
  • プログラムは、各ビジネスラインに合わせてカスタマイズされたエンゲージメントとして設計
  • プログラムの成果として、脆弱性の減少や未使用のリソースの削減、セキュリティに関する文書化などが報告
  • プログラムでは、開発者やエンジニアに対してセキュリティのベストプラクティスを教育し、セキュリティ意識を高める機会を提供

学んだこと

自分自身、セキュリティチャンピオンという言葉に聞き慣れていなかったのですが、セキュリティ文化の醸成の一つの手法として存在していることを知りました。実際のセキュリティチャンピオンの取り組みに新しく追加されたWell-Architect FrameworkのApp Secの活用例も語られており参考にできる部分が多かったかと思います。

組織としてセキュリティチームとサービスチームが分断されている会社も多いと思いますが、セキュリティを担保しつつサービスを展開していくにはセキュリティとサービスはより密接にしていく必要があると思いました!

以上、たかやま(@nyan_kotaroo)でした。