割り当て5:車とキーフォブ

概要

現在、ほぼすべての車にキーフォブが付属しており、ドアを開けて車を始動させることができます。 あなたが車を買うとき、利便性は魅力的な機能です。 あなたはあなたのポケットにキーフォブを残すことができ、物理的なキーを持つことについて再び心配することはありません。 それは素晴らしいですね。

あなたが作る暗黙の仮定は、キーフォブシステムが安全であり、ハードウェアのsome50を持ついくつかのランダムな人があなたの車で運転することはでき あなたは自動車会社が彼らのシステムで合理的な仕事をしたかどうかを知る本当の方法がないので、あなたはそれらを信頼しなければなりません。 残念ながら、その信頼は常に保証されていません。 そして、人々がこれらのシステムをハックしようとするまで、問題が出てくるわけではありません。 あまり綿密な人々がすでに悪用されている可能性のある問題。

あなたの車のキーフォブ

異なるキーフォブシステムがたくさんあります。 私達は私の2006年のプリウスのためのキーフォブを見ることから始めます。 キーフォブは、リモートキーレスシステム(RKS)と呼ばれるものを使用します。 米国では、これらは315MHz、+/-2.5MHzで動作します。 私のPriusキーは312.590MHzであることが判明しました。キーフォブはすべてFCCデータベースにリストされています。 新しいエントリーを見ることは、新しい車のモデルが出てくるときに人々が伝えることができる方法の一つです。 これらは公式発表のずっと前に表示されます。

キーフォブがSDRを使用して送信する周波数を把握し、GQRXまたはSDR#を使用してスペクトルを監視することができます。 あなたがfobのボタンを押すと、あなたはスペクトルの短いジャンプが表示されるはずです。 信号を見つけるには、周波数帯域を数MHzずつ上下にシフトする必要があるかもしれませんが、鉱山はほぼ2.5MHzの低さでした。

注意の一言。 あまりにもボタンを押して夢中にしないでください! RKSシステムは、ローリング擬似ランダムに生成されたコードを使用します。 キーフォブと車の両方が同期しているので、車は次のコードを認識します。 しかし、キーフォブがシーケンス(ボタンプッシュの100秒)であまりにも遠く前方に取得した場合、車はそれを認識しません。 それはキー(および車)をかなりより少なく有用にさせる!

信号をキャプチャした場合、結果は以下のようになります

プロットの幅の合計は10秒なので、2秒後に1つのキーが押され、5秒後に別のキーが押されていることがわかります。

100msを2秒からプロットすると、探しているデジタル信号が表示されます:

ビットの最初のカップルにズームイン、我々は得る

ビットは識別が容易です。 15の決定しきい値は、ほぼ完璧な検出を与えるでしょう。 これを行い、2つのキーを押すためのデジタルデータの最初の部分をプロットすると、これが得られます

二人は同じことを始めるが、彼らは急速に発散する。 信号が毎回同じだった場合、あなたは今私の車を盗むのに十分な情報を持っているだろうので、これは幸運です!

データは再びオンオフキーイング(OOK)です。 また、ほぼ確実に分割位相(またはマンチェスター)符号化されています。 「1」がハイであり、「0」がローであるのではなく、情報は、ハイからローへ、またはローからハイへの遷移において符号化される。 これは、「0」ビットが立ち上がり遷移であり、「1」ビットが立ち下がり遷移であることを意味します。 分割位相符号化を認識する良い方法は、行に1つまたは2つの低または高のセグメントしか含めることができないということです。 マンチェスター符号化の良いところは、すべてのシンボルが遷移を持っており、信号がいくつかの間隔のためにハイまたはローされているとき、これらは、

この例はOOKであり、これは車のリモコンで最も一般的です。 周波数偏移キーイング(FSK)を使用する場合もあり、各ビットは異なる周波数として送信され、包絡線は一定です。

車のリモコンへの攻撃

車のリモコンに対して使用できる攻撃は、どのように動作するか、どのようなアクセスを探しているかによって異なります。 最も簡単なのはちょうどあなたが車を開くことができます。 より徹底的な攻撃は、基本的にリモートを複製することによって、あなたに完全な制御を与えます。

