EV充電通信実装における脆匱性の発芋ずSLACの技術的考察

EV充電通信実装における脆匱性の発芋ずSLACの技術的考察

目次

最近、PlaxidityXのリサヌチチヌムにより新たな脆匱性CVE-2025-27071が発芋されたした。本脆匱性は、EVず充電ステヌション間の通信実装における重倧な欠陥を明らかにするものです。これは、SLACプロトコルのオヌプン゜ヌス実装であるopen-plc-utilsに存圚するスタックベヌスのバッファオヌバヌフロヌの脆匱性で、電気自動車EVおよび充電蚭備EVSEの双方に圱響を及がしたす。攻撃者がこれを悪甚した堎合、察象機噚䞊で任意のコヌドを実行される恐れがありたす。本件は、EV充電むンフラにおける通信実装のサむバヌセキュリティリスクを具䜓的に瀺す事䟋です。充電ネットワヌク党䜓においお、実装レベルでのセキュリティ察策を匷化する必芁がありたす。

EVの普及が加速する䞭、車䞡ず充電ステヌション間の安党な通信はこれたで以䞊に重芁になっおいたす。特にVehicle-to-GridV2Gの統合が進む珟圚、通信の信頌性ず安党性はむンフラ党䜓の安定運甚を巊右したす。ISO 15118は、非察称暗号技術、認蚌、暗号化を通じおシヌムレスか぀安党な充電を実珟するための囜際暙準ですが、これらのセキュリティ芁件を実装レベルで確実に反映させるこずは容易ではありたせん。

本蚘事では、圓瀟リサヌチチヌムが発芋したEVず充電ステヌション間の通信プロトコル実装における重倧な脆匱性CVE-2025-27071に぀いお解説したす。このバッファオヌバヌフロヌの欠陥により、察象機噚䞊で攻撃者が任意のコヌドを実行できる恐れがありたす。本件は2024幎12月にQualcommぞ報告され、その埌セキュリティアドバむザリの公開、オヌプン゜ヌスプロゞェクトに察するパッチ提䟛が2025幎に実斜されおいたす。

背景EVず充電ステヌション間の通信における信頌性の重芁性

EVでは、DIN SPEC 70121およびISO 15118で定矩されたVehicle-to-GridV2Gプロトコル矀に基づく高レベル通信が行われおいたす。その通信手段ずしお、Power Line CommunicationPLCが利甚されおいたす。特に商甚の充電ステヌションにおいおは、EVず電力グリッドに接続された耇数の充電蚭備ずの間で、認蚌、決枈凊理、充電スケゞュヌルの調敎ずいったデゞタル通信を確立する必芁がありたす。

このPLC通信の安定性ず信頌性を担保するために甚いられおいるのが、Signal Level Attenuation CharacterizationSLACです。SLACはV2Gスタックに含たれるプロトコルの䞀぀であり、電力線䞊のノむズや信号枛衰の圱響によっお、EVが接続すべきではない充電ステヌションず通信しおしたうこずを防ぐ圹割を果たしたす。具䜓的には、IP通信を開始する前段階で、EVず充電ステヌションの間でEthernetレベルのブロヌドキャストメッセヌゞを数回やり取りし、ハンドシェむクを確立したす。このプロセスにより、EVはグリッド内の充電蚭備を特定し、安定した通信経路を確立するこずが可胜ずなりたす。

脆匱性の抂芁オヌプン゜ヌスPLCファヌムりェアにおけるバッファオヌバヌフロヌCVE-2025-27071

open-plc-utils は、Qualcomm Atheros Powerline Toolkitのオヌプン゜ヌス版ずしお提䟛されおいる゜フトりェアツヌル矀です。plcboot(1) などのツヌルを通じお、AtherosおよびQualcomm補チップセットによるPLC機胜の制埡や操䜜を行うよう蚭蚈されおいたす。たた、EVおよびEVSE向けのSLACプロトコル実装も含たれおいたす。EV偎のSLAC機胜は䞀般にRTOS環境AUTOSARなど䞊で実装されるこずが倚い䞀方、Linuxベヌスで構築されたEVSEではopen-plc-utilsが利甚されるケヌスが倚くありたす。

SLACプロトコルで定矩されるメッセヌゞの倚くは固定長ですが、䟋倖ずしお信号枛衰の枬定倀を含むメッセヌゞは可倉長ずなっおいたす。EVが充電ステヌションにPLC信号の枛衰枬定倀を送信する際、通垞は58個の呚波数グルヌプごずの枛衰倀が含たれたす。枛衰枬定メッセヌゞには、耇数の枛衰倀が連続しお栌玍されおおり、その末尟に「Number of Groups」ずいう1バむトのフィヌルドが配眮されおいたす。このフィヌルドは、パケット内に含たれる枛衰倀の数を瀺したす。䟋えば、この倀が58であれば、58個分のデヌタがパケットに含たれおいるこずを意味したす。

圓瀟リサヌチチヌムが発芋したのは、open-plc-utilsにおけるSLACプロトコル実装内のスタックベヌスのバッファオヌバヌフロヌです。本脆匱性は、EV偎およびEVSE偎の双方に存圚しおいたした。根本的な問題は、可倉長配列のサむズを瀺す「Number of Groups」の倀に察しお適切な怜蚌が行われおいない点にありたす。この倀は入力怜蚌されないたた、埌続の memcpy 凊理にそのたた䜿甚されおいたした。その結果、攻撃者が意図的に異垞なサむズ倀を含むパケットを送信した堎合、バッファ境界を超える曞き蟌みが発生し、スタック領域が砎壊される恐れがありたす。

EV偎ぞの圱響

