Andersonの視点

NVIDIA、Tesla Autopilotの電圧故障攻撃の脆弱性を確認

mm
Unite.AI を Google の優先ソースに追加

ドイツの新しい研究論文では、NVIDIAがTeslaのオートパイロットシステムのコード実行を特権で制御できるハードウェアの脆弱性を確認したと述べている。この攻撃は、ハードウェアを不安定にするために電圧サージを導入する「古典的な」方法を使用し、この場合、通常は消費者に無効化されているブートローダーを解除することができる。このブートローダーは、実験室の条件でのみ使用されるように設計されている。

この攻撃は、メルセデス・ベンツのインフォテインメントシステムにも有効であるが、潜在的に有害な結果は少ない。

論文は、ベルリン工科大学からのもので、The Forgotten Threat of Voltage Glitching: A Case Study on Nvidia Tegra X2 SoCsというタイトルが付けられている。この論文は、同研究者が最近発表した、AMD Secure Encrypted Virtualizationにおける類似の脆弱性の公開に続くものである。同様の脆弱性は、8月12日に公開された。

新しい論文では、次のように述べられている。

NVIDIAに私たちの発見を責任を持って開示し、実験の設定とパラメータを提供した。NVIDIAは私たちの実験を再現し、障害注入がテストされたTegra Parker SoCと以前のチップに影響を与えることを確認した。彼らの話によると、新しいTegra SoCは、この種の攻撃を軽減するための対策が含まれているという。さらに、彼らは脆弱なチップでの電圧故障注入の有効性を低減するための対策を提案した…

論文では、この研究で示された攻撃は、システムのファームウェアを変更して、自律車が人間の障害に反応する方法を変更することができることを示唆している。また、コックピットディスプレイシステムを操作することによっても、現在の走行速度などの重要な情報の表示を変更することができるという。

電圧故障注入

電圧故障注入(FI)、または電圧グリッチングは、システムの電源を一瞬だけ過電圧または低電圧にするものである。これは非常に古い攻撃方法であり、研究者は、スマートカードが2つの前の10年前にこのアプローチに対して強化されたと指摘し、チップメーカーがこの特定の攻撃ベクトルを忘れていることを示唆している。

しかし、彼らは、System on a Chip(SoC)を保護することは最近複雑になったことを認めており、複雑な電源ツリーと高い電力消費率により、電源供給の混乱によって引き起こされる潜在的な混乱が悪化する可能性があると指摘している。

この種の攻撃は、過去にolder NVIDIA Tegra X1 SoCに対して可能であったが、新しいTegra X2 SoC(「Parker」)は、テスラのオートパイロット半自律走行システムや、メルセデス・ベンツ現代自動車で使用されているシステムなど、より重要なシステムで使用されている。

新しい論文では、Tegra X2 SoCに対する電圧グリッチング攻撃を実証し、システムの内部Read-Only Memory(iROM)からのコンテンツを抽出することができた。また、信頼できるコードの実行を完全に無効にすることができた。

恒久的な妥協が可能

さらに、この侵入は一時的なものではなく、必ずしも再起動で消去されるわけではない。研究者は、Root of Trust(RoT)を恒久的に無効にすることができる「ハードウェアインプラント」を開発した。

ドイツの研究者が開発した「crowbar circuit」の図 – Tegra X2のRoot of Trustを操作するための恒久的なハードウェア変更。

ドイツの研究者が開発した「crowbar circuit」の図 – Tegra X2のRoot of Trustを操作するための恒久的なハードウェア変更。 ソース:https://arxiv.org/pdf/2108.06131.pdf

研究者は、X2の隠されたドキュメントを解読しようとし、L4Tパッケージに含まれるヘッダーファイルを使用した。

TX2のブートソフトウェアのフロー制御。

TX2のブートソフトウェアのフロー制御。 ソース:https://docs.nvidia.com/

しかし、ヘッダーファイルを取得するために、GitHubを探索し、NVIDIA関連のコードを含むリポジトリを発見した。

ヘッダーファイルがNVIDIAによって提供されていることを知る前に、GitHubで検索しました。NVIDIAのコードを含むリポジトリを見つけたほか、Tegra SoCsのモデル番号T210とT214のリークされたBRソースコードを含む「switch-bootroms」というリポジトリも見つけた。T210は、Tegra X1(「Erista」)の元のモデルであり、T214は、Tegra X1+(「Mariko」)という名前で呼ばれる更新バージョンである。X1+には、高速化されたクロック速度と、リポジトリのコメントとコードから判断すると、FIに対して強化されている。私たちの調査では、このコードへのアクセスがX2の理解を大幅に高めた。

すべてのファスと暗号コードが新しい方法で発見され、ブートローダーシステムの後半が成功裏に復号化された。この攻撃の最も注目すべき成果は、ハードウェアを介して永続的に行うことができるという点であり、この技術は最初にTeam XecutorによってX1チップシリーズのNintendo Switchインプラントのために開発された。

緩和策

論文では、将来のXシリーズSoCを電圧グリッチング攻撃から保護するためのいくつかのハードニング方法を提案している。NVIDIAとの議論では、既存のSoCの場合、ボードレベルの変更が役立つ可能性があると述べている。熱や溶媒による分解に対して耐性のあるエポキシを使用することが挙げられている。また、カップリングキャパシタを必要としない専用のプリント基板(PCB)を使用することも一つの方法である。

将来のSoC設計の場合、最近NVIDIAによって特許されたクロスドメイン電圧グリッチ検出回路を使用することが可能である。これにより、悪意のある、または疑わしい電圧の混乱が発生した場合に警報をトリガーすることができる。

ソフトウェアを介した対策は、利用されている障害の特性を理解して対処することが難しいため、より大きな課題である。

論文では、X1チップを保護するために時間の経過とともに進化してきた大部分の明らかなセーフガードが、X2では存在しないことが驚くと述べている。

報告書は次のように結論付けている。

「メーカーと設計者は、すでに2つの10年前に存在しているような、見かけに簡単なハードウェア攻撃を忘れないでください。」

機械学習のライターであり、ヒューマンイメージシンセシスのドメインスペシャリスト。Metaphysic.aiの研究コンテンツ責任者を務めていたが、DNEGのBrahma.aiへの統合により解散した。
Portfolio site: martinanderson.ai
Contact:[email protected]