ほとんどのキーフォブはローリングキーを使用します。 これにより、キーフォブのID、ランダムなシード、およびキーが押された回数に依存する新しい波形が生成されます。 車は最後に受け取ったコードを追跡し、次の数百のコードが何であるかを知っています。 それは予想される将来のコードのいずれかを検出した場合、それは車を開きます。 以前に使用したコードを取得すると、キーフォブへの応答が停止します。 プリウスのために、あなたは別の作業キーフォブを持っている提供し、それが再び動作するように取得するには、”チキンダンス”を行う必要があります。 それ以外の場合は、ディーラーが数百ドルのために、車を再キーを持っている必要があります。 私はこれを数回、今(他の理由で)しなければなりませんでした。

いくつかの攻撃線があります。 一つは、単にそれが車から離れている、または車が詰まっているときにボタンを押すのカップルのためのキーフォブ出力を記録しています。 記録された未使用のコードを使用すると、車を開くことができます。

もう一つは、RKSシーケンスをリバースエンジニアリングすることです。 一般的に、これは非常に難しいはずです。 しかし、これは非常に簡単であるいくつかの状況がありました。

最後に、所有者が車に近づくと開く車があります。 これは、キーフォブが非常に近いときにのみ受信できる低電力信号に基づいています。 これは、これらの小さな信号を増幅することによって打ち負かすことができます。

さらに多くの攻撃があり、車がより複雑になり、後に行くために多くの組み込みコンピュータシステムを持っているように、これらは増加し続けます。 あなたは来週のためにこれらのいくつかを見ることができます。

リプレイ攻撃

最も古く、最も簡単なアプローチは、キーフォブが出す波形を(あなたのrtl-sdrを使用して)記録し、それを再生することでした。 これは単一の固定キーを使用したより古いガレージのドアのオープナのためによく働く。 このように動作するキーフォブを持っているそこに車がまだあります(例えば、いくつかの前2000メルセデス)。

ローリングキーを使用するキーフォブでは、リプレイ攻撃を使用することができます。 キーフォブが車から離れているときにキーフォブにアクセスし、複数のキーを押すことを記録できる場合は、これらを再生して車を開くことができます。

キーフォブにアクセスできない場合、第二のアプローチは、キーフォブを使用したときの出力を記録し、同時に車を詰まらせるデバイスを作ることです。 これをする標準的な方法は誤り訂正ビットが端に送信されるとき主fob伝達を聞き、次に詰め込み始めることです。 そうすれば、あなたは自分自身を詰め込まないでください。 車はパケットを認識しませんが、エラー訂正ビットを再作成し、後で波形を再送信することができます。

最後に、妨害機は単独でリモートをからの車を締めることできる始めます保ちます。 運転手が注意を払わなければ、彼らはそれを開いたままにして車から歩くかもしれません。

再送信デバイス

これはすべて、RFを送信および受信する能力に依存します。 あなたのrtl-sdrは単なる受信機であり、信号を取得するのに最適な仕事をします。 送信するための多くのオプションがあります。 このようなキーフォブで使用されているTI CC111Xチップに基づいているusbドングルの数があります

興味深い、より柔軟なアプローチは、慎重に細工されたデータシーケンスをGPIOポートに送信することによって、Raspberry PIを使用してRFを生成します。 これは、ビデオ、およびここのコードへのリンクで詳細に説明されています:

Raspberry PI transmitter

これにより、必要なデジタルパケット波形をほとんど生成できます。 パワーレベルは、キーフォブをエミュレートするのに十分以上のものです。 Rtl-sdrはRaspberry PIでもよくサポートされているため、2つは一緒にtotal50程度の合計キーフォブハッキングシステムを提供します。

攻撃パッシブキーレスエントリー&スタート(PKES)システム

多くのハイエンド車は、ドライバーが近づいたときに車を開くためにパッシブシステムを使用しています。 低電力信号は、挑戦として車から送信されます。 その後、キーフォブは認証で応答します。 電源が非常に低いので、車は応答を受信した場合、ドライバが近接している必要があります前提としています。

これらのシステムは、車の近くに配置された中継器を構築することによってハッキングすることができます。 それは車の信号を捕獲し、より高い発電で再送信します。 リモートは、数百メートルでどこにでもすることができ、それはまだ信号を聞くことができます。 リモートは応答し、それはリピータによって再びキャプチャされ、再送信されます。 車はキーフォブが近くにあると考え、車を開きます。

このアプローチの良いところは、その頻度を除いて、キーフォブについて何も知る必要がないということです。 あなたはそれが使用するプロトコルをリバースエンジニアリングする必要はありません、あなたは実際には本当のキーを使用しています!

