AWS IoTとIoTセキュリティ課題の解決
目次
IoTにおけるセキュリティリスクと発生し得る問題
IoT(アイオーティ、Internet of Things)は、日本語では「モノのインターネット」と訳されます。従来のようにサーバーやパソコンだけでなく、家電やセンサー機器などの様々なデバイスをインターネットに接続するシステムや技術全般のことを指します。
IoTは様々なビジネスへの応用が期待される反面、モノ(デバイス)がインターネットと繋がることで、それが世界中の攻撃者から攻撃対象となってしまい、サイバー攻撃を受けるリスクも発生します。具体的には下記のようなリスクが存在します。
- 個人情報や企業機密の流出のリスク
顔認証装置や監視カメラなどのIoT機器が乗っ取られれば、攻撃者に企業等の機密情報を盗まれてしまいます。個人の家庭であれば、プライバシーを侵害されてしまうことにもつながります。 - IoTシステムがダウンするリスク
IoTで利用しているデバイスがハッキングされ、仮想通貨等のマイニングがされてしまうと、高負荷でレスポンスが遅くなったり、場合によってはデバイスがダウンしたり、といったリスクが生じます。自動運転システム等人命にかかわるようなユースケースで利用されているIoTシステムがこのような攻撃を受けると、重大な事故につながる恐れがあります。 - 他のシステムを攻撃する踏み台となってしまうリスク
IoTデバイスが乗っ取られてしまうと、他のシステムに高負荷をかけてシステムをダウンさせるDDoS攻撃の踏み台として加担してしまう恐れが生じます。企業の信用問題に発展するだけでなく、該当の機器が様々なセキュリティ企業のブラックリストとして登録されてしまい、他のサービスとの連携ができなくなるリスクも生じます。
IoT特有のセキュリティ課題
IoTシステムは適切なセキュリティ対策が何よりも重要です。セキュリティ対策なしでは先述の通り様々な攻撃のリスクにさらされてしまい、IoTが持つビジネスの可能性を結果的につぶしてしまうことになりかねません。
IoTのセキュリティ対策には、大きく2つの課題があります。
- 多種多様なIoT機器の管理が困難
- セキュリティアップデートが困難
どういうことなのか、具体的に記載していきます。
多種多様なIoT機器の管理が困難
IoTはサーバーなどのIT機器に比べ、数や種類が多く、統一的な管理が困難です。例えばサーバーであればLinuxやWindowsなど、普段利用するOSの種別が限られているため、脆弱性の管理などが容易です。しかし、IoTで利用するデバイスはスマートキーやカメラ、空調、製造装置など多岐に渡り、ハードウェアからOSの脆弱性について幅広く管理する必要があり、管理コストが上がってしまいます。
セキュリティアップデートが困難
例えばサーバーであれば、必要に応じてウイルス対策ソフトやEDRのインストールを実施することや、セキュリティアップデートを行うことで、後付けでセキュリティの強化を実施することができます。一方でIoTデバイスは、汎用性の高いウイルス対策ソフトなどが非対応であることが多いだけでなく、デバイスのセキュリティアップデートもベンダーの開発状況に依存するため、十分に行えないことがあります。
IoT開発はAWSなら素早く実現可能、スタイルズのAWSによるIoTシステム構築サービスはこちら→
IoTセキュリティガイドライン
安全にIoTシステムを開発・運用していくために、総務省と経済産業省が共同で開催する「IoT推進コンソーシアム IoTセキュリティワーキンググループ」において、セキュリティガイドラインが発表されています。具体的には、IoTのセキュリティ対策を5段階に分けてどのような対策を実施すればいいかを解説しています。その内容を以下に簡単に記載していきます。
- 方針
経営者、IT担当者双方でIoTの性質を考慮した基本方針を定める - 分析
IoTのリスクを認識し、ギャップを分析する - 設計
分析したギャップから、守るべきものを守るための必要な設計を考える - 構築・接続
ネットワーク上でのセキュリティ対策を考える - 運用・保守
セキュアな状態を維持するための情報収集と共有を行う
具体的な指針については下記に記載されています。
IoT 推進コンソーシアム:IoT セキュリティガイドライン(PDF)
AWS IoTサービスの全体像
IoTシステムのセキュリティを担保するためには、それぞれの機能や機器において必要な対策をしっかり行うことが重要です。例えば、AWSを利用したIoTシステムにおいては、AWSで公表されている『責任共有モデル』に基づき、データ、ソフトウェア、通信、デバイス(OS)、物理機器のそれぞれのレイヤでセキュリティ対策が必要になります。デバイス(OS)、物理機器層としては、下記のサービスに関するセキュリティの考慮が必要です。
- AWS IoT Greengrass
- FreeRTOS
- AWS IoT Device SDKs
また、データ、ソフトウェア、通信については下記のようなサービスに関するセキュリティの考慮が必要です。
- AWS IoT Core
- AWS IoT Device Management
- AWS IoT Device Defender
- AWS IoT Analytics
以下、これらのサービスを用いてどのようにセキュリティを担保していくのか、記載していきます。
AWS IoT Coreによる安全なデバイス接続とメッセージ送信
AWS IoT Coreは、IoTデバイスを各種AWSサービスに接続するためのゲートウェイとして通信や認証を取りまとめる役割を担っています。セキュリティ面では主に下記2点の機能を使うことができます。
- デバイスゲートウェイによる認証認可の機能
IoTデバイスがAWS IoT Coreに接続するとクライアント認証(正しいデバイスが接続しているか)並びにサーバー側の認証(クライアントが正しいサーバーに接続しているか)を行い、相互に認証することでセキュアな接続を確立できます。また、デバイスが独自の認証認可の仕組みを利用する場合にも、認証用のLambda関数を利用したカスタム認証機能を利用することができます。 - デバイスシャドウによる可用性の向上機能
IoTデバイスの状態をクラウド上で保管し、IoTデバイスがAWS IoTに接続されているかどうかの確認を行う機能です。アプリケーション側からは常にデバイス状態を把握するだけでなく再接続機能もあるため、IoTシステム全体の可用性向上を期待できます。
IoT開発はAWSなら素早く実現可能、スタイルズのAWSによるIoTシステム構築サービスはこちら→
AWS IoT Device Defenderによるセキュリティの監視・監査
IoTシステムにおけるセキュリティの監査や脅威検知に活用できるサービスです。具体的には、デバイスに付与する権限チェックや、デバイス証明書の有効期限のチェック、デバイス証明書の共有といった、IoTセキュリティのベストプラクティスに沿ったセキュリティの設定が正しくなされているかを確認する機能があります。
また、デバイスからクラウドへ接続する際の認証エラーの回数などから機械学習でサイバー攻撃の有無を判定する振る舞い検知の機能も実装されています。
AWS IoT Device Managementによるソフトウェア更新
IoTシステムで最も大変なことは、膨大な量のデバイスをいかに管理していくか、という点です。AWS IoT Device Managementを使うことで、IoTデバイスの登録、編成、モニタリング、リモート管理を簡単に実施することが可能です。具体的には下記の機能が存在します。
- デバイス登録機能
デバイス名、種類、製造年、証明書などを登録しておくことで、デバイスの一覧化が可能です。 - グルーピング
各デバイスに個別に権限を付与していくことは非常に手間がかかりますが、デバイスをグループ分けし、それぞれのグループに対して一括して権限を付与する機能があります。 - ジョブ実行機能
IoT機器では、一定の時間に状態を取得したり、パッチプログラムをインストールしたりといった作業が必要になります。このような作業をジョブとして登録しておくことができ、セキュアな運用の自動化に貢献します。
まとめ
IoTをビジネスに活用するためにはセキュリティを最優先に考える必要があります。ただし、セキュリティを担保することは時に大きな工数がかかることもあります。AWSのIoTに関する様々なサービスを利用することで、セキュアな運用を少ない工数で実現することができます。IoTシステムを構築する際にはAWSをベースとしたシステム基盤の活用を検討してみてください。