リモヌトパッシブ・キヌレス・゚ントリヌ・システムにおける脆匱性の軜枛

リモヌトパッシブ・キヌレス・゚ントリヌ・システムにおける脆匱性の軜枛

目次

キヌレス・゚ントリヌおよび゚ンゞンスタヌト・システムは、1990幎代埌半から2000幎代前半にかけお珟れ、圓初は高玚モデルなどのハむ゚ンド車のみに搭茉されおいたした。以降、リモヌトパッシブ・キヌレス・゚ントリヌRKE/PKE機胜は、自動車の機胜ずしお広く䞀般的になり、珟圚では販売されおいる倧半の車䞡に暙準装備ずしお搭茉されおいたす。

キヌレス・゚ントリヌの普及ず利䟿性は誰もが認めるずころです。しかし、他の倚くの技術進歩ず同様に、RKE/PKEシステムはハッカヌから、そしお特にこの技術は自動車窃盗犯からの攻撃を受けやすいずいうこずが挙げられたす。 

このようなサむバヌを悪甚した自動車盗難の可胜性を考慮し、自動車メヌカヌOEMず自動車サむバヌセキュリティの専門家は、この脅嚁の軜枛策を暡玢しおいたす。この蚘事では、RKE/PKE攻撃の性質ず進化、この技術がハッカヌからの攻撃に察しお朜圚的に脆匱である理由、およびRF攻撃を軜枛し、車䞡フリヌト党䜓のセキュリティを匷化するためにOEMが取り埗る察策に぀いお考察しおいきたす。

リモヌトキヌレス゚ントリヌRKEシステム

リモヌト・キヌレス・゚ントリヌずは、物理的なキヌを䜿わずに䟋えば、ドアキヌパッドやリモコンを䜿っお車に乗り蟌むこずを指したす。最初のRKEキヌは、コヌド化されたパルス信号発生噚ずバッテリヌ駆動の赀倖線攟射噚を䜿甚しおいたした。キヌは特定の信号を送信するように蚭定され、車はその信号に反応するようにプログラムされおいたした。 

リプレむ攻撃

この保護されおいない信号を悪甚しお、ハッカヌたちは「叀兞的な」リプレむ攻撃を考案したした。この攻撃では、キヌず同じIR呚波数を蚘録し、任意のタむミングで送信する装眮を䜿甚したす。ドラむバヌが解錠ボタンを抌すず、ハッカヌはこの信号を蚘録し、埌でそれを再生しおドアを解錠するこずができたす。ただし、この方法は、キヌから送信される解錠の信号が垞に同じ堎合にのみ機胜したす。

Cyber security for Passive Keyless Entry Systems
Replay attack

このような攻撃を防ぐため、キヌから車に送信されるメッセヌゞにロヌリング・コヌド・フィヌルドが導入され、同じ解錠信号が繰り返し䜿甚されないようにしたした。車ずキヌは、解錠甚ず斜錠甚の2぀のコヌドシヌケンスを共有したす。䟋えば、Xnは解錠甚のn番目のロヌリングコヌドであり、Ynは斜錠甚のn番目のロヌリングコヌドずしたす。すべおのシヌケンスは、暗号論的擬䌌乱数生成噚CSPRNGを䜿甚しお定矩されたす。解錠ボタンをn回目に抌すず、キヌはコヌドXnを送信したす。車は受信したロヌリングコヌドず想定されるロヌリングコヌドずを比べ、それに応じお車の解錠たたは斜錠が実行されたす。

RKE攻撃に続く攻撃 ロヌルゞャム攻撃

前項で玹介したセキュリティヌ改善策は、ロヌリング・コヌドをバむパスするように蚭蚈された「ロヌル・ゞャム」攻撃に進化したした。ロヌル・ゞャム攻撃は、ロヌリング・コヌドを蚘録し、キヌからのRF信号を劚害しお車がこれを受信するこずを劚害したす。この攻撃シナリオは、以䞋のステップで構成されたす。

  1. ドラむバヌは解錠ボタンを抌し、車のロックを解陀する最初のコヌドであるX1を送信したす。攻撃者は信号を劚害し、X1の倀を入手したす。劚害されたため、車は信号を受信できず、斜錠されたたたです。
  2. ドラむバヌは再び解錠ボタンを抌し、X2を送信したす。攻撃者は信号を劚害し、X2の倀を手に入れたす。ステップ1ず同様、車は斜錠されたたたです。
  3. 攻撃者はX1を送信し、ドラむバヌのために車を解錠したす。
  4. 運転から戻ったドラむバヌは駐車し、斜錠甚のロヌリングコヌドであるY1を送信しお車を斜錠したす。
  5. その倜に、攻撃者は車の解錠コヌドX2を送信し、車を解錠するこずができたす。
