Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hacking Robotics

Avatar for kendemu kendemu
February 14, 2015

Hacking Robotics

Hacking Robotics

Avatar for kendemu

kendemu

February 14, 2015

Other Decks in Programming

Transcript

  1. 背景 セキュリティキャンプ 2014 全国大会 • Raspberry pi の IDS https://github.com/kendemu/embeddids

    • 家具インジェクション ファービーちゃん、 Roomba のハッキング
  2. Robot Operating System の特徴 ・可視化ツール ・メッセージ送信( IPC ) ・豊富なパッケージ ・並列プログラミング

    /  クラスタリング ・画像 /PointCloud 処理 ・ロボットモデリング /  シミュレーション ・クロスプラットフォーム ・動作計画 / ナビゲーション ・ P2P 通信アーキテクチャによる  プログラミングの拡張性 .etc
  3. ROS Technical Overview ・メッセージ送信はメッセージ型が簡単に  指定できる XML-RPC(HTTP ベース ) ・普段は TCP

    上を流れる、設定すれば UDP も ・プロセスのネームシステムである Master が  サービスクライアントの管理を行う   http://wiki.ros.org/ROS/Technical%20Overview
  4. 1. サービスが Master に Name を登録する 2. サービスが Master に他のサービスを問い合わせる

    3. サービスが他のサービスとの TCP/IP 通信を確立する 4. サービスと他のサービスが通信ヘッダを交換する 5. サービスがシリアル化されたメッセージを要求する 6. 他のサービスがシリアル化されたメッセージで応答する Node( プロセス / サービス ) の通信
  5. 何が可能か / まずいか 1. パケット改ざんで遠隔操作が可能 2. パケットの改ざん方法   TCP スプーフィングを行う

    3. 最近のロボットはクラウド AI/ アプリ連携等  インターネットにつながるものが多い→  ネットワークセキュリティが弱いことは現代のロボット  では致命的な問題
  6. 解決策 SSH,IPSec,SLL/TLS で暗号化 問題:ロボットの制御には遅い → 高速暗号化プロトコルが必要 ※IPSec や VPN では生パケットに比べ

    6 倍以上の 速度差がある http://d.hatena.ne.jp/nori_no/20100919/1284875253 ※ROS の XML-RPC パケット長は計測結果 400~600 バイトくらい (496±99.8 バイト )