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
Making full use of Bus Pirate
Search
kitok
January 07, 2018
How-to & DIY
1
650
Making full use of Bus Pirate
#iotsecjp
kitok
January 07, 2018
Tweet
Share
More Decks by kitok
See All by kitok
Starting radio hacking with SDR
kitok
2
230
The reversing man
kitok
1
81
Other Decks in How-to & DIY
See All in How-to & DIY
LT(Lightning Talk)のドキドキ感を共有する IoT ぼっとキーホルダ!
scbc1167
0
300
How to Hire a Driver for Long Distance Travel?
greaterservice
0
150
バッドプラクティスから学ぶハワイアン航空で行く re:Invent
kentosuzuki
0
130
テストも、国際化も! 小中高生クリエータ支援プログラム『未踏ジュニア』を支える技術
yasulab
PRO
1
110
AWS re:Invent 2024 re:Cap – AWS Community Perspective / JAWS-UG新潟
awsjcpm
0
120
M5Stickと超小型エッジAIカメラ「AITRIOS」
hoshinoresearch
0
370
球体型ロボットと複合現実を活用したマルチエージェントシステム - M5stack Japan Tour 2024 Spring Osaka
tichise
0
230
IoTカーテンオープナー
keicafeblack
0
350
生成AIとミニ四駆で学ぶ! MATLAB/Simulink
covao
1
230
M5Stackを使ってSズキの魔改造モンスターマシンを作ってみた
syumme01
0
100
GreenPAK 初心者向けハンズオン資料
aoisaya
2
290
AWS Community Day 2024: Using AWS to build a launchable knowledge rocket 👉 Organize knowledge, accelerate learning and understand AI in the process
dwchiang
0
170
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Designing for Performance
lara
604
68k
4 Signs Your Business is Dying
shpigford
182
22k
The Language of Interfaces
destraynor
156
24k
A designer walks into a library…
pauljervisheath
205
24k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Being A Developer After 40
akosma
89
590k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
520
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Transcript
この冬、BusPirateを 使い倒す きとけー(kitok) k@kitok.jp
⾃⼰紹介 • きとけー、きとけい、⽊藤 圭亮(kitokay, kitok) • キュアカイシャイン2年⽬(新プリキュア出た) • キャンプ2009卒、2012〜15チューター •
2016年からキャンプ講師 • ハードウェアリバースエンジニアリングを講義 • 2017年はBusPirateを使ってリバースする講義 • 温泉が好きです(温泉⾏きたい not ⾜湯)
今⽇の発表 • ほとんどデモなので、失敗したらごめんなさい
「この冬、Bus Pirateを使い倒す」 • Bus Pirateとは • Open Source Hardware and
Software Project • ハードウェア解析⽤の治具(?) • Mainlineはv3.6 • 千⽯電商、Switch Science • 4000円前後 • Switch Scienceのほうが少し安い
Bus Pirateで出来ること • 1-wire • I2C • SPI • JTAG
• Asynchronous serial(UART) • MIDI • PC Keyboard(PS/2) • HD447800 LCD • 2- and 3-wire libraries with bitwise pin control • Scriptable binary bitbang, 1-wire, I2C, SPI and UART 公式サイトより引⽤ 今⽇はここをデモ
Bus Pirateの概要図 PC USB-UART (FT232RL) BusPirate本体 (PIC24FJ64) MOSI/MISO Vcc, AUXなど
基本的にSerial経由で操作 • PyserialでPython Scriptable • 基本なpythonフレームワークは公開されてる • https://github.com/BusPirate • 基本的なやりかたも公開されてる
• http://dangerousprototypes.com/docs/Bus_Pirate_Scripting_in _Python • 例えば… • SPIのROMをdumpするとか • 1-wireでセンサデータを取得するとか • I2Cのデバイスの通信を取得するとか
とりあえず順番にデモ • UART • 1-wire • I2C • SPI •
JTAG • おまけ
UART • UARTモード • テストとして、出⼒したものを⼊⼒する • キーボード⼊⼒したものがターミナルに表⽰
モード切り替え • Hi-Z(⾼インピーダンスモード)→UARTモード • 初期はHi-Z mode、モード切り替えて使⽤ • Baud rate, stop
bitなどを設定 • オープンドレインでOutputの電圧を変更可能 • または3.3VのOutput • Inputはmax 5.5V • Transparent Bridgeにする
BusPirateの概要図 PC USB-UART (FT232RL) BusPirate本体 (PIC24FJ64) UART RX/TX PCからSerialが透過的に⾒える
1-wire • 1-wireの温度センサー • センサ系が多い(安価なデバイス) • DS18B20(秋⽉で変える1-wire温度センサIC)
I2C • I2CのROM dumpのデモ • I2Cで通信をするデバイスも多い • 例:Wiiのヌンチャク、SNESミニのコントローラ
こんな感じで接続 • Microchip 24LC64
SPI • SPIのEEPROMのdump • SPIは組込みのROMに使われることが多い • 例:ルーターのFlashROM(ファーム格納)
こんな感じで接続
ドキュメントの⽇本語化 • Bus Pirateチュートリアルを⽇本語化してます • ご協⼒いただける⼈は k@kitok.jp まで • たぶん今⽉中にどっかでアナウンスします
• 他のリバエンツールも探ってます • 主にSDRツール(HackRF, YardStickとか) • IoTSecなんだから、無線もやらないとね! • 有⽤Toolsのドキュメント⽇本語化を進めたい
Bus Pirateをつかって • いろんな機器を分解して遊ぼう! • でも法的なところは守ろう • 知的財産権とか、著作権とか • リバースするのは違法ではないが、リバースして同
様の製品を作るのは違法 • 機器によっては、ファームウェアリバースは違法 • Let’s hacking with Bus Pirate!