ITmedia NEWS > 社会とIT >

ソフトバンク障害は“他人事”ではない デジタル証明書のヒヤッとする話ITの過去から紡ぐIoTセキュリティ(3/3 ページ)

» 2018年12月21日 12時00分 公開
[高橋睦美ITmedia]
前のページへ 1|2|3       

 既にご存じの方も多いと思いますが、やはりデジタル証明書の有効期限切れが原因となったトラブルがいくつか発生しています。1つは、VRヘッドマウントディスプレイ「Oculus Rift」で、ファームウェアの改ざん防止のために利用している証明書の有効期限が切れ、起動できなくなる問題が今年3月に発生しています

 11月下旬には、赤ちゃんの排せつ状況をクラウド上に記録できるIoTデバイス「うんこボタン」(ソフトウェア開発会社の144Labが販売)でトラブルが発生しました。サーバ証明書の期限が切れてデバイスとサーバ間の通信ができなくなり、ファームウェアの更新すらできない状態に陥り、全品交換せざるを得なくなったのです。

photo 全品交換となったIoTデバイス「うんこボタン」

 サーバ側のデジタル証明書の有効期限が切れただけならば、更新・差し替え作業を行えば回復できるはず……なのに、うんこボタンのケースではそうなりませんでした。少々筋の悪い実装をしていたからです。

 開発元関係者はこの障害について「デバイス側のリソースが厳しいため、サーバ証明書のフィンガープリントをハードコードしてました」と説明しています。

 ハードコードとは、本来ならば環境・状況の変化に応じて変化する部分までプログラムのソースコード中に記述してしまうこと。もしデバイスが想定外の状況に置かれたら、高い確率でトラブルが発生します。今回の場合は、所与の証明書のフィンガープリント(人の「指紋」のように、同一のものかどうかを確認する情報)をソースコードに埋め込んでしまったところ、まさに「証明書の期限切れ」という想定外が発生し、通信が行えない状況に陥ってしまいました。

 証明書の有効期限切れに起因するトラブルに関する反響の中には、「いっそ、自己署名証明書(通称:オレオレ証明書)を使ってしばえばいいのでは」という声もありました。自己署名証明書とは、第三者によるお墨付きを得ずに、自分で「私はこういうものです」と宣言しているだけのもので、認証局が発行した証明書に比べると信頼性は劣ると言わざるを得ません。

 確かに自己署名証明書でも、SSL/TLSによる暗号化通信は可能です。けれど、プライベートなネットワーク、例えば閉じた企業内LANや開発環境ならともかく、不特定多数が利用するインターネット経由では大きなリスクを伴います。デジタル証明書の重要な役割の1つである通信相手の確認ができなくなるからです。本来の通信相手との経路の途中で第三者に割り込まれて通信内容を盗み見られたり、悪意あるWebサイトなどに誘導され、不審なソフトウェアをダウンロードさせられたりする可能性も考えられます。

 PCやスマートデバイスのようにディスプレイが備わっている機器ならば、こうした信頼できないサイトにアクセスすると「このWebサイトのセキュリティ証明書には問題があります」といった警告をWebブラウザが表示してくれます(このエラー表示、うっとうしいと感じる人もいるかもしれませんが、とても大切なものです。ぜひ無視しないようにしてください)。しかしIoTデバイスの場合、そんな「エラー」をユーザーに示してくれる手段すらないこともあります。

 x.509に基づくデジタル証明書の仕組みは、正しく実装すれば、不特定多数が利用する世界での安全を確保してくれます。けれど、管理すべき絶対数が文字通り桁違いに多く、リソースも限られているIoT機器でどのようにデジタル証明書を運用し、管理していくかは大きな課題です。メーカーによる正しい実装と有効期限の管理、万一「詰み」が発生した際の代替案の確保など、IoT向けのデジタル証明書に関して考えるべきことはまだまだ多い――今回の障害は、メーカーやサービス事業者にあらためて課題を突きつける格好になりました。

前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.