自動車キーFOB信号のリバースエンジニアリング(前編)
- 自動車のリモート制御装置(キーFOB)のデータ伝送方式や、リプレイ攻撃などの可能な攻撃ベクトルへの好奇心から始まったプロジェクト。
- 実車でのテストが限られていたため、過去にキャプチャした信号に対して意味のある分析を行えなかった。
- このブログ記事では、昨年に自動車キーFOB信号のリバースエンジニアリングと再生に成功した経験を、初心者向けに案内している。
使用したハードウェア
- RTL-SDR: 安価なTV/ラジオ用USBドングルを多目的RF受信機に変えられるデバイスで、24〜1750 MHz範囲の信号を可視化・保存できる。
- Flipper Zero: さまざまな無線ハードウェアモジュールを搭載した電子機器で、日常の電子機器や家電製品と「相互作用」できる。
- CC1101 vs RTL2832U: Flipper Zeroに搭載されたCC1101チップは、RTL-SDRにあるRTL2832Uチップと異なり送受信モジュールだが、SDRをサポートしていないため、正しいRF設定を行う必要がある。
無線周波数信号の基礎(過度に単純化)
- 無線周波数伝送では、信号を送るために電磁波である電波を使う。
- 周波数: 搬送波が発生する回数。
- 変調: 信号が電波上でどのように表現されるかを示す。AMとFMが最も一般的な変調方式。
- 帯域幅: 変調されたRF信号が占める周波数範囲。
視覚的分析
- SDR#: SDR向けの無料で直感的なコンピュータベースDSPアプリケーションで、無線スペクトラムをリアルタイムで可視化し、いくつかの一般的な変調を復調できる。
- 信号の発見: 433.92 MHzの周波数でRTL-SDRドングルを使うと、ほとんどのリモート制御装置の動作を観測できる。
実際の分析
- Universal Radio Hacker: 無線プロトコル調査のための完全なオープンソーススイートで、多くの一般的なSDRを標準でサポートし、信号をビットへデコードするために必要なソフトウェア。
- 信号の見た目とビットパターンを分析し、構造と一貫性を見つけ出す。
ローリングコード
- キーレスエントリーシステムで単純なリプレイ攻撃を防ぐために使われるセキュリティ機構。
- リモコンと車両が暗号化アルゴリズムを使ってローリングコードを生成・追跡する。
最終結果
- 自動車キーFOB信号をリバースエンジニアリングして信号の構造を把握し、Flipper Zeroにこの信号形式を統合して、読み取り・再シリアライズ・再生できるようになった。
GN⁺の見解
- この記事は、無線通信とセキュリティに関心のある人にとって興味深い内容を提供する。自動車キーFOB信号のリバースエンジニアリングはセキュリティ研究者にとって重要なテーマであり、この記事はその過程を詳しく説明している。
- リバースエンジニアリングは技術的なセキュリティ脆弱性を理解し改善するのに役立つ。この記事は実際の機材を使って信号を分析する方法を示すことで、この分野に関する実践的な知識を提供している。
- この記事は、Flipper Zeroのようなツールの使用が法的に禁止されうる状況において、個人がセキュリティ研究を行う際の課題と機会を示している。
- 類似の機能を提供する他のツールとしては、HackRF OneやBladeRFのようなSDR機器があり、より広い周波数範囲と送受信機能を提供する。
- 技術を導入する際には常に法的制約とセキュリティ上の問題を考慮すべきであり、この技術を使うことで得られる利点は、実際のセキュリティ脆弱性を発見して解決することにある。
1件のコメント
Hacker Newsのコメント