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
590
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
210
The reversing man
kitok
1
77
Other Decks in How-to & DIY
See All in How-to & DIY
enebularを活用したNode-REDによるIoTシステム開発と運用
taokiuhuru
0
290
IoT×サーモに挑戦する第一歩
runrunsan
0
190
やがてカンファレンス登壇者になる
yumechi
1
170
JAWS-UG東北[秋田] -東北エンジニアの祭典- AWSとJAWS-UG
awsjcpm
0
1.3k
教習資料PDF_4. 交差点編(優先・非優先)
sawagaku
0
6.1k
IoTLT vol100 #NT金沢 #iotlt
n0bisuke2
0
240
AWS User Community [JAWS-UG大分支部]
awsjcpm
2
110
もくもく会? / mokumokukai?
tbshiki
0
280
担当アイドルを応援する傘を作ろう! (として失敗した話)
subroh0508
0
360
「おうちクラウド」が今も熱い!
hirosat
2
890
2023年度にやりたいこと(めぐろLT会 #2)
funain
0
390
見極めと情報収集でスタートダッシュ_株式会社コミュカル 松岡 光隆
comucal
PRO
0
220
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
132
6.3k
Build The Right Thing And Hit Your Dates
maggiecrowley
24
2k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
21
1.6k
We Have a Design System, Now What?
morganepeng
43
6.8k
Testing 201, or: Great Expectations
jmmastey
28
6.4k
What's new in Ruby 2.0
geeforr
337
31k
KATA
mclloyd
15
12k
GitHub's CSS Performance
jonrohan
1025
450k
Docker and Python
trallard
34
2.7k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Transcript
この冬、BusPirateを 使い倒す きとけー(kitok)
[email protected]
⾃⼰紹介 • きとけー、きとけい、⽊藤 圭亮(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チュートリアルを⽇本語化してます • ご協⼒いただける⼈は
[email protected]
まで • たぶん今⽉中にどっかでアナウンスします
• 他のリバエンツールも探ってます • 主にSDRツール(HackRF, YardStickとか) • IoTSecなんだから、無線もやらないとね! • 有⽤Toolsのドキュメント⽇本語化を進めたい
Bus Pirateをつかって • いろんな機器を分解して遊ぼう! • でも法的なところは守ろう • 知的財産権とか、著作権とか • リバースするのは違法ではないが、リバースして同
様の製品を作るのは違法 • 機器によっては、ファームウェアリバースは違法 • Let’s hacking with Bus Pirate!