Submit Search
Upload
Making AutoRun USB HID Device / 自動入力するHIDデバイスを安く簡単に作る
•
1 like
•
6,568 views
玲 佐藤
Follow
BadUSBを皮切りに自動入力するHIDデバイスの危険性が話題になっています。既存の高機能なデバイスよりも、機能を犠牲にしつつより簡単に安く作成する方法を考えてみました。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 13
Recommended
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
K Kimura
みんな現像ってどうしてる?
みんな現像ってどうしてる?
玲 佐藤
My new keyboard
My new keyboard
Makoto Yamagishi
おじさんのぬるーい話(Keyboad)
おじさんのぬるーい話(Keyboad)
Kenzo Nagahisa
ldapcon2015 hamano
ldapcon2015 hamano
Tsukasa Hamano
コーパス学習による Apache Solr の徹底活用
コーパス学習による Apache Solr の徹底活用
Koji Sekiguchi
OpenSC JPKIカードドライバ
OpenSC JPKIカードドライバ
Tsukasa Hamano
HMM viterbi
HMM viterbi
Koji Sekiguchi
Recommended
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
K Kimura
みんな現像ってどうしてる?
みんな現像ってどうしてる?
玲 佐藤
My new keyboard
My new keyboard
Makoto Yamagishi
おじさんのぬるーい話(Keyboad)
おじさんのぬるーい話(Keyboad)
Kenzo Nagahisa
ldapcon2015 hamano
ldapcon2015 hamano
Tsukasa Hamano
コーパス学習による Apache Solr の徹底活用
コーパス学習による Apache Solr の徹底活用
Koji Sekiguchi
OpenSC JPKIカードドライバ
OpenSC JPKIカードドライバ
Tsukasa Hamano
HMM viterbi
HMM viterbi
Koji Sekiguchi
Apache Solr 検索エンジン入門
Apache Solr 検索エンジン入門
Yahoo!デベロッパーネットワーク
10年前「Microsoftの社員だと思って働け!」と教育されて嫌気がさして出てった人から見た「外の世界」の話 #JCCMVP
10年前「Microsoftの社員だと思って働け!」と教育されて嫌気がさして出てった人から見た「外の世界」の話 #JCCMVP
Kazuhito Miura
IoTって何が良いの? 〜言うてるオレもわからんわ〜 #kinoko_iot
IoTって何が良いの? 〜言うてるオレもわからんわ〜 #kinoko_iot
Kazuhito Miura
脱「丸コピー」のための電子回路入門
脱「丸コピー」のための電子回路入門
Ryota Suzuki
KiCadで雑に基板を作る チュートリアル
KiCadで雑に基板を作る チュートリアル
裕士 常田
とあるギークのキーボード遍歴
とあるギークのキーボード遍歴
Mikiya Okuno
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
More Related Content
Viewers also liked
Apache Solr 検索エンジン入門
Apache Solr 検索エンジン入門
Yahoo!デベロッパーネットワーク
10年前「Microsoftの社員だと思って働け!」と教育されて嫌気がさして出てった人から見た「外の世界」の話 #JCCMVP
10年前「Microsoftの社員だと思って働け!」と教育されて嫌気がさして出てった人から見た「外の世界」の話 #JCCMVP
Kazuhito Miura
IoTって何が良いの? 〜言うてるオレもわからんわ〜 #kinoko_iot
IoTって何が良いの? 〜言うてるオレもわからんわ〜 #kinoko_iot
Kazuhito Miura
脱「丸コピー」のための電子回路入門
脱「丸コピー」のための電子回路入門
Ryota Suzuki
KiCadで雑に基板を作る チュートリアル
KiCadで雑に基板を作る チュートリアル
裕士 常田
とあるギークのキーボード遍歴
とあるギークのキーボード遍歴
Mikiya Okuno
Viewers also liked
(6)
Apache Solr 検索エンジン入門
Apache Solr 検索エンジン入門
10年前「Microsoftの社員だと思って働け!」と教育されて嫌気がさして出てった人から見た「外の世界」の話 #JCCMVP
10年前「Microsoftの社員だと思って働け!」と教育されて嫌気がさして出てった人から見た「外の世界」の話 #JCCMVP
IoTって何が良いの? 〜言うてるオレもわからんわ〜 #kinoko_iot
IoTって何が良いの? 〜言うてるオレもわからんわ〜 #kinoko_iot
脱「丸コピー」のための電子回路入門
脱「丸コピー」のための電子回路入門
KiCadで雑に基板を作る チュートリアル
KiCadで雑に基板を作る チュートリアル
とあるギークのキーボード遍歴
とあるギークのキーボード遍歴
Recently uploaded
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
Recently uploaded
(8)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Making AutoRun USB HID Device / 自動入力するHIDデバイスを安く簡単に作る
1.
Making AutoRun USB HID
device 自動入力するHIDデバイスを安く簡単に作る R SATO(佐藤 玲) http://reisato.plala.jp/rsato/ 1
2.
BadUSB、ご存じですか? ◦コンピューターセキュリティの国際会議で あるBlackHat 2014 USAにてKarsten
Nohlと Jakob Lellにより発表されたレポート ◦USBデバイスの危険性を指摘&デモ ◦USBデバイスのコントローラーの一部は ファームウェアをPCから書き換えられるた め、悪意のある動作をするデバイスを簡 単に作れてしまう 2
3.
USBメモリをBadUSB化する ◦Derbycon 4.0にてAdam CaudillとBrandon WilsonがBadUSBをリバースエンジニアリン グしたと発表 ◦USBメモリのファームウェアを改ざんして キーを自動入力するキーボードデバイス に変えてしまうコードとツールをGitHubに 公開した ◦非常に危険 3
4.
自動入力するHIDデバイスの リスク ◦最近のPC用OSはコマンドでいろいろできる 1. DNS設定の書き換え 2. Web上のファイル(バックドアなど)のダ ウンロード 3.
PCや近傍ネットワーク内の情報の収集 とアップロード 4. 掲示板への書き込み 5. などなど… 4
5.
自動入力するHIDデバイス例 USB Rubber Ducky ◦
GitHubにて公開されたBadUSB化 ツールがキーボード自動入力の機 能として使用 ◦ 独自スクリプトでキー入力を定義 USBdriveby ◦ TeensyというUSB機器開発ボードの ファームウェア ◦ 接続したPCにバックドアを仕掛ける ◦ もちろんWindows/OS X/Linux対応 5
6.
なんか便利&危険そうなんだけれど デバイス入手しづらい!高い! 動作させるために手間がかかる! (も動作要件とかは適当で良いので) もっと安く簡単に自動入力する HIDデバイスを作りましょう 6
7.
Adruinoを使います File:Arduino Leonardo.jpg 出典:ウィキメディア・コモンズ
(Wikimedia Commons) 7
8.
Arduino( アルドゥイーノ)とは ◦オープンソースのハードウェアプロトタイピン グプラットフォーム ◦ソフトウェアはもちろん、ハードウェアもオー プンソース ◦マイコンの難しい話(レジスタや割り込み等) を理解していなくても、簡単にマイコン電子工 作ができる ◦開発環境はProcessingベース ◦ボードは秋葉原やAmazonで安価に入手可能 8
9.
ArduinoをHIDにする ◦Arduinoの現行品であるLeonardo, Micro, Dueでは、HIDエミュレーション機能がある ◦PCに接続するとキーボードやマウスとして 認識、コードで指定したキー入力やマウス 操作を行える ◦この機能を使ってArduinoを自動入力する HIDにしてみましょう 9
10.
主なキーボード操作関数 Keyboard.begin() …キーボード開始 Keyboard.end() …キーボード終了 Keyboard.press()
…指定したキーを押す Keyboard.print() …指定した文字列を入力 Keyboard.release() …指定したキーを離す Keyboard.releaseAll() …全てのキーを離す マウスも同様にクリックや移動の指定ができる 10
11.
コード例:メモ帳を起動 簡単のためにウェイト調整は除いてあります。 void setup() {
// 初期設定部 Keyboard.begin(); // キーボード開始 } void loop() {// ループ実行部 Keyboard.press(KEY_LEFT_GUI); // 左Windowsキー Keyboard.press('R'); // Win+R:ファイル名を指定して実行 Keyboard.releaseAll(); // キーを話す Keyboard.print("notepad"); // メモ帳(notepad)を指定 Keyboard.press('KEY_RETURN'); // Enter Keyboard.releaseAll(); // ここでメモ帳が起動 Keyboard.end(); while (true); // 1回のみ実行するためここで無限ループで止める } 11
12.
ArduinoはBadUSB化の ターゲットになる ◦開発用のデバイスはマルウェアなどによっ て意図せずにファームウェアを書き換える 格好のターゲットになり得る ◦Arduinoの趣味での使用はもちろん、プロ ダクトにそのまま組み込まれている場合、 HID機能を悪用したファームウェアへの書 き換えをされてしまうかも 12
13.
参考Webサイト USBに設計上の致命的な脆弱性が発見され、そのコードが公開される ◦ http://gigazine.net/news/20141006-badusb/ ◦ BadUSBの概要やGitHubのコードがあります USB
Rubber Ducky ◦ http://usbrubberducky.com USBハックの実働シーン怖い。二度とパソコン離れたくなくなる ◦ http://www.gizmodo.jp/2014/12/_os_x.html ◦ USBdrivebyの話 Arduino ◦ http://arduino.cc/ 13