web-dev-qa-db-ja.com

攻撃者はBluetoothで何ができ、どのように軽減する必要がありますか?

Bluetoothのセキュリティリスクは何ですか?デバイスを保護するために使用する必要があるテクノロジとベストプラクティスは何ですか?悪意のあるデバイスが私のデバイスとペアになったら、攻撃者は何ができますか?

具体的には

  • 一定の間隔でデバイスを削除して再ペアリングすることをお勧めします(これによりBluetooth PINが変更されていると考えます)

  • デバイスまたはコンピューターを「検出可能」にすると、セキュリティにどのような影響がありますか?

  • Bluetooth対応デバイスはどのような種類のアクセスをシステムに取得しますか?

  • Bluetoothデバイスのアクセス範囲を制御するにはどうすればよいですか? (私の電話が危険にさらされた場合、私のPCが持っている露出を制限したいと思います)

  • Bluetoothセキュリティ機能はありますか(または有効になっていない可能性があります)?これらの機能の有無を監査するにはどうすればよいですか?

  • 暗号化を有効にできるセキュリティ機能だとすると、それは必須ですか、それともオプションですか? (さらに、Bluetooth用のSSLストリップを作成できますか?)

携帯電話( iOS )、OSX、Windows、Linuxオペレーティングシステムに関する情報に興味があります

61

(注:この回答は2013年からのものです。それ以降、Bluetoothの大幅な変更、特にBLEの人気の急上昇、新しい攻撃、廃止された機能。それでも、そのほとんどはまだ適用可能です。 )

前書き

