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
BLEな()おもちゃを調べてみる
Search
NV
November 23, 2017
Technology
3
1.3k
BLEな()おもちゃを調べてみる
@IoTSecJP東京
NV
November 23, 2017
Tweet
Share
More Decks by NV
See All by NV
ゲームのボツデータを見てみよう
nvsofts
1
490
eMMCの話
nvsofts
2
2.1k
%sの話
nvsofts
1
1.3k
DOOMに関するあれこれ
nvsofts
0
470
よくあるバックドアの話(公開版)
nvsofts
2
530
IoTハックに使える買って良かったと思うもの
nvsofts
0
2.1k
Other Decks in Technology
See All in Technology
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
520
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.2k
Amazon VPC Lattice 最新アップデート紹介 - PrivateLink も似たようなアップデートあったけど違いとは
bigmuramura
0
190
ゼロから創る横断SREチーム 挑戦と進化の軌跡
rvirus0817
2
260
アップデート紹介:AWS Data Transfer Terminal
stknohg
PRO
0
180
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
1
290
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
13
3.6k
生成AIのガバナンスの全体像と現実解
fnifni
1
180
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
140
KnowledgeBaseDocuments APIでベクトルインデックス管理を自動化する
iidaxs
1
260
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
100
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
520
39k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Six Lessons from altMBA
skipperchong
27
3.5k
Done Done
chrislema
181
16k
Building Your Own Lightsaber
phodgson
103
6.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
4 Signs Your Business is Dying
shpigford
181
21k
Transcript
BLEな()おもちゃを調べてみる NV (@nvsofts)
自己紹介 名前:NV ◦ Twitter: @nvsofts 個人サークル「えぬえす工房」代表 ◦ https://www.ns-koubou.com/ ◦ 冬コミ(C93)出るのでよろしくお願いします
普段は都内にあるセキュリティ会社でIoTセキュリティなど をやっています
事の発端は・・・ ある人に
事の発端は・・・ ある人に 「面白いものを買ってきたから調べてみない?」 と言われたことです
入手したもの
入手したもの
入手したもの
そういえば こんなのがありましたね・・・
えーっと・・・ 要するに「大人向けの健康器具」の類です 親機と子機が付属し、子機は2種類の方法で遠隔操作可 1. 親機を使用して遠隔操作 2. Bluetooth LE (BLE)対応のスマートフォンで遠隔操作
えーっと・・・ 要するに「大人向けの健康器具」の類です 親機と子機が付属し、子機は2種類の方法で遠隔操作可 1. 親機を使用して遠隔操作 2. Bluetooth LE (BLE)対応のスマートフォンで遠隔操作 ↑今回はこれにフォーカス
調べる前に 海外で入手したデバイスなので、技適マークはない ◦ 屋外で試すのはもちろんNG 実験時は関係のない人に迷惑をかけないように対策を 行っています
子機を調べる 子機の電源を入れて、nRF Connectでスキャン ◦ 「Aogu BLE Device」という名前でアドバタイズしている
子機を調べる サービスはこんな感じ ◦ 「Command Ch」という名前のキャラクタリスティックがある
スマホアプリについて 専用のスマホアプリはiOS、Androidに対応 ◦ Android版は.apkを配っている ◦ iOS版はIn-House配布なので野良アプリ(ダメでしょ・・・)
スマホアプリを調べる 調べやすいAndroid版をMobSFで静的解析する
権限が山盛り
遠隔操作コードを発見 ’00 XX’という バイト列を送るらしい
子機にコマンドを送ってみる 試しに、Command Chに’00 01’というバイト列を送信
子機にコマンドを送ってみる 試しに、Command Chに’00 01’というバイト列を送信 動いた!
子機にコマンドを送ってみる 試しに、Command Chに’00 01’というバイト列を送信 動いた! しかもペアリングなしで(認証がない!)
攻撃用デバイスを作る ESP32の評価ボードを使用 プログラムはESP-IDFに付属のサンプルを改造 周辺にある「Aogu BLE Device」を探して動作させる
スニファで見ると・・・? nRF Snifferを使ってESP32~子機間の通信をキャプチャ ◦ Write Requestが発行されていることが確認できる ◦ ハンドル:0x0012は、Command Chを意味している
まとめ BLEで認証なしは危険 ◦ 利用者にとっては楽かもしれないが、通信を保護する手段は 一切ない ◦ 現在では攻撃用デバイスも容易に作成可能 似たような事例のニュース記事の言葉を借りると 「非常に私的なものであるはずなのに、 第三者によって自在にコントロールされてしまう」
ということになる
おまけ:親機を調べる 親機は430MHz帯の無線を使っている ◦ 子機は430MHz帯+2.4GHz帯のデュアルバンド機になる ◦ 送信周波数は433.87MHz ◦ アマチュア無線のバンドとかぶっている ◦ 近くの433.50MHzは非常通信周波数
JARL:アマチュアバンドプラン より http://www.jarl.org/Japanese/A_Shiryo/A-3_Band_Plan/A-3-0.htm