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
Bigdrea6
December 23, 2021
Technology
0
55
Bluetoothのあれこれ
BluetoothのHID・SPPの説明とBlueBorneの解説をしています
Bigdrea6
December 23, 2021
Tweet
Share
More Decks by Bigdrea6
See All by Bigdrea6
Bluetooth Mesh
bigdrea6
0
30
Fileless Malware !
bigdrea6
0
220
Annotate Windows API!
bigdrea6
0
68
Other Decks in Technology
See All in Technology
JAWS UG AI/ML #32 Amazon BedrockモデルのライフサイクルとEOL対応/How Amazon Bedrock Model Lifecycle Works
quiver
1
130
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
390
AI時代の発信活動 ~技術者として認知してもらうための発信法~ / 20251028 Masaki Okuda
shift_evolve
PRO
1
120
デザインとエンジニアリングの架け橋を目指す OPTiMのデザインシステム「nucleus」の軌跡と広げ方
optim
0
120
戦えるAIエージェントの作り方
iwiwi
11
5.1k
AIを使ってテストを楽にする
kworkdev
PRO
0
300
AIの個性を理解し、指揮する
shoota
3
500
書籍『実践 Apache Iceberg』の歩き方
ishikawa_satoru
0
290
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
180
abema-trace-sampling-observability-cost-optimization
tetsuya28
0
380
生成AI時代のPythonセキュリティとガバナンス
abenben
0
150
パフォーマンスチューニングのために普段からできること/Performance Tuning: Daily Practices
fujiwara3
2
170
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
How to Think Like a Performance Engineer
csswizardry
27
2.2k
Context Engineering - Making Every Token Count
addyosmani
8
320
Scaling GitHub
holman
463
140k
Automating Front-end Workflow
addyosmani
1371
200k
RailsConf 2023
tenderlove
30
1.3k
Building Adaptive Systems
keathley
44
2.8k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Fireside Chat
paigeccino
41
3.7k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Side Projects
sachag
455
43k
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/