Bluetoothテクノロジー自体の技術的な部分に触れずに、私の知識を最大限に活用してお客様の質問に取り組みます。 [〜#〜] byod [〜#〜] ポリシーを形成するためにセキュリティレポートを書かなければならない間、私は以下の多くを学びました。あなたを知っているので、100%安全なものは何もないということを説明する必要はありません。私たちが行うことは、悪者のためにそれをより難しくすることです。

Bluetoothにはないもの

  • テクノロジーとしてのBluetooth自体は安全ではなく、実装だけでなく、設計自体にいくつかの重大な欠陥があります。

  • Bluetoothは短距離通信方法ではありません。少し離れているからといって、安全であるとは限りません。 クラスI Bluetoothデバイス の範囲は最大100メートルです。

  • Bluetoothは成熟した通信方法ではありません(セキュリティに関して)。スマートフォンでは、本来の意図とはまったく異なるものになっています。電話を周辺機器に接続する方法として作成されました。私のアドバイス:Bluetoothを深刻なものに使用しないでください。

現在Bluetoothはどのように保護されていますか?

  • クレイジーな周波数ホッピング:BluetoothはAFH(Adaptive Frequency Hopping)と呼ばれるものを使用します。基本的に2.4 Ghz ISM帯域 で79チャネルを使用し、環境を監視し、ホッピングリストから既存の周波数を除外しながら、1600ホップ/秒の速度でそれらの間をホッピングし続けます。 。これにより、干渉や妨害の試みが大幅に減少します。

  • E0暗号スイート :128ビットキーのストリーム暗号を使用します。

  • 検出不能:デバイスを「検出可能」に設定しない限り、スキャンの試行に応答せず、48ビットのBD_ADDR(Bluetooth対応デバイスを識別するアドレス)は表示されません。

  • ペアリング:デバイスが関係者の同意とペアリングされていない場合、デバイスは通信できません。ペアリング要求は、他のデバイスのBD_ADDRを知っている場合にのみ行うことができます(スキャンまたは以前の知識を通じて)。

設定した間隔でデバイスを削除して再ペアリングすることをお勧めします(これによりBluetooth PINが変更されると考えています)

はい。それは非常に良い考えです。信頼できるデバイスによって悪用されるリスクを排除できます。通常、重要ではない理由(知り合いにファイルを送信する、どこかで会った人からVCardを取得するなど)でデバイスをペアリングすることを考えると、Bluetoothを頻繁に使用する場合、「信頼できる」デバイスの膨大なリストが作成される可能性が高くなります。

デバイスまたはコンピュータを「検出可能」にすると、セキュリティにどのような影響がありますか?

デバイスを検出可能にすることの問題は、BD_ADDRを要求する人にBD_ADDRを宣伝することです。別のデバイスとペアリングする唯一の方法は、BD_ADDRを知ることです。標的型攻撃では、48ビットのBD_ADDRをブルートフォースするのに時間がかかります。

通常の場合、BD_ADDRを知ることは大きな問題ではないはずですが、携帯電話またはコンピュータのBluetoothソフトウェアに脆弱性がある場合は、レーダーの下にいる方がよいでしょう。もう1つの問題はプライバシーへの影響です。発見可能になることで、あなたはペアリングされていない(信頼されていない)パーティーにあなたがどこにいるかを知らせます。

Bluetooth対応デバイスはどのような種類のアクセスをシステムに取得しますか?

通常の場合(任意のコード実行を許可する脆弱性はありません)は、すべて、デバイスでサポートされている Bluetoothプロファイル に依存します。通常、コンピュータはすべてのプロファイルをサポートしていると想定できます。いくつか挙げておきます。

  • BHIDP(Bluetoothヒューマンインターフェイスデバイスプロファイル)は、マウスとキーボードのイベント起動(マウスの移動とキーボードのキーの送信)へのアクセスを提供します。
  • BIP(Basic Imaging Profile)はカメラへのアクセスを提供します。
  • A2DP(Advanced Audio Distribution Profile)は、MICおよびオーディオ出力へのアクセスを提供します。
  • OBEX(OBject EXchange)は、通常心配する必要があるものです。実装によっては、ファイル、電話帳、メッセージなどへのアクセスを許可する場合があります。

可能性のある(または有効化されていない)Bluetoothセキュリティ機能はありますか?これらの機能の有無を監査するにはどうすればよいですか?

Bluetooth V2.1より前のバージョンでは、プロトコル自体を実装する場合、開発者はセキュリティモード#1を使用するオプションを選択できます。これは、セキュリティがまったくないことを意味します。デバイスはペアリングの必要なしに通信でき、暗号化は使用されません。

Bluetooth V2.1以降では暗号化が必要です。

ユーザーとして、Bluetoothの使用をより安全にするためにできることがいくつかあります。 (下記参照)

暗号化は有効化できるセキュリティ機能であると想定していますが、それは必須ですか、それともオプションですか?

前の質問のように、それは実装依存です。通常、PC-PC、スマートフォンとスマートフォン、およびPCとスマートフォンの通信では、デフォルトで暗号化が使用されます。 Bluetooth V2.1以降、暗号化はデフォルトで有効になっています。

悪意のあるデバイスが私のデバイスとペアになったら、攻撃者は何ができますか?

基本的に、デバイスがサポートするものは何でも。これを実証するには、 Super Bluetooth Hack というアプリケーションを使用するだけで、次のような非常に恐ろしいことがわかります。

-リンギング:着信音、目覚まし時計の音を再生します。
-通話:番号のダイヤル、通話の終了。
-キー、押されたキー:押されたキーを押して見る
-連絡先
-SMSを読む
-サイレントモード:オンまたはオフ
-電話機能:ネットワーク/電話をオフにする
-アラーム
-時計:日付と時刻を変更します
-ネットワークオペレーターを変更する
-Java:開始、削除Javaアプリケーション
-カレンダー
- メモリの状態
- キーロック

Bluetoothの何が問題になっていますか?

  • ペアリングされたデバイスへの完全な信頼:ペアリングされたデバイスは、他のデバイスでサポートされている事実上すべてのプロファイルにアクセスできます。これには、OBEXとFTP(ファイル転送プロファイル)が含まれます。

  • プロファイルの自由度が高すぎます:プロファイルは、必要なセキュリティモードを選択できます。 Bluetoothなしで独自のバージョンのOBEXを実装することもできます。暗号化や認証を使用する必要はまったくありません。 (Bluetooth V2.1以前)

  • E0の弱点:1999年以降、E0の脆弱性が現れ始めました。 E0を2でクラックすることが可能であることが証明されました64 2よりも128 以前は信じていました。毎年、研究者はより多くの脆弱性を発見し、Lu、Meier、Vaudenayによる2005年の攻撃につながっています。攻撃は2でキーを回復する可能性を示しました38 オペレーション。

  • ペアリングは大まかに定義されています:デバイスは、4桁PINすぐに割れる。

最後に、優れた実践ガイドラインのために:

重要な NSA Bluetoothセキュリティ推奨事項 の一部をリストします(それらの一部を変更し、独自のものをいくつか追加しました):

  • 必要な場合にのみBluetooth機能を有効にします。
  • 必要な場合にのみBluetooth検出を有効にします。
  • ペアリングされたデバイスを近づけて、デバイスで何が起こっているかを監視します。
  • 安全な長いパスキーを使用してデバイスをペアリングします。
  • 予期しないプロンプトが表示された場合は、パスキーまたはPINを入力しないでください。
  • Bluetooth対応デバイスを定期的に更新してパッチを適用します。
  • ペアリングしたデバイスは、使用後すぐに取り外してください。

更新:1時間前、 Bluetooth V4.0仕様 に飛び込んでいたところ、驚いたことに、彼らはまだ暗号化にE0を使用しているようで、ペアリングメカニズムに良い変更はありませんでした。さらに悪いのは、ユーザーが2つのデバイスに6桁の数字を表示し、それらが同じかどうかを確認するように求められる、番号比較ペアリングメカニズムを推進していることです。私の意見では、これはソーシャルエンジニアリング攻撃の大きな扉を開きます。

ユーザーの操作が必要なペアリングシナリオでは、盗聴者保護により、単純な6桁のパスキーが16桁の英数字よりも強力になります。PINコード。

ソース

更新2:この「Just Works」の6桁PINは確かに問題があるようです。MikeRyanはBLEへの攻撃と がコードを解放し、ツールが「パチパチ」 として一時キーをブルートフォースし、トラフィックを復号化しました。

70
Adi

デバイスのセキュリティは、デバイスのタイプに制限されています。

Bluetoothのセキュリティリスクは何ですか?デバイスを保護するために使用する必要があるテクノロジとベストプラクティスは何ですか?

各デバイスは、サービスのレベルを提供します。提供されるサービスは、アクセスと利用に対する制限または制限を作成します。最高の保護策は、Bluetoothをオフにしておくことです(偏執狂の場合)。 SymantecのサイトDark Reading に関する興味深い読み物。

悪意のあるデバイスが私のデバイスとペアになったら、攻撃者は何ができますか?

起こり得るいくつかのこと:

  • 電話帳、写真、ビデオ、カレンダーを盗んだり、電話をかけたり、電子メールを送受信したり、予定を作成したり、SMSメッセージを送信したりできます。

  • 携帯電話を悪用した後、爆弾の脅威を伴うSMSメッセージを地元の警察署に送信する可能性があります。請求記録は、電話の所有者およびSMSの実際の送信者としてあなたを直接指します。 。それは実際にはターゲットシステムのBluetooth標準の実装に依存します Norton

  • 彼らは潜在的に電話を聞いたり(ヘッドセットを偽装した場合)、デスクトップ上のマウスカーソルを制御したり(マウスを偽装した場合)することもできます。

サービスが完了するのを待って退屈している間、日産のディーラーでカーステレオを少し楽しんだ。デモカーの1つにあるステレオは発見可能だったので、私はデモ中にセールスマンが潜在的なバイヤーに新機能を見せているときにペアリングし、彼らは私のデバイスとペアリングし、その後、潜在的な顧客がペアリングに失敗したことを示したとき、彼らはもう一度試しました(私たちは両方ともペアリングされていました)。次に、営業スタッフが立ち去った後、私はステレオを「所有」し、ランダムな曲をストリーミングし、音量を制御しました。誰かが車から離れると、ステレオが大きくなります。誰かが車に向かって歩くと、ステレオが静かになります。これは、電話を受けてステレオが自動応答し、カバーがほとんど吹き飛ばされるまで(私は電話を無視しました)、すべて楽しいものでした。

一定の間隔でデバイスを削除して再ペアリングすることをお勧めします(これによりBluetooth PINが変更されていると考えます)

システムは簡単に悪用される可能性があるため、これを行っても、他のデバイス(その信頼レベル)とのターゲットハードウェアの通信制限に存在する元の脆弱性は削除されません。 暗読

デバイスまたはコンピューターを「検出可能」にすると、セキュリティにどのような影響がありますか?

システムを「検出可能」にすると、デバイスの名前を変更して、誰かにデバイスを偽装させることができます。これは、一部のデバイスでは避けられません。

Bluetooth対応デバイスはどのような種類のアクセスをシステムに取得しますか?

これは、システム自体に課せられている制限によって異なります。ソフトウェア開発者が時間をかけて交換のセキュリティを確保しなかったためにすべてのワイヤレスマウスまたはワイヤレスヘッドセットの動作が同じであるとシステムが想定し、誰かがワイヤレスマウスになりすましている場合、システムのサービスで許可されているすべてにアクセスできる可能性があります。 Windowsでは明らかに、これはフルコントロールを意味する場合があります。

Bluetoothデバイスのアクセス範囲を制御するにはどうすればよいですか? (私の電話が危険にさらされた場合、私のPCが持っている露出を制限したいと思います)

セキュリティの実装には制限があるため、Bluetoothシステムは独自の方法で危険にさらされる可能性があります。範囲内にいる人は、携帯電話、ヘッドセット、マウス、Bluetooth対応の冷蔵庫などと同じように、「発見可能な」デスクトップまたはラップトップを簡単に危険にさらすことができます。Bluetoothを使用していないときは、ペアリングを解除してBluetoothを無効にします。使用していないときは、ダムデバイスをオフにしてください。

Bluetoothセキュリティ機能はありますか(または有効になっていない可能性があります)?これらの機能の有無を監査するにはどうすればよいですか?

これはデバイスによって異なります。ワイヤレスマウスなどのデバイスには、アクティビティのログがありません。デスクトップの可能性があります。一部の携帯電話はありません。

暗号化を有効にできるセキュリティ機能だとすると、それは必須ですか、それともオプションですか? (さらに、Bluetooth用のSSLストリップを作成できますか?)

暗号化は、それをサポートするデバイスでのみ処理できます。最初のハンドシェイクで、デバイスに暗号化機能がないことを示した場合、システムはトランザクションの暗号化を試みません。たとえば、ワイヤレスマウスは安全な信号を送信しません。

トロイの木馬の展開に悪用されるMac Bluetoothの脆弱性Windowsの脆弱性

その後、攻撃者はプログラムをインストールする可能性があります。データの表示、変更、または削除。または、完全なユーザー権限を持つ新しいアカウントを作成します。この脆弱性は、Bluetooth機能を備えたシステムにのみ影響します。

Linux Bluetoothエクスプロイト には、メモリスタックの操作と読み取りが含まれます。

幸運を。

11
AbsoluteƵERØ

このトピックに関する私の知識は限られているため、この回答は不完全または正しくない可能性がありますが、Bluetoothについての私の理解は、さまざまなプロトコル(プロファイルと呼ばれる)を開発できるかなり緩いスタックであるということです。セキュリティの詳細の多くは、ハードウェアにある特定のBluetoothスタックとプロファイルに依存します。

Bluetoothスタック(ハードウェアのドライバー)にセキュリティ上の欠陥がないと仮定すると、自動ペアリングがオフになっている限り、デバイスを検出可能にしても違いはありません。誰かができる最悪のことは、あなたが拒否することができるペアリング要求をすることです。

Bluetoothデバイスがシステムに取得するアクセスレベルは、Bluetoothスタックとプロファイルの実装方法と構成方法によって完全に決まるため、質問のこの部分に直接答えることは実際には不可能です。

おそらく、最善の並列処理は、Bluetoothを、短距離無線リンクでさまざまな異なるサービスを提供する小さなサーバーのようなものと考えることでしょう。提供されるサービスとサービスの実装方法は大きく異なりますが、各タイプのプロファイルに使用されるプロトコルは一貫しています。 (たとえば、AVRCP(オーディオ/ビデオリモートコントロールプロトコル)と同様に、ヘッドセットオーディオは一般的なプロファイルです)。

ペアリングに関しては、ペアリングの過程で、将来使用する共有秘密鍵を開発します。共有シークレットがどちらのデバイスからも漏洩しない限り、別のデバイスがそのペアを偽装することはできません。また、通信が単なるハンドシェイクではなくそのキーで暗号化されている限り、通信自体は安全です。

ウィキペディアによると、暗号化は2.1より前のBluetoothではオプションであり、約1日以上使用すると簡単に破られる可能性がありましたが、2.1以降のバージョンのBluetoothでは、サービスの検出とより良い共有キー管理以外で暗号化を要求することでこれを修正しています。

9
AJ Henderson

一定の間隔でデバイスを削除して再ペアリングすることをお勧めします(これによりBluetooth PINが変更されていると考えます)

いいえ、それは良い考えではないかもしれません。ペアリング中に、無線通信リンクを盗聴している誰かが悪用する可能性のある情報交換があります。 Dominic Spillによる素晴らしいプレゼンテーションをご覧ください https://www.youtube.com/watch?v=HU5qi7wimAM

2
user474708