ここでは、このアプローチでテスラを盗むいくつかのケア泥棒のビデオです

パッシブリモート攻撃、テスラモデル3

どのようにこのリスクを軽減

ローリング-キー-システムへの攻撃

次の攻撃は、ローリング-キー-システム自体の後になります。 これが一般的に機能する方法は、キーフォブがキーが押された回数のカウンタと一緒にIDを送信することです。 これは暗号化され、ボタンを押すと車に送信されます。

暗号化が強力な場合、useridとcounterが何であるかを把握することは非常に困難です。 いくつかの興味深いケースがあります。 一つは、我々はここで見てみましょうVWの(とアウディの、ポルシェの、など)の20年のためのものです。 もう一つは、あなたが今週あなたの割り当てのために見ることができるSubarusのためのものです。

VW RKSシステムの説明はここに与えられています

VW Hack

これは有線の記事(残念ながら現在はペイウォールの背後にあります)を指しており、それがどのように機能するかについて非常に詳細に入る技術的な論文が含まれています。 技術論文の著者は、過去20年間のVW RKSシステムを見ました。

最新のシステムでは、暗号化は比較的強力で、90ビットの鍵に相当しました。 しかし、それは彼らがすべての車で同じキーを使用したことが判明しました! それらの100万人!

課題は、鍵が何であるか、そして暗号化アルゴリズムが何であるかを理解することです。 車自体はあなたがそれを解決するのに役立ちます。 ボタンが押されるとき車は信号を受け取り、次に機内コンピュータ(ECU)の解読します。 キーとアルゴリズムはECUファームウェアに保存されます。 著者らは、EBayでいくつかのEcuを購入し、ファームウェアをダウンロードし、暗号化をリバースエンジニアリングしました(これらは通常、識別が容易な非常に簡 この知識を使うと、単一の主出版物からの信号を得た後、ユーザー IDおよびカウンターは解読することができキーフォブはクローンし、車の完全な制御を与える。

ここには興味深いことがいくつかあります。 1つは、すべてのVW車がすべてのキーフォブをデコードするため、ECUの実行を監視することで、周囲のすべての車のユーザー IDとカウンターを見つけることがで 他の車を盗むためにこのようなシステムを使用している人々の報告もあります。

あなたの車だけがあなたのリモートに応答する理由は、あなたの車がそれが応答するキーフォブIDの”許可リスト”を持っているからです。 それはあなたが車を再キーするときに設定されるものです。

これはすべてかなり驚くべきことに聞こえます。 しかし、それは我々が来週見るように、悪化します。

割り当て

今週の割り当てにはいくつかのオプションがあります。 各トピックのために、あなたの思考か結果を記述するために約5つのスライドを発生させなさい。

サインアップシート

サインアップシート

スライドをここにアップロードしてください。

週5スライド

1. この記事では、スバルRKSシステムに関係しています。 それを読んで、ビデオを見て、あなたが見つけたものを説明してください。

スバルRKS

2. これらのホテルのキーカードがどのように機能するのか疑問に思ったことがありますか? この記事では、キーフォブ攻撃と同じアイデアを悪用する非RFハックについて説明します。

ホテルのキーカード

3. なぜあなたはブルドーザーを持つことができるときに車を盗む! この記事を読んで、ビデオを見て、これがどのように機能するかを確認してください。

4. そこに他の車のハックがたくさんあります。 あなたが何か面白いものを見つけることができるかどうかを確認し、それを記述します。 あなたはそれがどのように動作するかを把握することができます物語を探してください。 エンターテイメントシステムは、アクセスの共通モードです(ジープのUconnectハックを確認してください)。 テスラとハッカーは、長い間実行されている猫とマウスのゲームを行っています。 ここには興味深い例がたくさんあります

5。 Raspberry Piをお持ちの場合は、信号を送信できるかどうかを確認してください。 これはかなり簡単なはずです。 上記のリンクを使用してください。 あなたがこれを試してみたい場合は、私はあなたにラズベリーパイを送ります。

最後に、まだ持っていない場合は、クラスがどのようにあなたのために起こっているかについて私にメールを送ってください。 私はあなたの考えを聞いて感謝します。 ありがとう!

2020-02-10 22:57:00PST,jemdocによって生成されました。

コメントを残す

メールアドレスが公開されることはありません。