0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

プレビュー中のGuardDuty Investigation触ってみた(DevOps Agentとも比較してみた)

0
Posted at

はじめに

前回の記事では、AWS DevOps Agentにセキュリティグループの全開放を調査させ、初動調査をAIに任せられるかを試しました。

最近、GuardDutyにも、検出結果をAIが調査してくれる機能がプレビューで追加されています。名前は GuardDuty Investigation です。

セキュリティの初動調査を手伝ってくれるAIが2つ出てきたので、今回はGuardDuty Investigationを触ってみて、DevOps Agentとの違いを整理します。

この記事でやること

  • GuardDuty Investigationの概要と前提条件を整理する
  • DevOps Agentと比べて、何に使うのが向いているかを整理する
  • 東京リージョンで有効化し、アカウント全体の分析を実行する
  • 結果の画面の見方を紹介する

今回は、検証用のアカウントにある実際の検出結果を分析しています。検出結果の中身は、記事ではぼかしています。

GuardDuty Investigationとは

GuardDutyの検出結果やアカウントの状態を、AIが分析してくれる機能です。2026年6月にプレビューとして発表されました。

調査を依頼すると、GuardDutyは次の情報を知識グラフで突き合わせて分析します。

  • 検出結果の内容
  • 過去90日間の関連する操作
  • 影響を受けたリソース
  • 脅威インテリジェンスや脅威の兆候

分析の種類

分析は3種類あり、調査を始めるときに範囲を選びます。

分析の種類 何を分析するか コンソールでの選択肢 調査を作成できるアカウント
検出結果の分析 指定した1件の検出結果を深掘りする A specific finding(検出結果のIDを入力) 管理者、スタンドアロン
アカウントの分析 1つのアカウントの検出結果をまとめて、全体の状況を評価する My account(スタンドアロン)/A specific account(管理者) 管理者、スタンドアロン
組織の分析 組織内のアカウントをまたいで評価する All accounts in organization 管理者のみ

「管理者」はGuardDutyを組織で管理しているときの管理者アカウント、「スタンドアロン」は組織の管理下にないアカウントのことです。

結果として出てくるもの

  • リスクレベル:Info、Low、Medium、High、Criticalの5段階
  • 信頼度:Unknown、Low、Medium、Highの4段階
  • 要約:調査結果と主な観察事項
  • 調査の詳細:関連する情報や、攻撃の手口の分類(MITRE ATT&CK)
  • 推奨アクション:CLIコマンドつきの対応手順

MITRE ATT&CK(マイターアタック)は、攻撃者の手口を「何を狙った行動か(戦術)」と「どうやったか(テクニック)」で整理した、世界的に使われている分類です。たとえば「正規のアカウントを悪用して侵入する」といった手口に、共通の名前と番号が付いています。検出された内容をこの分類に当てはめることで、攻撃のどの段階にあたるかを把握しやすくなります。

プレビュー中の制約

  • リージョン:東京を含む10リージョン。東京リージョンでは、推論は東京か大阪で行われ、データの保管は東京だけです
  • 件数:1アカウントあたり1日10件、累計100件まで(失敗した調査は数えない)
  • 対応する検出結果:拡張脅威検出(XTD)の検出結果と、基本・S3保護・ランタイム保護の一部の検出結果のみ。対応していない種類を指定すると「not supported」というエラーになります
  • 料金:プレビュー中は無料です

GuardDutyを組織で管理している場合、メンバーアカウントでは調査を作れません(閲覧のみ)。調査を作れるのは、管理者アカウントか、組織の管理下にないスタンドアロンのアカウントです。

DevOps Agentと比べてみる

前回試したAWS DevOps Agentと比べてみます。表のうち「今回の所要時間」と「言語」は、このあとの検証で確認した結果です。

観点 AWS DevOps Agent GuardDuty Investigation(プレビュー)
調査のきっかけ 自分で作ったアラームや、依頼文 GuardDutyの検出結果、アカウント、組織
調べる範囲 ログ、メトリクス、設定変更など幅広い 検出結果と、それに関連する過去90日の操作
依頼の仕方 自然言語で自由に依頼。チャットで深掘りできる 範囲を選ぶだけ(CLIでは依頼文も書ける)。追加の質問はできない
結果の形 根本原因、手順書形式の緩和計画 リスクレベル、信頼度、攻撃の手口の分類、CLIつきの推奨アクション
準備 Agent Space、IAMロール、検知の仕組みを自前で用意 設定画面で有効化するだけ
今回の所要時間 約11分(SG全開放の調査) 約2分(アカウント全体の分析)
言語 日本語を指定できた(途中経過は一部英語) 今回は英語のみ(日本語を選ぶ設定は見当たらなかった)
料金 作業時間に応じた秒単位の課金(無料トライアルあり) プレビュー中は無料(1日10件、累計100件まで)

何に使うのが向いているか

