PwCサイバーサービスは2017年12月5日、IoT端末などの組み込み機器を対象に、ハードウェア、ソフトウェアの両面から詳細に調査し、脆弱性を洗い出す施設「ハードウェアハッキング・ラボ」を開設し、稼働を始めた。ネットワークカメラなど、IoT技術でインターネットにつながる機器が増えているが、脆弱性を突かれて攻撃の踏み台にされてしまうなどの事例も急増している。海外では、発電所や医療機関などがネットワークから攻撃を受けて機能停止に追い込まれるという事件も発生している。IoTでつながる組み込み機器の脆弱性は、社会の安全や人命に関わる重大な事件に繋がる可能性がある。
ハードウェアハッキング・ラボの分析対象は自動車、工場の製造機器、医療機器、家電製品など、IoTの技術でインターネットにつながる機能を持つ組み込みシステム。このような機器の脆弱性は、企業情報システムを対象とした脆弱性診断では発見できない。ハードウェア、ソフトウェアそれぞれに潜む脆弱性を探すために、機器の分解分析や、組み込みプログラムコードのリバースエンジニアリング(バイナリからプログラム言語のコードに逆変換すること)などの高度な技術を駆使して、診断に当たる。ソフトウェア、ハードウェアそれぞれのハッキング技術を持つ専門家を動員し、日本国内で最高レベルの技術でサービスを提供するという。
ある自動車の脆弱性診断では、下図のような手順でテストを実施するという。まず、自動車が持つ汎用インターフェースに接続する。インターフェースから取得できてはいけないデータがないかどうかを確認するのだ。次に自動車が搭載するフラッシュメモリやブートローダーから組込みソフトウェアのバイナリを取得する。そして、バイナリに入っているOSやミドルウェアなどの脆弱性を分析し、バイナリからのリバースエンジニアリングでプログラムコードを生成する。
図 ある自動車の脆弱性診断の例
出所 PwCサイバーサービス
ソースコードを取得できたら、ソースコードの記述に不備がないかを調べる「静的テスト」や、プログラムの動作におかしなところがないかを調べる「動的テスト」、などさまざまなテスト手法で組み込みプログラムを詳細に分析する。
分析によって脆弱性が見つかったら、それがネットワーク経由で利用可能であるかを確かめる。さらに、見つかった脆弱性を攻撃するテスト用攻撃コードを攻撃者の立場に立って作製し、攻撃を実行してどういう結果を招くのかを確認する。
PwCサイバーサービスは、組み込み機器のセキュリティをより強固にするには、同社がすでに提供している「セキュアプロセスの構築支援サービス」も併用することを薦めるとしている。このサービスでは製品の企画段階から設計、開発、製造、販売、購入者による利用、修理などのメンテナンス、利用後の廃棄のそれぞれの過程すべてでセキュリティ品質を確保する体制づくりを支援する。
上記のどの段階でも、対策が不十分になっていると、本来漏れてはいけない情報が漏えいする可能性があるからだ。例えば修理時に、担当エンジニアが知ってはいけない情報を取得できるようになっているということもある。製品を使い終わって廃棄したとしても、それを拾って残っているデータを調べることで個人情報を簡単に取得できてしまうということもある。
PwCサイバーサービスのハードウェアハッキング・ラボでは、自動車に限らず、各種IoT製品、組み込み機器、プラント設備など、多様な機器を対象に脆弱性を診断するとしている。
■リンク
PwCサイバーサービス