Amazon Web Services ブログ

AWS IoT Device Defender ML 検出を発表

このブログは、AWS IoT Device Defender Announces ML Detect GA を翻訳したものです。

2021 年 3 月 24日(米国時間)、AWS は AWS IoT Device Defender Machine Learning Detect and Mitigation(ML 検出)の一般提供を発表しました。これは、過去のデバイスデータからの学習に基づいて、IoT デバイスレベルの運用およびセキュリティの異常を自動的に検出する新機能です。お客様は、AWS IoT Device Defender の ルール検出機能を使用して、静的アラームを手動で設定できます。ML 検出は、フリートの予想される動作を自動的に設定することでこれを容易にします。これにより、メッセージの送信、切断頻度、byte in/out など、さまざまなメトリクスでデバイスがどのように動作するかを深く理解する必要がなくなります。また、ML 検出は、季節性やその他の変化する要因によって引き起こされる新しいデータトレンドに基づいて、予想される動作を自動的に更新します。

このブログ投稿では、機能概要を示し、いくつかのお客様が機能によって提供されるデバイスレベルの監視と運用の信頼性からどのように恩恵を受けているかを紹介し、開始するための手順を説明します。

AWS IoT Device Defender ML 検出の概要

ML 検出は、機械学習を使用して、IoT デバイスの予想される動作のしきい値を設定します。この機能を設定する前に、デバイスの動作(切断頻度、送信されたメッセージの数など)を包括的に理解する必要がなくなるため、AWS IoT Device Defender の検出機能を簡単に使用できます。異常が特定されたら、デバイスの隔離などの組み込みの緩和アクションを選択することで対応できます。

AWS IoT Device Defender ML 検出には、次の機能が含まれています。

  • ほぼリアルタイムの継続的な監視のために 6 つのクラウド側メトリクスと 7 つのデバイス側メトリクスをサポートし、メトリクスデータポイントに異常があるかどうかの推論に機械学習アルゴリズムを適用します。
  • ML アラーム通知の信頼水準 HIGH/MEDIUM/LOW をサポートします。
  • 最初の ML トレーニング期間中、この機能は、デバイス全体で 14 日間、メトリクスごとに最低 25,000 のデータポイントを集計集約し、最初のモデル作成時に、デバイスの動作異常の識別を開始します。
  • 最初のモデルが作成された後、この機能は、メトリクスごとに最低 25,000 のデータポイントを使用してモデルを毎日再トレーニングし、最新の 14 日間に基づいて予想されるデバイスの動作を更新します。
  • 組み込みの緩和アクションをサポートしているため、デバイスの問題に対処できます。
  • AWS IoT Device Defender ルール検出と同じアラームメカニズムを使用します。これには、Amazon SNS 通知の統合が含まれます。

ML 検出の恩恵を受けているお客様

AWS IoT Device Defender ML 検出を使用することで、お客様はより自動化されたモニタリング、トラブルシューティング、サポートをエンドユーザーに提供しています。この機能は、顧客サービスのコミットメントを満たし、システムの全体的な信頼性を向上させるのに役立ちます。

ERA Home Security:自動化されたデバイスの監視と問題緩和により、顧客サービスのコミットメントを満たします。

ERA Home Securityは、英国を拠点とするホームセキュリティハードウェアおよびソリューション企業であり、1838 年から事業を展開しています。彼らは最近、自社開発の IoT インフラストラクチャを AWS IoT に移行し、AWS IoT Device Defender ML 検出を使用して、接続の問題や改ざんイベントなどの異常な動作についてデバイスフリートを監視し始めました。2020 年 9 月に AWS IoT Device Defender ML 検出を実装して以来、ERA Home Security は、カスタマーサービスのコミットメントの 99.9 %以上を満たすことで、カスタマーエクスペリエンスを向上させることができました。デバイスがオフラインになった場合、ERA チームはすぐに通知を受け、アラームの詳細に基づいて問題を迅速に解決できます。「結果は非常に頼もしく、我々の本番環境での ML 検出の利用拡大が見えています。高度な技術を持ったスタッフに、お客様に代わって革新を行い、デバイスの問題緩和の自動化といった重労働を Device Defender の ML 検出に委ねる自由を提供します。」と ERA Home Security の CEO Jey Jeyasingam は AWS に共有しました。

