2018年1月19日

油断は禁物:電気自動車の充電にもセキュリティ問題

テクノロジー ニュース

電気自動車は未来のものでまだ実用には至らないと思われていましたが、ここ5年の間に驚くほど状況が変わり、人々が持ちたがるものになりました。価格が大幅に引き下げられたこともあって、電気自動車の販売台数は2017年のはじめに200万台(英語)に達し、現在も伸び続けています。電気自動車向けのインフラ整備も急速に進み、近所でも充電スタンドを見かけるようになりました。

商機が急激に拡大する過程でよくあることですが、メーカーはこぞって競争に参加し、できるだけ多くの市場シェアを獲得しようとする一方、次に何が起こるか深く考えることは置き去りです。もちろん、ここで言うのはセキュリティの話です。とはいっても、物理的な安全性ではなく(充電器が怪我の原因となる可能性は低いので)、サイバーセキュリティのことです。現在導入されている支払いや充電システムの基本概念は、保護されるべき個人情報や金銭についてあまり考慮されていません。マティアス・ダルハイマー(Mathias Dalheimer)氏は、Chaos Communication Congress(34C3)でこの問題を取り上げ、電気自動車向けインフラの脆弱性について発表しました。

充電の仕組み

電気自動車の増加に従って、充電スタンドの数も増えています。充電スタンド業者は、お金と引き換えに電気を供給します。この取引を行うには、組み込みの請求システムが必要です。

自動車の充電を始めるには、まず、自分の身元を証明しなければなりません。身元証明に使われるのは、所有者の銀行口座にひも付いた特別な近距離無線通信(NFC)カードです。

電気自動車充電に対する課金は、オープンチャージポイントプロトコル(OCPP)を使って行われるのが普通です。OCPPは、課金管理システムと充電スタンド間の通信を制御するプロトコルです。充電スタンドは、身元確認リクエストを課金管理システムに送り、課金管理システムはリクエストを承認して、充電スタンドへ通知します。これで、充電スタンドで充電できるようになります。充電が済むと、電気量が計算されて課金管理システムに送り返され、月末には請求書が発行されます。

意外なことは何もなく、さほど目新しいこともありませんが、さて、どこに問題があるのか詳しく見てみましょう。

いたるところに問題が

ダルハイマー氏は、システムのさまざまなコンポーネントを徹底的に調べ、すべてのコンポーネントにセキュリティ上の問題があることを発見しました。まずは、認証カードです。カードを作成しているのはサードパーティのプロバイダーですが、なんと、ほとんどのカードでデータを保護していませんでした。認証カードはごく単純なNFCカードで、中に記録されたIDなどのデータは暗号化されていません。問題はまだあります。カードのプログラミングはとても簡単で、ダルハイマー氏は実際に自身のカードを複製し、それを使って充電して見せました。必要な知識があれば、大量のカードをプログラミングすることは簡単でしょうし、そのうちのどれかが実際の口座番号と一致するかもしれません(ただし、ダルハイマー氏は、倫理上の理由からそこまでは試してはいません)。

充電事業者からの請求は月に1回なので、先ほどの方法で自動車所有者の口座が不正利用されても、次の請求書が届くまでまったく気付かないでしょう。

手続きにはもう1つ、ずさんな点があります。大半のスタンドは、2012年バージョンのOCPPを使用していますが、このバージョンはすでに比較的古いものですし、ベースになっているのはHTTPです(HTTPの何が問題かはお分かりでしょう、トランザクションで暗号化が使用されないのです)。ダルハイマー氏は、トランザクションを中継することでどれほど簡単に中間者攻撃を仕掛けることができるか、実演して見せました。

さらに、ダルハイマー氏が調査したスタンドの両方とも、USBポートがついていました。ここに空のUSBメモリを差し込むと、ログと構成データがUSBメモリにコピーされます。このデータから、OCPPサーバーのログインIDとパスワード、さらには過去のスタンド利用者の認証番号を簡単に手に入れられます。これだけあれば、カードの複製には十分です。

さらに悪いことには、USBメモリにコピーしたデータを改竄し、もう一度このドライブを充電スタンドのUSBポートに差し込むと、充電スタンドはUSBメモリのデータを自動的に取り込み、新しい設定として使用します。ハッカーにしてみれば、新しい可能性がいくつも開けることになります。

まとめましょう。悪意ある第三者は、認証カード番号を収集し、複製し、取引に使用することができます(この場合、本物のカード所有者が使用料を支払うことになります)。また、課金リクエストをリダイレクトし、充電スタンドを使えなくすることもできます。さらに、充電スタンドへのルートアクセス権を取得し、好き勝手することも可能です。すべては、充電サービス事業者がセキュリティを気にかけていないからなのです。