多数の機器がインターネットにつながる IoT(Internet of Things)では、従来の IT システムとは少し異なるセキュリティ脅威が存在します。実施可能な攻撃の手法や想定される被害の内容を分析し、それぞれの脅威の特性に合わせた対策を講じる必要があります。
本記事では、IoTシステムのセキュリティ対策の難しさ、そしてIoT特有のセキュリティ脅威を分析するための具体的なステップについて解説します。
IoT機器の脆弱性を狙ってウイルス感染
IoTシステムのセキュリティ面での問題は、その脅威が顕在化した場合に、「影響範囲が大きくなる」というところにあります。つながる IoT 機器の数が多く、それらは様々な機器やシステムと連携しているからです。
また、それだけではなく、IoT 機器自体が、十分なセキュリティ対策が難しいという問題もあります。パソコンやサーバーのような豊富なシステムリソースがなく、ウイルス対策などのセキュリティ機能の実装に制約があるからです。加えて、脆弱性が明らかになっても、ソフトウエアを更新する仕組みを備えていない機器も少なくありません。
IoT機器へのサイバー攻撃の最新実態|25億件の通信分析から見えたこと
IoT 機器の脆弱性を利用したサイバー攻撃は、実際に起こっています。2016 年10 月には、米国の DNS(Domain Name System)サービスプロバイダーの Dyn が、大規模な分散型サービス拒否攻撃(Distributed Denial of service、DDoS 攻撃)にさらされ、サービスの提供が滞ったことが大きく報道されました。セキュリティ対策が不十分な、あるいは脆弱な状態でネットワークに接続された IoT 機器が「Mirai」というウイルスに感染したことが原因とされています。
Mirai は、デジタルビデオレコーダーや Web カメラといった IoT 機器の脆弱性を利用してウイルスに感染させ、多数の感染機器(ボット)から大量のデータを攻撃対象サーバーに送信して、DDoS 攻撃を実行します。具体的には、TELNET ポートが開放されている機器を狙って、攻撃を仕掛けます。リモートメンテナンスの効率性を考えて、TELNET ポートを開放している機器が数多く存在していました。
図. 「Mirai」によるIoT機器を踏み台にしたDDoS攻撃の仕組み
Mirai による攻撃事例では、IoT システムにおける利用者側の問題と、IoT システムの提供者側の問題の両方が浮き彫りになりました。
利用者側の問題としては、情報セキュリティの確保に対する意識が十分でないことが挙げられます。個人ユーザーのリテラシーは不十分ですし、法人ユーザーでも情報システム部門が導入に関わっていなかったりします。こうした利用者にとっては、必要な機能を使えるかどうかが重要で、IoT 機器にセキュリティ上の設定が必要だという意識はありません。「初期パスワードを変える」「使わないサービスはオフにする」といった注意書きには目がいかないでしょう。
IoT 機器の管理者パスワードを変更しないままにしておけば、簡単にウイルスに感染させられてしまいます。ほとんどの IoT 機器の取扱説明書は、インターネット上でいつでもダウンロードできます。そして、説明書にはデフォルトパスワードが記載されていることもあります。これらのデフォルトパスワードを集め、リスト化されたものは、インターネットで検索すればいくらでも出てきます。
図. デフォルトのパスワードが記載された取扱説明書の例
図. デフォルトパスワードを集めて公開しているサイトの例
デフォルト設定のままでインターネットに公開するのは、脆弱性をさらけ出したまま利用するようなものです。
提供者側にも問題があります。ユーザーにセキュリティ対策をゆだねるのではなく、機器の初回設定時に強制的にパスワードを変更する仕組みにする、ネットワーク経由でメンテナンスが可能なものは、強制的にパッチを適用する仕組みにするなど、機器の設計の段階で考慮しておく必要があるといえます。
5つのステップで脅威分析
IoT システムのセキュリティ脅威に対し、対策を漏れなく実施するには、システムで利用する機器の要件定義や基本設計の段階から、セキュリティ要件や仕様を洗い出して適用していく必要があります。そのために有効なのが「脅威分析」です。
図. 脅威分析の手順
脅威分析の一般的な流れは、①攻撃者のゴール・目的の分析、②被害の分析、③資産の識別、④脅威の識別、⑤脅威の評価、という5つのステップで構成されます。
最初のステップ①となる『攻撃者のゴール・目的の分析』は、ひと言でいえば、攻撃者が何を狙っているかを分析するプロセスです。攻撃者の立場で、「IoT機器を攻撃することでどんな対価を期待できるか」を想像力を巡らせて考え抜くことが必要です。
例えば「制御システムの操作」「信用へのダメージ」「恐喝」「暴露」「情報の窃取」など、具体的に挙げていきます。ただし、ゼロから具体的な攻撃目的を考えるのには、限界があるでしょう。その場合は、米MITRE が策定した脅威情報の記述仕様「STIX(Structured Threat Information eXpression)」などが参考になります。STIX は、情報処理推進機構(IPA)が概要を解説しています。「サイバー攻撃活動」「攻撃者の意図」などの記述を参考に、IoT ならではの観点を加えて分析してみることをお勧めします。
ステップ②の『被害の分析』は、「対象となる IoT システムで何をされると困るか」を分析することです。ステップ ①で挙げた例に対応した被害を記載すると、
意図しない制御システムの操作によるサービスの停止や不正な動作
データの改ざんや破壊
不正侵害での踏み台による他への攻撃(DDoS など)
となります。ステップ①とステップ②のプロセスは、密接な関係にあります。そのため、明確に分けずに一緒に進めてもよいプロセスといえます。
③の『資産の識別』は、対象となる IoT システムのユースケースや使われる状況のシナリオを策定し、攻撃者のゴール・目的や被害に合致する要素を、資産として抽出・識別するプロセスです。
例えば、Bluetooth イヤホンのユースケースを考えてみましょう。
利用者がBluetooth イヤホンをケースから取り出す
↓
Bluetooth 機能が自動的にオンになる
↓
スマートフォンが検知し接続する
↓
イヤホンを耳に装着する
↓
赤外線センサーが耳を検知する
↓
音声通信がオンになる
↓
スマートフォンで音楽が再生されイヤホンから聞こえる
↓
電話が着信し音楽が中断され着信音が鳴る
↓
イヤホンをタップしイヤホン・マイクで通話する
このような、一連のシナリオを想定します。
このシナリオでは、資産候補は「イヤホン(Bluetooth コンポーネント、赤外線センサー、タップセンサー)」と「スマートフォン」となります。
次に④の『脅威の識別』を実施します。これは、攻撃者が上記の資産に対し、どのような攻撃を仕掛けてくるかを洗い出し、設計段階・実装段階で適切な防御策を講じるための分析です。
脅威の識別の具体的な方法としては、「STRIDE 手法」が知られています。米Microsoft が策定したソフトウエア開発における一般的なアプローチですが、IoTにおける脅威の識別としても有効です。
想定される脅威を、
- なりすまし(Spoofing)
- 改ざん(Tampering)
- 否認(Repudiation)
- 情報の漏洩・意図しない開示(Information disclosure)
- DoS 攻撃(Denial of service)
- 権限昇格(Elevation of privilege)
の6つに分類します。STRIDE はこれらの頭文字をとったものです。
攻撃手段を検証してリスク度合いを分析
最後のステップ⑤の『脅威の評価』では、製品の故障分析などで一般的に用いられている FTA(Fault Tree Analysis)手法や、FTAをサイバー攻撃の分析に応用したATA(Attack Tree Analysis)手法を用いて、脅威が発現する具体的な条件や、攻撃手段を検証します。攻撃の手段を抽象度の高いものからより詳細な手段へツリー構造で分解し、そのリスクの度合いを分析する手法です。
分解した攻撃手段の影響の大きさは、
- 潜在的な損害(Damage potential)
- 再現可能性(Reproductivity)
- 攻撃利用可能性(Exploitability)
- 影響ユーザー(Affected users)
- 発見可能性(Discoverability)
という5つの指標を用いて評価します。それぞれの頭文字をとって「DREAD」と呼ばれています。
Bluetooth イヤホンの例では、
「イヤホンとスマートフォンに対して攻撃が成立するか」
「攻撃が成立する場合、どの程度の損害が発生するか」
という観点で評価をします。イヤホンに対してできる攻撃は限られていますが、爆音にしてけがを負わせる、音楽を聴けなくする、通話を盗聴するといった脅威に対して、攻撃の成立可能性や再現可能性などを総合的に評価します。
おわりに
5つのステップで分析したセキュリティ脅威について、それぞれの影響の大きさや発生可能性を踏まえて、対処方法を検討します。特に影響の大きい部分に対策を講じるだけでも、重大な不具合の多くは改善されます。IoTの使われる環境や種別、ユースケースを基に特にリスクの高い脅威への対応を重点的に行うことが必要です。
IoT機器を利用する環境や業界によっては、安全性(Safety)を最優先に考えなければならない場合もあります。人命を優先する医療機器や事故が起こったときの影響が甚大な電力・石油・ガスの制御機器などです。利用する機器の環境や特性に応じた対応を行うことが、効率的・効果的なセキュリティ設計方法といえるでしょう。
※本記事は、以下書籍の内容を元に再構成したものです。
「上流工程でシステムの脅威を排除する セキュリティ設計実践ノウハウ」
編著:山口 雅史
発行元:日経BP社
https://tech.nikkeibp.co.jp/atcl/nxt/books/18/00010/111300196/