Jane : 顧客の保護とケアを向上させるためのプロアクティブなデバイス監視

Jane は、ベルギーに拠点を置くスマートリビングテクノロジー企業であり、高齢者だけでなく、高齢者の生活コミュニティにも在宅医療モニタリングソリューションを提供しています。これらのソリューションは、ダッシュボードとアラートを介して高齢者とケアプロバイダーを結び付け、予防的および反応的なウェルネスアップデートを提供します。Jane が高齢者の生活コミュニティにソリューションを提供するために取り組んだとき、彼らの監視デバイスはローカル 3G ネットワークでの接続性が低下しました。彼らは、ほとんど顧客からのみ、切断の問題の報告を頻繁に受け取りました。AWS IoT Device Defender ML 検出を導入して以来、Jane は、どのデバイスが予期せず接続を切断しているかを確認し、よりプロアクティブなサポートとトラブルシューティングを顧客に提供することができました。Jane が BtoB 市場でビジネスを拡大するにつれ、これらの改善は非常に重要です。「AWS IoT Device Defender ML 検出を通じて、お客様をプロアクティブに監視および保護でき、システムの信頼性にも貢献しています。このようにして、介護者や高齢者はぐっすりと眠ることができます。」と Jane CEO の Evert Van Cauwenberg は AWS にコメントしました。

AWS IoT コンソールでの ML 検出の使用を開始

AWS IoT コンソールまたは AWS CLI を使用して、ML ベースのセキュリティプロファイルを作成できます。これにより、デバイスフリート全体または選択したデバイスグループの標準メトリクスを監視するオプションが提供されます。
次の手順では、AWS IoT コンソールで ML 検出を開始する方法について詳しく説明します。

ステップ 1 デバイスグループで ML 検出を有効にする

ML 検出の使用を開始するには、まず、機械学習を使用して、デバイスの履歴メトリクスデータに基づいてモデルを自動的に作成することにより、予想されるデバイスの動作を学習するセキュリティプロファイルを作成します。セキュリティプロファイルは、デバイスのグループまたはフリート内のすべてのデバイスに割り当てることができます。

1. 基本構成を設定する

AWS IoT Core を開きます。ナビゲーションペインで、DetectSecurity ProfilesCreate Security ProfileCreate ML anomaly Detect profile の順に選択します。

    1. Target ドロップダウンから、監視するデバイスグループまたはすべてのフリートデバイスを選択します。
    2. Security Profile name に値を入力します。
    3. Description (optional) に、セキュリティプロファイルを説明する値を入力します。
    4. Select metric behaviors in Security Profile で、監視したくない選択されたデバイスメトリクスをすべてクリアします。
    5. (オプション)SNS 通知を設定して、電子メール、テキスト、またはアラーム通知を送信するインシデントレスポンスシステムを介してアラーム通知を受信できるようにします。
      1. トピックでは、ドロップダウンから新しい SNS トピックを作成するか、既存のトピックを使用するかを選択できます。
      2. ロールでは、事前定義された役割を選択します。事前定義されたロールがない場合は、IAM に移動してロールを設定できます(IAM ロールの詳細な手順を参照してください)。

注:クラウド側のメトリクスは、デバイス側の実装を必要とせずに、AWS IoT のデバイス接続とメッセージングログから収集されます。デバイス側のメトリクスには、デバイス側の実装が必要です(例:ご自身のファームウエアに AWS IoT Device Client または AWS IoT Device Defender のエージェントサンプルを組み込む など)

2. メトリクスの動作を編集する
Next をクリックして、Edit metric behaviors に移動します。このアクションにより、前のステップで提供されたデフォルトのメトリクス動作設定をカスタマイズできます。