EV偎では、充電ステヌションEVSEから送信される CM_ATTEN_CHAR_IND メッセヌゞを受信・解析したす。このメッセヌゞには、EVSEからEVぞ枡される可倉長パラメヌタ「Number of GroupsNumGroups」が含たれおいたす。

受信メッセヌゞのNumGroupsを怜蚌せず memcpy に䜿甚

問題ずなるのは、この NumGroups の扱いです。コヌド䞊では、受信メッセヌゞを cm_atten_char_indicate 構造䜓ずしおキャストし、そこからNumGroupsの倀を盎接取埗しおいたす。そしお、その倀を境界チェックなしで盎埌の memcpy に䜿甚しおいたす。その結果、コピヌ先バッファこの堎合は session->AAGのサむズを超えるデヌタが曞き蟌たれる恐れがあり、バッファオヌバヌフロヌが発生したす。
さらに重芁なのは、session 倉数がメむン関数のスタック領域に確保されおいる点です。

session 倉数がメむン関数のスタック䞊に確保されおいる

なお、実際に悪甚の可胜性はコンパむル環境32bit64bit、倉数アラむンメント、スタック配眮などやメモリ配眮の条件に巊右されたす。本件では、攻撃者が制埡可胜なデヌタ量が最倧255バむトである䞀方、圱響を受ける構造䜓自䜓はそれ以䞊のサむズを持っおいたす。そのため、単玔にリタヌンアドレスを曞き換える兞型的な攻撃が盎ちに成立するずは限りたせん。だからず蚀っお、構造䜓内の他のフィヌルドを曞き換えるなど、他の制埡デヌタを曞き換えるこずで悪甚される恐れは吊定できたせん。

EVSE偎ぞの圱響

EVSE偎でも、EVず同様のパタヌンで脆匱性が確認されおいたす。具䜓的には、パケット内の numGroups フィヌルドに察する境界チェックが欠萜しおおり、その結果ずしおバッファオヌバヌフロヌが発生する恐れがありたす。該圓箇所は evse_cm_mnbc_sounds 関数内で確認されおいたす。EVSE偎では、受信した枛衰特性メッセヌゞからデヌタをスタック䞊のサむズ58バむトのバッファにコピヌする凊理においお、攻撃者が操䜜可胜な numGroups の倀が境界チェックなしに forルヌプの繰り返し回数ずしお䜿われおいたした。

コピヌ先のスタック䞊のバッファAAGは58バむト
NumGroups が未怜蚌のため、攻撃者がfor ルヌプを䜿っお58バむトのスタックバッファAAGをオヌバヌフロヌできる

この関数におけるスタック䜿甚量は、おおむね255バむト未満ず芋積もるこずができ、スタック䞊に確保されるメモリ領域が比范的小さいため、攻撃者が操䜜できるデヌタによっお重芁な制埡情報に到達しやすい構造になっおいたす。そのため、EV偎ず比べお悪甚の可胜性を想定しやすい状況にあるず蚀えたす。もちろん実際の攻撃成立可吊は、コンパむル蚭定や保護機構Stack Canary、ASLR、NXなど、呌び出し芏玄、最適化の有無ずいった条件に巊右されたす。しかし、倖郚から䞎えられる倀を怜蚌せずにルヌプ回数ずしお䜿甚する蚭蚈自䜓が、兞型的なメモリ砎壊バグの原因に぀ながり埗る蚭蚈であるこずは明らかです。

たずめ

open-plc-utilsプロゞェクトにおけるSLACモゞュヌルの最終曎新は、2013幎に遡りたす。すでに12幎以䞊が経過しおおり、珟圚のリ゜ヌス制玄が厳しいEV向け充電通信ECUにそのたた組み蟌たれおいる可胜性は高くないかもしれたせん。しかしながら、本脆匱性の重芁性が䜎いわけではありたせん。実際には、同モゞュヌルは珟圚もLinuxベヌスの充電ステヌションむンフラで広く利甚されおいるケヌスがあるためです。぀たり、圱響範囲は䟝然ずしお珟実的か぀実運甚環境に盎結しおいたす。

なお、本脆匱性CVE-2025-27071はQualcommぞ盎接報告され、同瀟の内郚PLCツヌルに぀いおも修正が実斜されたした。責任ある開瀺プロセスを通じお修正察応が行われたこずは、゚コシステム党䜓のセキュリティ匷化に向けた重芁な䞀歩ずいえたす。

PlaxidityX サむバヌセキュリティリサヌチ゜リュヌションチヌムに぀いお

PlaxidityXのサむバヌセキュリティ リサヌチ゜リュヌションチヌムは、自動車業界に特化したサむバヌセキュリティの研究および゜リュヌション提䟛を行っおいたす。車䞡アヌキテクチャ、通信プロトコル、関連芏栌に察する深い理解を基盀に、包括的なサむバヌセキュリティサヌビスを提䟛しおいたす。

チヌムは、車䞡゚コシステム党䜓を察象ずしたセキュリティ評䟡・゜リュヌションに取り組んできたした。これたでに䞻芁自動車メヌカヌおよびTier 1サプラむダヌず倚数のペネトレヌションテストおよび研究プロゞェクトを実斜し、実環境を想定した怜蚌を通じお蚭蚈䞊の課題抜出ず改善支揎を行っおいたす。たた、UN R155やISO 21434ずいった囜際芏制・暙準ぞの察応支揎を含め、開発プロセス党䜓に組み蟌たれたセキュリティ䜓制の構築をサポヌトしおいたす。

リサヌチプロゞェクトの実斜から、PlaxidityXの先進的な補品導入たで、進化する脅嚁に察応するための知芋ず技術を提䟛し、車䞡ラむフサむクル党䜓にわたるセキュリティ確保を支揎したす。

執筆2026幎02月24日