特集 情報セキュリティ
すべてのモノがインターネットにつながるIoTの時代では、ネットに接続するウェブカメラなどIoT機器をウイルスに感染させ、それを踏み台にしてコンピュータシステムを攻撃するなど、年々手口が巧妙となっており、攻撃を完全に回避するための予防策がない。サイバー攻撃は、日本全体で毎年倍程度のペースで増えており、大学でも研究室のウェブサイトが書き換えられる、成績情報や個人情報がネットワーク経由で窃取されるなど被害が続出しており、情報セキュリティ管理の甘さが問題視されている。
そこで、本特集では、本問題を学校法人全体の経営問題として捉え、攻撃を未然に防ぐために構成員一人ひとりが日常の中で防御行動を展開できるよう、サイバー攻撃の脅威を周知し、情報セキュリティに対する防御意識の浸透が促進されるように、サイバー攻撃の動向と情報セキュリティへの対応体制の現状と本協会の「情報セキュリティ対策問題研究小委員会」がとりまとめた経営執行部による関与の重要性、ベンチマークによる課題の洗い出しと点検・評価による改善取り組みの指針、ベンチマークの評価結果を紹介することにした。
高倉 弘喜(国立情報学研究所 サイバーセキュリティ研究開発センター長)
2016年、多くのIoT機器を乗っ取るマルウェアMiraiによる被害が発生しました。これは、
ことが一番の原因であると言われています。これを受けて、telnetプロトコルの使用を禁止すべきとの指摘が相次いでいます。
しかし、プロトコルの変更は本質的な解決策ではありません。平文通信の盗聴により侵入を許す可能性があること自体は、望ましくないのですが、telnetの代替として暗号通信のsshやhttpsを使用するだけで、IDとパスワードが脆弱な状態であれば、盗聴できなくても侵入されてしまうリスクは、依然として高いままなのです。
IoT機器は爆発的に台数が増えていて、McAfee社のレポート[1]によれば、2015年の時点でタブレット24.8億台やウェラブル機器20億台に対して、IoT機器150億台に達しており、すでにIoT機器の規模は無視できないものとなりました。さらに、将来的には、タブレット26.9億台(2019年)、ウェラブル機器78億台(2018年)、IoT機器2,000億台(2020年)になり、IoT機器は急速に普及すると予想されています。一方、サイバー攻撃を行う側からすれば、最も普及している機器を狙うのは当然のことで、すでにIoT機器を狙ったサイバー攻撃が度々観測されるようになりました。
IoT機器では、メーカが異なっても同一規格のハードウェアを採用し、搭載されるソフトウェア(OS、ミドルウェア、アプリケーション)もLinuxやWindowsなど、汎用のものをベースとする特徴があります。自社開発するのは一部のアプリケーションなどにとどめ、開発コストの削減を重視しています。このことは、パソコン系ソフトウェアに脆弱性が発見されれば、同じものがIoT系ソフトウェアにも潜在する恐れがあることを意味します。つまり、IoT機器でも、パソコン系ソフトウェアと同様に、セキュリティ更新の提供やメジャーバージョンへの入れ替えに迅速に対応することが求められることになります。
図1は2014年に発生した攻撃Shellshockを例として、IoT機器側の対策遅れと事後対応の困難さの問題を示しています。Shellshockは、Linux由来のコマンド入力用Bourne-Again shell(bash)に見つかった深刻な脆弱性を突く攻撃でした。通常、bashはコンソールにログインするなどして使用するものであり、一見すると標的のマシンへのログインが攻撃成功の必須条件に思えました。ところが実際には、WebサーバのCGIなど様々なプログラムがbashを呼び出していたため、Webサーバにアクセスするだけで外部からマルウェアを感染させることができる脆弱性となりました。
Linuxおよびbashは、様々なIoT機器のCGIで多用されていましたが、上記の理由などもあり、IoT機器ベンダーの対応は後手に回ってしまいました。その結果、Linuxベースで動作するNASがShellshock攻撃を受け、マルウェアに感染が多発する事態となりました。図1にあるように、NASのファームウェアを検査するアンチウイルスソフトが存在しなかったため、マルウェア感染後に、NAS保存されたデータを安全に救出することは事実上不可能となりました。
図1 LinuxベースNASでのマルウェア感染
従来の情報機器と比べると、IoT機器のハードウェアやソフトウェアの更新間隔は長くなります。パソコンの場合、セキュリティ更新などのサポート期間を、製品出荷後十年と設定しているソフトウェアが多いこともあり、パソコン本体を十年間も使用するなら、ソフトウェアを導入当初にインストールしたバージョンのまま使い続けるのは極めて稀です。特に、業務に使用するパソコンであれば、十年間に一度はOSの最新メジャーバージョン公開と、それに伴う旧バージョンのサポート終了に遭遇することは確実で、OS入れ替えは避けられません。さらに、最新OSの入れ替えに合わせて、ミドルウェアやアプリケーションも最新版に更新するのも通常よく行われています。
最新版では、新たなファイルフォーマットや通信プロトコルを採用するなどにより高機能化を図ると同時に、移行を支援するため旧版に対する下位互換性も維持するようになっています。一方で、高機能化や下位互換性維持を実現するために、最新のソフトウェアでは、稼働条件とするメモリやハードディスクのスペック要求が上がることになります。いつ来るかわからないソフトウェア群の総入替えを想定して、高スペックのハードウェアを購入することは非現実的ですので、現状でのスペック不足が懸念されれば、これらを換装(増設)したり、換装でスペック不足を解消できないのであれば、新型パソコンを購入する方が常識となっています。
このように従来の情報機器では、十年以内の機種更新を余儀なくされてきましたが、互換性維持のおかげで、年次計画で機種更新を進めていけました。これにより、段階的にサイバー攻撃に強い情報システムを揃えていたと言うこともできます。
これに対し、IoT機器は、セキュリティ更新までは想定したとしても、コスト最小化の観点から必要最小限のハードウェアスペックを必須としており、多くの場合で部品換装を想定した設計はなされていません。スマートフォンでも、不具合を起こした内臓部品の無償修理が、実際には新品との交換であることが珍しくありません。問題となる部品だけの換装作業は、無視できないほど大きなコストがかかるのです。
その結果、すでに多くのIoT機器で、メジャーバージョンへの更新に追従できない状況が発生しています。IoT機器よりも高機能(高額)であるスマートフォンですら、わずか数年で最新OSが求める最小スペックを満たせなくなり、脆弱性を抱えたままで使わざるを得ないというのが現状なのです。
冒頭に述べたIoT機器での使用プロトコルの変更、IDとパスワードの変更ですら簡単ではありません。IoT機器は地中や鉄塔上のような容易に保守作業ができない場所、地理的に分散した場所などに膨大な台数が設置されることもあります。場合によっては数万円のWebカメラの交換に数百万円の作業費がかかるなど、本体価格に対する設置・取替費用の比率が非常に高いため、設置後のセキュリティ強化作業は難しく、最悪の場合、放置されることもあります。
IDやパスワードがファームウェアに直に書き込まれて変更不能なIoT機器であれば、本体を回収して変更可能なファームウェアに入れ替える必要があります。さらに、そのような場合、IoT機器の制御プログラムもID・パスワードが決め打ちで設定されていることも多く、これを改修し、制御用コンピュータにインストールするなど、たった1件の脆弱性対応のために、様々なコストが発生することになります。
また、通信プロトコルを平文通信から暗号通信に変更する場合、暗号化・復号処理のためのCPUやメモリ資源が必要となります。必要最小限のハードウェアスペックで設計されたIoT機器で、必要な資源量が確保できなければ、前述の通り、部品換装ではなくIoT機器そのものの総入れ替えが必要になりますが、そのコストは無視できないほどになります。
したがって、IoT機器を導入する場合、設置後はセキュリティ対策のためであっても、保守作業が行えるかコスト面も含めて確認し、もしそうでなければ、致命的な脆弱性が見つかった際にどうするのかを、あらかじめ決めておく必要があります。
これまでの情報機器でのセキュリティ対策と言えば、Confidentiality(機密性)、Integrity(完全性)、Availability(可用性)の順番で重要と言われてきました。すなわち、情報の機密性が最優先事項で、サイバー攻撃による被害発生時には機密性を確保するためならば、全システムを止める可用性ゼロも、やむを得ないとされてきました。
しかし、IoTの世界では、AICとして可用性が最優先とされる傾向が高くなります。例えば、最近のビル空調システムでは、ビル内に設置したセンサーで得られた室温情報だけでなく、外気温の現在値と今後の予想値といった情報、ビル内の二酸化炭素濃度のセンサー情報などを総合的に分析し、取り込む外気量と冷暖房を制御しています。このようなシステムにサイバー攻撃が行われ何らかの被害が確認されたとしても、IoT機器が保持するデータの機密性や完全性を優先して、システム全体の可用性をゼロにする、すなわち換気を停止することはできません…最近のビルは窓は開けられませんので。
このように、IoT機器へのサイバー攻撃に関しては、単に、IoT機器の脆弱性対策やインシデント対応を行えば良いのではなく、IoT機器での対策や対応がシステム全体に、どのような影響を及ぼすかというセーフティまで考えることが求められます。さらに、情報機器だけを対象とするセキュリティから、我々の実社会に危害を加えないようにするリスク管理も考慮しなければならなくなったことを意味しています。
例えば、IoT機器が制御するシステムの用途を導入前に以下のように分類し、それぞれに応じた対策を講じる必要があります。
IoT機器による制御が失われると、システムが暴走し人体に危害を加える恐れがあるような場合、単一系のIoT機器で制御するということはあり得えませんので、制御系の多重化を検討する必要があります。さらには、代替手段として手動操作で必要最小限の機能を維持するデグレーデッドオペレーション(縮退運転)ができるように備える必要もあります。例えば空調システムの場合、制御が失われると、循環換気から強制換気に手動で切り替える機能や温度も手動で設定する機構を備え、これを操作する定期的な訓練を行うことを検討すべきです。
IoT機器による制御が失われる前に、システムを安全に停止させることができるのであれば、システム停止までに要する時間だけIoT機器を稼働させ続けるか、手動操作によってシステムを停止させることができるように備える必要があります。例えば、医療機器の場合、最後の手段として医師・看護師による手動操作でIoT機器とシステムを停止させ、手作業による医療行為が行える体制を整えることになります。
リスク管理では、被害を受けたIoT機器、当該機器の悪影響を受ける恐れがあるIoT機器を遮断する、通信を制限するなどのダメージコントロールを行うと同時に、それらによる制御を失っても、必要最小限のシステム機能を維持するデグレーデッドオペレーションを行う能力を備える必要があります。言い換えれば、個々の機器ではなくシステム全体でサイバー攻撃に対するレジリエントな体制を整えることが重要となります。
これらの対応をサイバー攻撃発生時に考えることは、混乱による判断ミスや作業ミスを誘引しかねませんので、あらかじめ手順を定めておく必要があります。ただし、サイバー攻撃による被害発生を全て想定することは難しく、まずは、手順どおりの暫定措置、それによる状況変化に応じて適宜、措置を変更するという柔軟な運用も求められます。
IoT時代においては、従来型の情報セキュリティ対策の考え方が適用できなくなりつつあります。最優先事項はIoT機器のセキュリティ対策やインシデント対応ではなく、それが制御するシステム全体の可用性の確保です。そのために採りうるダメージコントロールやデグレーデッドオペレーションの手法を早急に確立する必要があると考えます。
参考文献 | |
[1] | McAfee Labs, 2016年の脅威予測, http://www.mcafee.com/jp/resources/reports/rp-threats-predictions-2016.pdf |