3. 構成を確認する
メトリクスの動作を編集した後、Next をクリックして Review configuration に移動します。 ML セキュリティプロファイルでメトリクス動作の構成を確認するか、前の手順に戻って編集を行います。

Create ML Security Profile をクリックすると、ML モデルの構築が開始されます。

ステップ 2:Behaviors and ML training

モデルが作成されたので、モデルのステータスを確認しましょう。

AWS IoT Console で、Defend > Device > Security Profiles に移動してプロファイルを選択し、Behaviors and ML training tab を選択します。ML モデルトレーニングのステータスが表示されます。上部に、Messages_sent_ML_behavior、しきい値タイプとしての ML、モデルステータスとしての「Pending build」などの動作名が表示されます。

Building 状態

モデルのステータスが Active になると、デバイスデータの異常の推測が開始され、デバイス全体の新しいデータパターンに基づいてモデル自体が更新されます。

Active 状態

ステップ 3:ML 検出アラームを確認する

最初の ML モデルが構築されると(通常、十分なトレーニングデータがあれば 14 日かかります)、データ評価の準備が整います。その後、モデルによって推測されるアラームの検出を継続的に表示できます。

1. AWS IoT コンソールにとどまり、Defend > Detect > Alarms に移動して確認します。 2 つのタブが表示されます。1 つはアクティブなアラームを表示し、もう 1 つは履歴としてタブで表示されます。

以下の Alarms タブの例に示されているように、ML_Detect_profile セキュリティプロファイルに接続されているモノ(デバイス)「ddml1」が接続を試行し、認証に失敗したことがわかります。

2. History タブをクリックすると、過去 24 時間に発生したすべてのアラームイベントを確認できます(ドロップダウンから追加のオプションを選択して、最大 30 日間表示できます)。緑の線はクリアされたアラームを表し、赤はまだアラーム状態にあるデバイスを示します。線と点にカーソルを合わせると、このタイムスタンプ中のアラームの日付、時刻、およびステータスを確認できます。以下に例を示します。

3. 同じページを下にスクロールすると、これらの過去のアラームとその状態に関する追加の詳細を表示することもできます。

ここでは、モノの名前(デバイス)「ddml12」が受信したメッセージが多すぎて、その後それらをクリアしたことがわかります。次に、このアクションにより、「ddml12」のアラーム状態がクリアされました。

4. モノの名前をクリックして、さらに深く掘り下げます。ここでは、「ddml12」を選択し、Defender metrics セクションにグラフを表示します(以下を参照)。

受信したメッセージの急増がアラームをトリガーしたことを示しています。しかし、その後、アラームはクリアされました。

ステップ 4:ML 検出アラームを微調整する

モデルが Active 状態になったら、セキュリティプロファイル ML の動作設定を更新して、さまざまな構成を試すことができます。HighMediumLowの 3 つの信頼水準を利用できます。

  • 信頼度が High ということは、異常な動作の評価における感度が低く、アラーム数が少ないことを意味します。
  • Medium は、異常な動作は中くらいの感度で、アラーム数も中くらいです。
  • 信頼度が Low ということは、感度が高く、アラーム数が多いことを意味します。

1. 通知を調整するには、AWS IoT コンソールにとどまり、Defend > Detect > Security Profiles に移動し、変更および確認するセキュリティプロファイルの profile ラジオボタンを選択します。次に、Actions > Edit をクリックします。

2. Set basic configurations page ページで、メトリクスのその他のオプションを選択および選択解除したり、デバイスを他のデバイスまたはデバイスのグループに接続したりできます。

3. Next をクリックして、メトリクス動作の編集画面に移動します。

たとえば、Authorization failure datapoints required to trigger alarm をデフォルトの 1 から 3 に変更し、信頼度を Low に変更します。これらのパラメータを使用すると、デバイスがアラームを発生させる前に 3 回認証を試行できることがわかり、通知の信頼性レベルも Low に設定されます。
同様に、デバイス、それらのアラーム、datapoints required to clear alarm、および suppressed notifications に適していると思われる他の設定を変更できます。

