組み込みのセキュリティが守るもの
丸山 サイバーセキュリティの世界は、何が起こったら怖いかっていうことが、一般の人にもかなり行き渡って、例えばコンピュータウイルス怖いとか、ハッキングでいろんなものを見られてしまって怖いとか、ありますよね。ですが組み込みのセキュリティっていうのが、何を守っているものなのかっていうことについては、ちょっと想像しづらいでしょうね。制御系の、いわゆる「セイフティ」の部分なのか、それともハッカーから車に攻撃を受けたら大変なことになるぞみたいな、そういうことのほうが強い前提としてあるのか。組み込みのセキュリティの守っているものっていうのが、みんな想像がつきづらいんじゃないかなと思うんですが。
井上 車に関していえば、動くものなので、ブレーキとかハンドルが外部から制御できてしまったら、非常に問題があるということになります。2015年にBlack Hatで市販車のハッキングが発表されました。それは、遠隔からハッキングすることで、ハンドルとブレーキとアクセルをいじることができるよっていうのをやって見せたんですね。それも売っている車そのままで、何もいじらない状態でできてしまうことが発表されて、それが大きな話題になりました。
丸山 楽々、制御できちゃうっていうことですね。
井上 その車にセキュリティホールが5つぐらいあって、それが順番に解かれてしまって、外部から不正なパケットを送ることで、車の制御ができてしまったということですね。本当に普通に走っている車を、いきなりハンドル曲げたりとかできたりするわけなんで、それはまずいですよね。発表したコンサルティング会社も発表するちょっと前に、ちゃんと自動車メーカーに先に話を持っていって、セキュリティホールを塞いだうえで発表してますけどね。
丸山 特にこういった車が狙われやすいといった傾向はあるんですか?
井上 アメリカの電気自動車メーカーの車がよく狙われている。なぜかというと、そのメーカーの車はいわゆるコンソール周りのものが全部Linuxで作られています。Linuxベースで作ると、なぜか毎回穴があるんですよね(笑)。たとえばログインID。当然組み込みだからそれぞれが固定なんですけど、車種名等を引用したIDで、パスワードがなんか入っているんですけど、そういうのがもうデフォルトIDで入っているので、パスワード総当たりでアタックしたらわかっちゃったとか、そんな話なんです。
丸山 ある意味古典的な、わりとサイバーセキュリティの手法が、そのまま使われてしまうんですね……。
井上 やっぱりLinuxベースで作る時に、車メーカーさんとかに、そういうサイバーセキュリティエンジニアがいないんだと思うんですよ。だって我々にしてみたら、明らかにそこは塞いどけっていうような場所ですからね。Linux使うと、ともかく安直に装置は作れるんだけど、逆にLinuxに存在してる脆弱性と、あとは、ちゃんと設定しないといけない脆弱性が、もうそのまま残ってしまって。
丸山 それは開発のところで、やっぱりセキュアプログラミングみたいな話ですか?
井上 そうそう。セキュアプログラミングというよりも、セキュア設定ですね。
丸山 セキュア設定ね。
井上 ほとんどがプログラミングの前の段階ですね。
丸山 パスワードファイルが暗号化されていないとか?
井上 ああ、それもありますよね。ちょっとここではとても言えないような、オフレコ的な話がたくさんあります(笑)。
丸山 車はすごく安全を考えて作らないといけないじゃないですか。いわゆるセイフティ。セイフティはすごい考えられて作られているんだろうなと思うんですけど、そういうセキュリティの視点、例えばハッカーとかの攻撃とかからの視点から見ると、やっぱり業界としては、まだダメっていう感じなんですか。
井上 たとえばLinuxだったら、Linuxっていうツールを便利なものとして使っているけれど、それが問題を起こす可能性っていうのは、あんまり考えて使っている感じがない。特に車メーカーさんはどこもそうですけど、外注していますからね。だから外注先に技術がないと、言われた通りに作るだけなので、機能的には問題ないけど、そういう脆弱性を残したままで完成させてしまう製品を作ってしまうっていう問題がありますね。
丸山 サイバー犯罪が起きても気づかないかもしれないですよね、ただの交通事故だと思って。
井上 さっきのハッキングされた車の話はほんとに特殊な例で、中核なとこに入れるようにはなかなかなってないですけどね。