セキュリティのための AI/ML - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

セキュリティのための AI/ML

セキュリティ AWS リファレンスアーキテクチャ (AWS SRA) の未来に影響を与えるために、簡単なアンケートに回答してください。

人工知能と機械学習 (AI/ML) is transforming businesses. AI/ML has been a focus for Amazon for over 20 years, and many of the capabilities customers use with AWS, including security services, are driven by AI/ML. This creates a built-in differentiated value, because you can build securely on AWS without requiring your security or application development teams to have expertise in AI/ML。

AI は、マシンやシステムがインテリジェンスと予測機能を取得できるようにする高度なテクノロジーです。AI システムは、過去の経験から、消費またはトレーニングされたデータを通じて学習します。ML は AI の最も重要な側面の 1 つです。ML は、コンピュータが明示的にプログラムされることなくデータから学習する機能です。従来のプログラミングでは、プログラマーはプログラムがコンピュータまたはマシンでどのように機能するかを定義するルールを記述します。ML では、モデルはデータからルールを学習します。ML モデルは、データの隠れたパターンを検出したり、トレーニング中に使用されなかった新しいデータを正確に予測したりできます。複数の AWS サービスは AI/ML を使用して巨大なデータセットから学習し、セキュリティ推論を行います。

  • Amazon Macie は、ML とパターンマッチングを使用して機密データを検出し、保護するのに役立つデータセキュリティサービスです。Macie は、名前、住所、クレジットカード番号などの財務情報などの個人を特定できる情報 (PII) を含む、大規模で増加している機密データタイプのリストを自動的に検出します。また、Amazon Simple Storage Service (Amazon S3) に保存されているデータを継続的に可視化できます。Macie は、さまざまなタイプのデータセットでトレーニングされた自然言語処理 (NLP) モデルと ML モデルを使用して、既存のデータを理解し、ビジネスに不可欠なデータを優先するためにビジネス値を割り当てます。その後、Macie は機密データの検出結果を生成します。

  • Amazon GuardDuty は、ML、異常検出、統合された脅威インテリジェンスを使用して悪意のあるアクティビティや不正な動作を継続的にモニタリングし、AWS アカウント、インスタンス、サーバーレスおよびコンテナワークロード、ユーザー、データベース、ストレージを保護する脅威検出サービスです。 GuardDuty には、潜在的に悪意のあるユーザーアクティビティを AWS アカウント内の異常で良性の運用動作から識別するのに非常に効果的な ML 手法が組み込まれています。この機能は、アカウント内の API 呼び出しを継続的にモデル化し、確率予測を組み込むことで、非常に疑わしいユーザーの行動をより正確に分離して警告します。このアプローチは、検出、初期アクセス、永続性、特権エスカレーション、防御回避、認証情報アクセス、影響、データ流出など、既知の脅威戦術に関連する悪意のあるアクティビティを特定するのに役立ちます。 GuardDuty が機械学習を使用する方法の詳細については、AWS re:Inforce 2023 breakout session Developing new findings using machine learning in Amazon GuardDuty (TDR310)」を参照してください。

信頼できるセキュリティ

