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
物理なポチポチ操作自動化
Search
Tomohiko Morita
September 05, 2017
Technology
1
270
物理なポチポチ操作自動化
OWASP Kansai ローカルチャプターミーティング / OWASP DAY 2017 in OSAKA での発表資料です
Tomohiko Morita
September 05, 2017
Tweet
Share
More Decks by Tomohiko Morita
See All by Tomohiko Morita
(会社ライフ)ハッカーになろう / Let's Become a Corporate-life-hacker
deka_morita
0
940
ガンダム × ネーミング
deka_morita
0
700
クレジットカードを不正利用された話
deka_morita
0
1.4k
ガンダム勉強会@関西アンケート集計
deka_morita
0
790
ガンダム勉強会@サイド2開催にあたって
deka_morita
0
670
まじめな技術者のためのWEBフィルタリング回避術
deka_morita
1
950
Other Decks in Technology
See All in Technology
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
180
B2C&B2B&社内向けサービスを抱える開発組織におけるサービス価値を最大化するイニシアチブ管理
belongadmin
1
6.9k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
49
19k
SaaS型なのに自由度の高い本格CMSでサイト構築と運用のコスパ&タイパUP! MovableType.net の便利機能とユーザー事例のご紹介
masakah
0
110
United airlines®️ USA Contact Numbers: Complete 2025 Support Guide
unitedflyhelp
0
310
20250705 Headlamp: 專注可擴展性的 Kubernetes 用戶界面
pichuang
0
270
開発生産性を測る前にやるべきこと - 組織改善の実践 / Before Measuring Dev Productivity
kaonavi
9
4.3k
Lazy application authentication with Tailscale
bluehatbrit
0
210
Should Our Project Join the CNCF? (Japanese Recap)
whywaita
PRO
0
340
Delta airlines Customer®️ USA Contact Numbers: Complete 2025 Support Guide
deltahelp
0
700
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
230
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
230
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Fireside Chat
paigeccino
37
3.5k
GraphQLとの向き合い方2022年版
quramy
49
14k
Navigating Team Friction
lara
187
15k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Become a Pro
speakerdeck
PRO
29
5.4k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Visualization
eitanlees
146
16k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
The Cult of Friendly URLs
andyhume
79
6.5k
Rails Girls Zürich Keynote
gr2m
95
14k
Transcript
物理なポチポチ診断自動化 ~IoTデバイスにおけるセキュリティ診断の事例紹介~ 1.物理ボタン自動操作マシーンの事例 2.赤外線リモコン自動操作の事例 など
はじめに • 昨今の過重労働問題に端を発し、 • “働きかた改革”が推進されつつある中で • 業務効率化の解決策として • 自動化プログラムやAI、機械学習などによる •
“自動化”への期待が高まっている • 一方、 • IoTデバイスにおけるセキュリティ診断業務においては • 【物理的な壁】を乗り越える必要がある • デモを交え • 物理的な壁を乗り越える工夫について紹介する
▪悩みごと IoTデバイスの場合、特定の操作をしなければ動作しない機能が多い 特にクライアント機能が主であるため、様々なトリガーが必要 ・リモコン操作 ・物理的なボタン操作 ・電源のOff/ON操作 ・キーボード入力 長時間にわたる手作業が必要。 ▪解決策 IoTデバイスにおける診断業務における悩み
Panasonic PSIRT 3 手動 自動 操作の柔軟性 ◎ △ 初期調整が必要 並列作業 △ ◦ 容易にN増しが可能 夜間・休日作業 × ◎ 30⇒140時間/週 自動操作ロボットによる セキュリティ診断業務の効率化 ・ボタン押下の自動化 ・赤外線リモコンの自動化 ・キーボード入力の自動化 など TV:「番組表」ボタン押下でHTTPcが動作 レコーダ:「機器連携」ボタン押下でUPnPが動作 無線機器:「無線設定」ボタン押下でWPAcが動作 ドアホン:「再起動時」のみDHCPc機能が動作 ディスプレイ:操作し続けなければ「省電力モード」 すべて 手作業…
サーボモータを利用した簡易な装置を使用 1軸版:上下運動(単純なボタンの押下など)のみ可能 3軸版:3次元的な動作(タッチパネル上のキー入力など)が可能 PCより動作制御を行い、攻撃ツールとの連動が可能 物理操作自動化により、NW経由の攻撃の実施効率を向上 操作自動化事例①:物理ボタンの押下 Panasonic PSIRT
4 サーボ モータ 攻撃ツール 制御用PC 連動 または 無限ループ動作 3.リクエスト 送信 4.不正データ 応答 IoT デバイス 2.ボタン押下 (物理操作) 1.物理操作 指令送信 解決策:物理操作に関しては、簡単な動作を繰り返すロボットを活用 不正パケット による攻撃
リモコンから送出されるIR信号を模擬できる装置を活用 価格は比較的安価(数千円程度) リモコンからの信号を受信、再送することでリモコン操作を模擬 送信データを変更したり、順番の組替え等のカスタマイズも容易 リモコン自動化により、NW経由の攻撃の実施効率を向上 解決策:リモコン操作は「学習リモコン」やIR送受信装置の活用 1.IR信号送信
操作自動化事例② :赤外線リモコン Panasonic PSIRT 5 攻撃ツール 制御用PC 連動 または 無限ループ動作 2.リクエスト 送信 3.不正データ 応答 IoT デバイス 不正パケット による攻撃 IR 送受信装置
USB端子を備えたIoTデバイスは多い ログコピーなど保守用 専用の周辺端末接続 キーボード利用が想定されていない場合も 付属の専用周辺機器からのデータは想定内・・・ では、キーボードからのキー入力は?
さらにショートカットキーは? ▪想定される脆弱性の例 •機能制限された専用画面上でのタッチパネル操作からは アクセスできないはずの機能が、ショートカットキーで起動 •疑似キーボードから、通常のキーボード入力を超える流量の 大量な文字データ送信を行うと機器がハングアップ 解決策:疑似USBデバイスによる入力の総当たりチェック Panasonic PSIRT 6 大量のキー入力 Linuxショートカット Windowsショートカット プログラミング 診断対象(USB-host) 攻撃ツール(USB-device) 操作自動化事例③ :キーボード操作
• ポチポチ操作自動化 – Arduino & Python • import serial, serial.tools.list_ports
– DEFCON-21 • Engler-Vines-Electromechanical-PIN-Cracking • https://www.co.tt/files/defcon21/Speaker%20Materials/Justin%20E ngler%20and%20Paul%20Vines/Extras/ • 赤外線リモコン自動化 – PC-OP-RS1をpythonで操作する • http://buffalo.jp/products/catalog/item/p/pc-op-rs1/ • http://miti-7.hatenablog.com/entry/2015/12/31/100245 • 電源制御自動化 – リモート電源制御RC1504A • http://www.omron.co.jp/ese/ups/rc/rc1504a/rc1504a.html 参考1:
• GUI画面操作自動化 – Python • import pyautogui • im=pyautogui.screenshot() –
Windows 自動化ソフト UWSC • http://www.uwsc.info/ • Web処理自動化 – Python • import requests • from bs4 import BeautifulSoup • パケット処理自動化 – Python • import subprocess – Tshark • tshark -i IF_num -f pkt_fltr -c pkt_num -T fields -e frame.time_relative 参考2:
• ファイル・フォルダ操作の自動化 – Python • import os, shutils • os.listdir(any_path)
• shutil.move(file,path) • 画像、動画処理の自動化 – Python • import cv2 • from PIL import Image,ImageChops,ImageDraw • import numpy as np • コマンド実行自動化 – Python • import subprocess • subprocess.Popen(r'explorer /open,'+line) 参考3:
• 退屈なこと – Pythonにやらせよう • https://automatetheboringstuff.com/ • 地味な作業を自動化する温故知新なTIPS – 単純作業を自動化して人類の無駄な時間をなくそう@takesako
– http://takesako.hatenablog.com/entry/2016/12/05/23575 1 • sshで30台のサーバを自動化セットアップ • マインスイーパーの自動化 • BadUSBによるキーボード入力の自動化 参考3:
日本経済新聞-わたしの仕事、ロボットに奪われますか?:日本経済新聞 https://vdata.nikkei.com/newsgraphics/ft-ai-job/ 参考4:
Future Work • 定常的なツール診断業務はすべて自動化 – NWカメラの画像検出によるIoTデバイスの死活確認 – 夜間・休日の自動診断 – 複数のセキュリティ診断ツールの自動実行
– 診断ログの蓄積 – 異常検知時の通知 • あいた時間を重要な手動診断や先行技術開発に • より、効率の良い自動化について • アイディアがあれば • ぜひ語り合いましょう