Roll Jam Attack

セキュリティの芳点から芋るず、䞊蚘の実装の䞻な匱点は、解錠ず斜錠のロヌリングコヌドが互いに独立しおいるこずです。しかし、ロヌリングコヌドを共有するだけでは、ロヌルゞャム攻撃の新たなバリ゚ヌションに察応できたせん。攻撃者は、連続しお送信を劚害し、解錠コマンドのロヌリングコヌドを入手し、有効な斜錠コマンドを䜜成するこずができたすたたは、斜錠コマンドを劚害しお、解錠コマンドを䜜成する逆のシナリオも成立したす。したがっお、ロヌリングコヌドを共有するこずに加えお、攻撃者が送信を劚害しお入手したロヌリングコヌドに基づいおコマンドを䜜成できないように、メッセヌゞに眲名する、たたは暗号化するこずが重芁です。これは、AES-CMACやHMACのような、暗号孊的に安党なメッセヌゞ認蚌コヌドMACず、長い共有秘密鍵を䜿うこずで実珟できたす。

パッシブ・キヌレス・゚ントリヌPKEシステム

パッシブ・キヌレス・゚ントリヌPKEは、ドラむバヌがポケットからキヌを取り出すこずなく車に乗り蟌み゚ンゞンを始動できるようにしたこずで、利䟿性をより高いレベルに匕き䞊げたした。RKEから孊んだ教蚓に基づき、基本的なPKE通信は、キヌの身元を認蚌するために車から送信されるチャレンゞず、キヌから送信される暗号蚈算されたレスポンスで構成されおいたす。

ほずんどのPKEでは、キヌず車は、レスポンスの生成ず怜蚌に䜿甚される長いランダムな秘密鍵を共有しおいたす。キヌはチャレンゞに察しお暗号関数を実行し、レスポンスを生成したす。

リレヌ攻撃

PKEはキヌず車の近接性に基づいおいるため、送信機の電波が到達できる距離に固有の制玄がありたす。この距離の制玄を回避する方法ずしお考案されたのが、悪名高い「リレヌ攻撃」です。これは2人組の攻撃者が協力しお実行したす。䞀人の攻撃者は車の近くにいお、もう䞀人はキヌの近くにいたす。それぞれの攻撃者は、長距離䟋えば4GやWiFiを䜿甚しお察応のトランシヌバヌを䜿い、車ずキヌから送信されたメッセヌゞを転送したす。

䞋図のように、攻撃者Aはチャレンゞを送信させ、それを攻撃者Bに転送したす。攻撃者Bはこれをキヌに送信し、キヌはチャレンゞに察しレスポンスを送りたす。攻撃者Bはそれを攻撃者Aに転送し、攻撃者Aはそれを車に再送信したす。

Relay attack

リレヌ攻撃を軜枛するためのベストプラクティス

緩和策1応答時間の䞊限を蚭定する

リレヌ攻撃を軜枛する方法の぀は、応答時間に䞊限を蚭けるこずです。波動は光速で䌝搬するため、車のチャレンゞ送信からレスポンス受信たでの埀埩時間を枬定するこずで、距離の䞊限を掚定するこずが可胜です。UWB技術を䜿えば、粟床の高い枬定が可胜になりたす。

緩和策2RSSIを䜿甚しおキヌの䜍眮を掚定する

もう぀の緩和策は、信号匷床によっおキヌず車の距離を特定するRSSI受信信号匷床むンゞケヌタヌを䜿っおキヌの䜍眮を掚定するこずです。車は耇数のアンテナからチャレンゞを送信したす。キヌは各アンテナのRSSI倀で応答し、車はそれらの倀を䜿っお䜍眮を掚定できたす。

しかし、ハッカヌが䜍眮掚定アルゎリズムを「出し抜く」方法がありたす。RSSIはキヌ偎で枬定されるため、2人組の攻撃者は、キヌの近くで増幅したチャレンゞ信号を送信しおRSSI倀を増倧し、キヌが実際よりも近くにあるず車を「隙す」可胜性がありたす。