4. 完了したら、Update ML Security Profile をクリックします – これらの新しい設定が保存されます。プロファイルをクリックし、Behaviors and ML training を表示することで、これらの変更にアクセスできます。

ステップ 5:特定されたデバイスの問題を緩和する

1. 隔離されたモノのグループを作成します。
隔離に対する緩和アクションを設定する前に、デバイスをアラーム状態で移動する隔離グループを作成しましょう。既存のグループがある場合は、それを使用することもできます。

Manage > Thing groups > create Thing Group に移動し、グループに適切な名前を付けます。 「Quarantine_group」という名前を付けます。次に、ページの下部にある Create thing group ボタンをクリックします。Thing groupSecurity で、次のポリシーを Thing group に適用します。

{"Version": "2012-10-17",
  "Statement": [
    {"Effect": "Deny",
      "Action": "iot:*",
      "Resource": "*",
    }
  ]
}

2. 緩和アクションを作成します。
グループを作成したら、アラームが発生しているデバイスを「Quarantine_group」に移動する緩和アクションを設定できます。

Defend > Mitigation Actions に移動し、Create をクリックします。

次の設定を作成しましょう。

  1. Action name: アクションに Quarantine_actionなどの名前を付けます。
  2. Action type: Add things to thing group (Audit or Detect mitigation) を選択します。
  3. Action execution role: Create Role を選択するか、以前にロールを作成したことがある場合は、既存のロールを選択します。
  4. Parameters: Thing groups を選択します。以前に作成した Quarantine_group を使用しました。

すべてのセクションが完了したら、このアクションを保存します。

3. 検出アラームの緩和

Defend > Detect > Alarms に移動しましょう

  1. Active タブでは、複数のデバイスがアラーム状態にあり、Published alarms ページに通知が多すぎることがわかります。デバイスを選択して、緩和アクションを適用しましょう。
  2. 隔離に移動するデバイスを選択し、Start Mitigation Actions をクリックします。
  3. Start Mitigation Actions ボタンをクリックすると、事前に作成された緩和アクションが表示されます。前に作成したものを使用しましょう。

デバイスが「Quaratine_group」で分離されたので、問題の根本原因をさらに調査できます。調査が完了したら、デバイスを隔離から外すか、さらにアクションを実行できます。

さらに、DevOps パイプラインで AWS IoT Device Defender ML 検出ワークフローを自動化する場合は、AWS CLI を使用して上記で説明したすべてをセットアップできます。これを行う方法の詳細については、 Detect コマンドのドキュメント または Github のサンプルコードを参照してください。

まとめ

AWS IoT Device Defender ML 検出を使用すると、デバイスの履歴データに基づいて自動的に構築された、予想されるデバイス動作の ML モデルを含むセキュリティプロファイルを作成できます。そして、これらのプロファイルをデバイスのグループまたはフリート内のすべてのデバイスに割り当てます。次に、AWS IoT Device Defender は、ML モデルを使用して逸脱を識別し、アラームをトリガーします。これにより、デバイスの異常を監視し、措置を講じることが容易になります。


著者について

Syed Rehan は、アマゾンウェブサービスのシニアスペシャリストソリューションアーキテクトであり、ロンドンを拠点としています。彼は世界中の顧客をカバーし、リード IoT ソリューションアーキテクトとして顧客をサポートしています。Syed は、IoT とクラウドに関する深い知識を持っており、スタートアップから企業に至るまでのグローバルな顧客とこの役割を果たし、AWS エコシステムを使用して IoT ソリューションを構築できるようにします。
Cathy Lu は、アマゾンウェブサービスのシニアプロダクトマネージャーであり、シアトルを拠点としています。彼女は、製品戦略、ロードマップ計画、ビジネス分析と洞察、カスタマーエンゲージメント、およびその他の製品管理分野で AWS IoT Device Defender サービスを監督しています。Cathy は、キャリアの中で急成長しているセキュリティ製品の発売をリードしました。

この記事はソリューションアーキテクトの戸塚智哉が翻訳しました。