AWS は、インフラストラクチャに関する重要な質問に答えたり、データを公開する可能性のある設定ミスを検出したりするために、数学的ロジックを使用する自動推論ツールを開発します。この機能は、クラウドとクラウドのセキュリティでより高い保証を提供するため、証明可能なセキュリティと呼ばれます。実証可能なセキュリティでは、自動推論が使用されます。これは、コンピュータシステムに論理的推論を適用する AI の特定の分野です。例えば、自動推論ツールはポリシーとネットワークアーキテクチャ設定を分析し、脆弱なデータを公開する可能性のある意図しない設定がないことを証明することができます。このアプローチは、クラウドの重要なセキュリティ特性に対して可能な限り最高レベルの保証を提供します。詳細については、AWS ウェブサイトの「プロビジョン可能なセキュリティリソース」を参照してください。現在、以下の AWS サービスと機能は、アプリケーションに実証可能なセキュリティを実現するために自動推論を使用しています。

  • Amazon CodeGuru Security は、ML と自動推論を組み合わせてコードの脆弱性を特定し、これらの脆弱性を修正し、クローズするまでステータスを追跡する方法に関するレコメンデーションを提供する静的アプリケーションセキュリティテスト (SAST) ツールです。 CodeGuru Security は、Open Worldwide Application Security Project (OWASP) によって特定された上位 10 の問題を検出します。 Common Weakness Enumeration (CWE) によって特定された上位 25 の問題、 ログインジェクション、 シークレット、 および AWS APIs と SDKs. CodeGuru Security の安全な使用は、AWS セキュリティのベストプラクティスからも借用されており、Amazon では数百万行のコードでトレーニングされています。

    CodeGuru Security は、深いセマンティック分析により、真陽性率が非常に高いコードの脆弱性を特定できます。これにより、デベロッパーやセキュリティチームがガイダンスを信頼できるようになり、品質が向上します。このサービスは、ロジスティック回帰とニューラルネットワークの組み合わせを使用するルールマイニングと教師あり ML モデルを使用してトレーニングされます。例えば、機密データリークのトレーニング中、 CodeGuru Security はリソースを使用するコードパスまたは機密データにアクセスするコードパスの完全なコード分析を実行し、それらを表す機能セットを作成し、そのコードパスをロジスティック回帰モデルと畳み込みニューラルネットワーク (CNNs) の入力として使用します。 CodeGuru Security のバグ追跡機能は、バグが閉じられたときに自動的に検出します。バグ追跡アルゴリズムにより、組織のセキュリティ体制に関する up-to-date 情報を、追加の労力なしで確実に取得できます。コードの確認を開始するには、Word CodeGuru コンソールの GitHub、 GitHub Enterprise、Bitbucket、または CodeCommit AWS に既存のコードリポジトリを関連付けることができます。 CodeGuru Security API ベースの設計は、開発ワークフローのどの段階でも使用できる統合機能を提供します。

  • Amazon Verified Permissions は、構築するアプリケーション向けのスケーラブルなアクセス許可管理およびきめ細かな認可サービスです。Verified Permissions は、自動推論と差分テストを使用して構築されたアクセスコントロール用のオープンソース言語である Cedar を使用します。Cedar は、アクセス許可を、どのユーザーがどのリソースにアクセスできるかを説明するポリシーとして定義するための言語です。また、これらのポリシーを評価するための仕様でもあります。Cedar ポリシーを使用して、アプリケーションの各ユーザーが実行できる操作と、アクセスできるリソースを制御します。Cedar ポリシーは、ユーザーがリソースを操作できるかどうかを決定する許可または禁止ステートメントです。ポリシーはリソースに関連付けられており、リソースに複数のポリシーをアタッチできます。禁止ポリシーは許可ポリシーを上書きします。アプリケーションのユーザーがリソースに対してアクションを実行しようとすると、アプリケーションは Cedar ポリシーエンジンに認可リクエストを行います。Cedar は該当するポリシーを評価し、 ALLOWまたは DENYの決定を返します。Cedar は、任意のタイプのプリンシパルとリソースの認可ルールをサポートし、ロールベースおよび属性ベースのアクセス制御を可能にし、ポリシーの最適化とセキュリティモデルの検証に役立つ自動推論ツールによる分析をサポートします。

  • AWS Identity and Access Management (IAM) Access Analyzer は、アクセス許可の管理を合理化するのに役立ちます。この機能を使用して、未使用のアクセスを削除することで、きめ細かなアクセス許可の設定、意図したアクセス許可の検証、アクセス許可の絞り込みを行うことができます。IAM Access Analyzer は、ログにキャプチャされたアクセスアクティビティに基づいてきめ細かなポリシーを生成します。また、ポリシーの作成と検証に役立つ 100 を超えるポリシーチェックも提供します。IAM Access Analyzer は、実証可能なセキュリティを使用してアクセスパスを分析し、リソースへのパブリックアクセスとクロスアカウントアクセスに関する包括的な検出結果を提供します。このツールは Zelkova 上に構築されており、IAM ポリシーを同等の論理ステートメントに変換し、問題に対して汎用および特殊な論理ソルバー (充足可能性モジュロ理論) のスイートを実行します。IAM Access Analyzer は、ポリシーの内容に基づいて、ポリシーが許可する動作のクラスを特徴付けるために、ますます具体的なクエリを含むポリシーに Zelkova を繰り返し適用します。アナライザーはアクセスログを調べて、外部エンティティが信頼ゾーン内のリソースにアクセスしたかどうかを判断しません。リソースベースのポリシーがリソースへのアクセスを許可している場合、リソースが外部エンティティによってアクセスされていない場合でも、結果が生成されます。充足可能性モジュロ理論の詳細については、「 充足可能性ハンドブック」の「充足可能性モジュロ理論」を参照してください。*

  • Amazon S3 パブリックアクセスブロックは、バケットやオブジェクトへのパブリックアクセスにつながる可能性のある設定ミスをブロックできる Amazon S3 の機能です。Amazon S3 のパブリックアクセスブロックは、バケットレベルまたはアカウントレベルで有効にできます (アカウント内の既存のバケットと新しいバケットの両方に影響します)。パブリックアクセスは、アクセスコントロールリスト (ACLs)、バケットポリシー、またはその両方を通じてバケットとオブジェクトに付与されます。特定のポリシーまたはACLがパブリックと見なされるかどうかの判断は、Zelkova 自動推論システムを使用して行われます。Amazon S3 は Zelkova を使用して各バケットポリシーをチェックし、権限のないユーザーがバケットを読み書きできるかどうかを警告します。バケットがパブリックとしてフラグ付けされている場合、一部のパブリックリクエストはバケットへのアクセスが許可されます。バケットにパブリックではないフラグが付けられている場合、すべてのパブリックリクエストは拒否されます。Zelkova は IAM ポリシーを正確に数学的に表現しているため、このような判断を行うことができます。ポリシーごとに数式を作成し、その数式に関する定理を証明します。

  • Amazon VPC Network Access Analyzer は、リソースへの潜在的なネットワークパスを理解し、意図しないネットワークアクセスの可能性を特定するのに役立つ Amazon VPC の機能です。Network Access Analyzer は、ネットワークセグメンテーションの検証、インターネットアクセシビリティの特定、信頼できるネットワークパスとネットワークアクセスの検証に役立ちます。この機能は、自動推論アルゴリズムを使用して、パケットが AWS ネットワーク内のリソース間で取ることができるネットワークパスを分析します。次に、アウトバウンドトラフィックパターンとインバウンドトラフィックパターンを定義するネットワークアクセススコープに一致するパスの検出結果を生成します。Network Access Analyzer はネットワーク構成の静的な分析を行います。つまり、この分析の一環としてネットワーク内でパケットが送信されることはありません。

  • Amazon VPC Reachability Analyzer は、VPC ネットワーク内の接続をデバッグ、理解、視覚化できる Amazon AWS の機能です。Reachability Analyzer は、Virtual Private Cloud (VPCs) 内のソースリソースと宛先リソース間の接続テストを実行できるようにする設定分析ツールです。送信先に到達すると、Reachability Analyzer は送信元と送信先の間の仮想ネットワークパスの hop-by-hop の詳細を生成します。送信先に到達できない場合、Reachability Analyzer はブロッキングコンポーネントを識別します。Reachability Analyzer は自動推論を使用して、送信元と送信先の間のネットワーク設定のモデルを構築することで、実現可能なパスを特定します。次に、設定に基づいて到達可能性をチェックします。パケットを送信したり、データプレーンを分析したりすることはありません。

* ビア、A. M. ヘーレ、H. van Maaren、T."sh。2009 年。満足度ハンドブック。IOS Press、NLD。