どちらも、ログや検出結果を自分で集めて、自律的に調べてくれる点は同じです。違いは、「どこまで調べられるか」と「調べたあとに対話できるか」にあります。

GuardDuty Investigationが向いている場面

  • GuardDutyの検出結果が出たときの、最初のトリアージ
  • 溜まっている検出結果を横断して、アカウントの状況をざっと把握したいとき
  • 準備に手間をかけず、すぐに使い始めたいとき

DevOps Agentが向いている場面

  • GuardDutyの検出結果以外も含めた、インシデントや障害の調査
  • 調査結果について、チャットで追加の質問をしたり、再発防止策を相談したりしたいとき
  • 日本語でやりとりしたいとき

GuardDuty Investigationで検出結果を素早くトリアージし、深掘りや障害対応はDevOps Agentに任せる、という使い分けにすると、両方の良さを活かせそうです。

実際にGuardDuty Investigationを有効化してみる

前提として、東京リージョンでGuardDutyが有効になっている必要があります。

GuardDutyのコンソールで「設定」を開き、一番下の「AI powered investigations - Preview」で「Enable」を押します。

1.png

「Enabled」になれば完了です。

2.png

CLIで有効にする場合は、detectorのAI_ANALYSTという機能を有効にします。

aws guardduty update-detector \
  --detector-id <detector ID> \
  --features '[{"Name": "AI_ANALYST", "Status": "ENABLED"}]' \
  --region ap-northeast-1

調査を実行するIAMユーザーやロールには、guardduty:CreateInvestigation、guardduty:GetInvestigation、guardduty:ListInvestigationsの権限が必要です。

アカウント全体を分析する

左メニューの「Investigations」を開き、「Initiate investigation」を押します。

3.png

調査の範囲を選びます。今回は「My account」を選びました。

4.png

範囲を選んで開始するだけで、依頼文を書く必要はありません。調査は裏で進み、一覧に「Running」と表示されます。

5.png

約2分で「Completed」になりました。完了すると、調査の内容を表すタイトルが自動で付きます。

6.png

結果を見ていく

結果の画面は、上から次の順で並んでいます。

評価(Assessment)と基本情報

7.png

一番上に、リスクレベルと信頼度、評価の要約が表示されます。今回はリスクレベル「High」、信頼度「High」でした。

画面上部には、「AIが生成した分析や推奨には、誤りや不完全な評価が含まれる可能性がある。人間による確認を推奨する」という注意書きがあります。

分析の要約と観察事項

08_analysis-summary_blurred.png

過去約90日間の検出結果を横断して、全体の状況を文章でまとめてくれます。

画像にモザイク入れてしまってるので、文章で伝われば良いのですが・・・
印象に残ったのは次の3点です。

  • 個々の検出結果を、つなげて評価している:重大度が低い検出結果でも、同じ時期に起きた別の検出結果と合わせて、「1つの攻撃の流れの可能性がある」と評価していました
  • 推測と事実を分けて書いている:「これは解釈であり、確定した事実ではない」「データからは、同じ人物の操作かどうかは分からない」と、言い切れない点を明記していました
  • 守りの穴も指摘する:GuardDutyの保護機能のうち、どれが有効で、どれが無効かもまとめていました

アカウント分析

09_account-analysis_blurred.png

検出結果の件数(重大度ごと)、多かった検出結果の種類、攻撃の手口の分類(MITRE ATT&CKの戦術)ごとの内訳、影響を受けたリソースが一覧で表示されます。

推奨アクション

10_recommendations_blurred.png

推奨アクションには、「FURTHER INVESTIGATION(さらに調査)」「ENABLE PROTECTION(保護の有効化)」といった種類と、「Immediate(すぐに)」「Short-term(短期)」といった緊急度が付いています。

有難いと思ったのは、次の調査をするためのCLIコマンドが、そのまま書かれていることです。アカウント全体を分析した結果、気になる検出結果があれば、その1件を深掘りする「検出結果の分析」のコマンドが用意されています。全体を見てから、気になる点を掘り下げる、という流れがスムーズにつながります。

後片付け

調査機能を使わなくなったら、GuardDutyの「設定」で「AI powered investigations - Preview」の「Disable」を押して無効にできます。

まとめ

  • GuardDuty Investigationは、設定で有効にするだけで使い始められ、アカウント全体の分析は約2分で終わった
  • 複数の検出結果をつなげて評価し、推測と事実を分けて書いてくれる
  • 推奨アクションに、次の調査のCLIコマンドまで用意されている
  • 調べられるのはGuardDutyの検出結果まわりに限られ、結果に対して追加で質問はできない。結果は英語のみだった
  • 検出結果の初動はGuardDuty Investigation、深掘りや障害対応はDevOps Agent、という使い分けが良さそう

正式リリース(GA)後の料金や、日本語対応がどうなるかにも注目したいと思います。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?