Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Bluetoothのあれこれ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Bigdrea6
December 23, 2021
Technology
0
56
Bluetoothのあれこれ
BluetoothのHID・SPPの説明とBlueBorneの解説をしています
Bigdrea6
December 23, 2021
Tweet
Share
More Decks by Bigdrea6
See All by Bigdrea6
Bluetooth Mesh
bigdrea6
0
34
Fileless Malware !
bigdrea6
0
220
Annotate Windows API!
bigdrea6
0
73
Other Decks in Technology
See All in Technology
Context Engineeringの取り組み
nutslove
0
330
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
240
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
190
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.4k
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
180
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
130
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
360
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.4k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
140
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
210
Featured
See All Featured
Navigating Team Friction
lara
192
16k
sira's awesome portfolio website redesign presentation
elsirapls
0
150
Large-scale JavaScript Application Architecture
addyosmani
515
110k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
GraphQLとの向き合い方2022年版
quramy
50
14k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
57
50k
Crafting Experiences
bethany
1
48
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.5k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
63
Designing for Timeless Needs
cassininazir
0
130
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
84
Transcript
Bluetoothのあれこれ 仕組みとセキュリティ
目次 • はじめに ◦ HID ◦ SPP • Bluetooth のセキュリティ体制
• BlueBorne について ◦ 技術的詳細
はじめに • 基礎から分かる「 Bluetooth 」のまとめ https://scrapbox.io/bigdrea6/ 借りた本のまとめ • HID と
SPP について ◦ HID( ヒューマンインターフェース ) ◦ SPP( シリアルポートプロファイル ) ◦ どちらも通信規格の種類 ( プロファイル ) を示してる • プロトコルとプロファイル ◦ プロファイルはどのプロトコルを使うか、どのように利用するかの手順を示したもの ◦ プロトコルはデータ・パケット構造のフォーマットを決めている ◦ 今回、プロトコルは Bluetooth プロトコルを指しプロファイルは HID ・ SPP を指している
HID 人間が操作して使うもの ( マウス、キーボード ) に使われるプロファイル Report ID(1 byte) +
Data(63 bytes) = 64 bytes Report ID : よく分からない Data : 余ったら 0 で埋める
SPP シリアルポートのように Bluetooth を使ってデータ送受信を行う DUN 、 FAX 、 HSP 、
LAN などに使用される 音声データと命令データは通る場所が違う ( 周波数的に? )
Bluetoothのセキュリティ体制 • 周波数ホッピング ◦ ランダムに使うチャンネル ( 周波数 ) を変える ◦
機器相互しかどのチャンネルを使ってる分からない • ペアリング ( 鍵生成 ) ◦ 通信が確定した機器以外と通信を行わない • データの保護 ◦ ペイロード = ペイロード + MIC(32bit) ◦ MIC でメッセージの偽造を防ぐ
BlueBorne • 簡単な脆弱性の内容 ペアリング無しで機器に接続できてしまう • 何が問題か 無線通信してるだけで乗っ取られる 対象は Bluetooth が使える端末となること
• 何故出来たのか SDP 、 L2CAP の実装に問題があった • 現状 多分、大丈夫
技術的詳細(1/3) デモ : https://www.youtube.com/watch?v=Az-l90RCns8&t=35s • CVE-2017-0785 SDP にある脆弱性。 SDP とは機器を探したり、機器に保有している機能を問い合わせを
するプロトコル このプロトコルの設計ミスでメモリリークができてしまい、暗号化キーなどがもれてしまう まず、これで ASLR 保護を無くす
技術的詳細(2/3) • CVE-2017-0781 BNEP にある脆弱性。 BNEP は Ethernet フレームを送るためのプロトコル 悪意のあるコードが実行できてしまう。
前段の攻撃でメモリの破壊が簡単にできてしまう このメモリの破壊は、システム・ユーザーに通知されないので気付かれない • CVE-2017-0782 CVE-2017-0781 と同じ。 PAN にある脆弱性。
技術的詳細(3/3) • CVE-2017-0783 中間者攻撃ができる脆弱性。 盗聴する機器は Bluetooth 搭載の機器であればよい。 上図のような攻撃をすることで、通信・送受信を制御することができる あくまで Android
端末の場合の CVE と攻撃方法。 この脆弱性のキモは Bluetooth 搭載端末全てが攻撃対象であること。 https://www.armis.com/research/blueborne/
参考資料 • HID の仕様 https://patents.google.com/patent/JP2004213430A/ja • BlueBorne https://www.armis.com/research/blueborne/ https://www.anquanke.com/post/id/202575 https://www.anquanke.com/post/id/86949
• 他の攻撃 https://www.lrm.jp/security_magazine/bluetooth/