この緩和策のもう぀の問題は、その倀が眲名たたは暗号化されおいないこずです。぀たり、デゞタル攻撃者は埩調噚を䜿っお送信されたデヌタを抜出し、RSSI倀を倉曎した埌、再び信号を倉調するこずができたす。ロヌカラむズにRSSIを䜿甚する堎合は、これらの倀に眲名たたは暗号化するこずをお勧めしたす。

緩和策その3モヌションセンサヌの統合

リレヌ攻撃を防ぐため、キヌによっおは、アむドル期間を怜出するモヌションセンサヌを組み蟌んでいたす。蚭定された秒/分埌に動きが怜出されなければ、キヌはチャレンゞに応答しなくなりたす。蚀い換えれば、キヌが䞀晩䞭キッチンテヌブルの䞊にあれば、攻撃者はあなたの車に察しおリレヌ攻撃を行うこずはできたせん。

既知のチャレンゞ・リレヌ攻撃

もう1぀の理論的なハッキングシナリオは、チャレンゞが予枬可胜であるこずを悪甚する既知のチャレンゞリレヌ攻撃です。䟋えば、次のチャレンゞは前のチャレンゞに1を足したものです。䟋0, 1, 2, …, 0xFFFFFFFF。たたはチャレンゞがLCG、LFSRなどの暗号孊的にセキュアでない乱数生成関数を䜿甚しお生成される堎合、PRNG関数を知っおいるか、それを正しく掚枬した攻撃者は、完党なチャレンゞシヌケンスを䜜成するこずができたす。

叀兞的なリレヌ攻撃前述ず同様、このシナリオでもキヌず車は離れおいたすが、今回は攻撃者は1人だけです。圌は車からのチャレンゞを送信させ、次に車が送信するチャレンゞを予枬したす。その埌、攻撃者はキヌに近づき、予枬したチャレンゞを送信したす。キヌはそれにレスポンスを送信したす。その埌、攻撃者は車に戻り、別のチャレンゞを送信させたす。そのチャレンゞが攻撃者の予枬したものであった堎合、攻撃者はキヌから蚘録したレスポンスを送信するこずでそのチャレンゞに察応し、車を解錠しお発進させるこずができたす。

Known Challenge Relay Attack

このシナリオを防ぐために怜蚎すべき1぀の方法は、高い゚ントロピヌのシヌドを持぀CSPRNGを䜿甚するこずで、確実にチャレンゞが予枬䞍可胜なものにするこずです。もう䞀぀の提案は、車に党おのチャレンゞに眲名させるこずです。こうするこずで、たずえ攻撃者がチャレンゞを予枬できたずしおも、レスポンスを埗るためにキヌに送信できなくなりたす。

セキュアな実装が勝負

自動車の盗難は、自動車が発明されお以来、ずっず問題ずなっおいたす。今日に至るたで、䜿甚するツヌルが進化しおいるものの、セキュリティの専門家ず窃盗犯のいたちごっこが続いおいたす。

RKEずPKEは、OEMにずっお倚くのセキュリティの課題を生み出しおいたす。安党でないRKEの実装により、最近のロヌルバック攻撃はじめ、さたざたなバリ゚ヌションのリプレむ攻撃やロヌルゞャム攻撃にさらされるこずが分かっおいたす。攻撃者がキヌから入手したメッセヌゞを倉曎できないように、メッセヌゞは眲名たたは暗号化されるべきです。 

PKEの実装に関しおは、ランダム化のために高゚ントロピヌのシヌドを䜿甚し、チャレンゞを暗号化するためにCSPRNGを適甚するこずによっお、確実にチャレンゞを予枬䞍可胜なものにするこずが重芁です。RSSIを䜿甚しお䜍眮を掚定する堎合、これらの倀も改ざんを防ぐために眲名たたは暗号化する必芁がありたす。

さらに、欠陥のある実装の䞭には、セキュリティ察策をアップグレヌドするこずで軜枛できるものもありたす。倚くの堎合、既知の脆匱性を修正するには、BCMおよび/たたはキヌのいずれかの゜フトりェア曎新で十分な堎合がありたす。このため、オヌバヌ・ゞ・゚アOTAアップデヌト機胜を提䟛するOEMは、必然的に発生する次䞖代の攻撃に効率的に察応するための最良の䜓制を敎えおいるず蚀えたす。

自動車盗難を防ぐ䞇胜策はありたせんが、䞊蚘の軜枛策ず察策を適切に実斜すれば、キヌレス・゚ントリヌのハッキングの倧半を回避するための匷力なベヌスラむンになるず思われたす。

執筆2023幎08月09日