米Tesla Motorsの「モデルS」に遠隔攻撃ができる脆弱性があることを発見した中国Tencentのセキュリティ研究者が2017年7月27日(米国時間)、開催中の「Black Hat 2017」でその手法の詳細を解説した。車載情報端末の脆弱性やファームウエアアップグレードの脆弱な仕組みが攻撃を可能にしていたことが判明した。

 Tencentのセキュリティ研究部門である「Keen Security Labs」は2016年9月にブログ記事YouTube動画を公開し、TeslaのモデルSには複数のセキュリティ脆弱性が存在し、ネットワーク経由で車内システムに侵入して、リモートからドアを解錠したり、運転中の車両のワイパーやブレーキを作動させたりできると公表していた。

 Tencentは脆弱性情報を公開する前にTeslaに報告しており、Teslaは即時に脆弱性を修正していた。それから約1年が経過した今回、世界最大のセキュリティカンファレンスであるBlack Hat 2017で、Tencentのセキュリティ研究者が攻撃手法の詳細を解説した。

写真1●Black Hat 2017で講演する中国Tencentのセキュリティ研究者
写真1●Black Hat 2017で講演する中国Tencentのセキュリティ研究者
[画像のクリックで拡大表示]

 Tencentによれば、攻撃の流れは以下のようなものだった。

  1. Tesla車の通信機能に存在した脆弱な仕様をついて車載情報端末用の車内ネットワークに侵入
  2. 車載情報端末のWebブラウザーに存在した脆弱性を攻撃して、任意のコードを実行可能に
  3. 車載情報端末のLinuxカーネルに存在した脆弱性を攻撃して、ルート権限を取得
  4. 情報端末用の車内ネットワークと、制御系ネットワーク(CAN)とをつなぐ「コントローラー」を攻撃して、コントローラーのファームウエアを書き換え
  5. コントローラーから電子制御ユニット(ECU)に偽のコマンドを送り自動車を遠隔操作

無線LAN接続時の不用意な仕様をついて車内に侵入

 まずはTesla車の車内ネットワークに侵入する方法だ。Tesla車は、Teslaが運営する自動車販売店やバッテリー充電スポットに用意してある無線LANアクセスポイントに、自動的に接続する仕様になっている。その無線LANアクセスポイントのSSIDとパスワードは全ての場所で共通であり、しかもパスワードは「abcd123456」といった具合に非常に脆弱だった。

 またTesla車が搭載するLinuxベースの車載情報端末は、車が無線LANアクセスポイントに接続すると、Webブラウザーが開いていたWebページを自動的にリロードする仕様になっていた。しかも車載情報端末のWebブラウザーである「QtCarBrowser」は、古いバージョンの「WebKit」をレンダリングエンジンとして使用しており、車載情報端末上で任意のコードが実行できる脆弱性(「CVE-2011-3928」など)が存在していた。

 こうした脆弱性があったため、Tencentは偽の無線LANアクセスポイントを設けてTesla車を接続させ、車載情報端末のWebブラウザに攻撃用の偽のWebページを表示させた上で、車載情報端末で任意のコードを実行させることができた。また無線LAN経由だけでなく、3G通信機能を使っても車載情報端末で任意のコードを実行させる手法があったという。ただしその場合は、Tesla車のユーザーにフィッシング攻撃を仕掛ける必要があった。