Amazon Dash Buttonを乗っ取り、任意のコマンドを実行する
AMAZON DASH HACK@第33回シェル芸勉強会 大阪サテライト msr-i386 / slide_20180127_dash
View Slide
目次Amazon Dash ButtonとはDash Button Hack方法デモまとめ msr-i386 / slide_20180127_dash
自己紹介ハンドルネーム: MSRWebブラウザ の作者Twitter ID: @msr386Tungsten msr-i386 / slide_20180127_dash
AMAZON DASHBUTTON押すだけで商品が買えるボタン (※要設定)定価500円初回購入時に500円割引してくれるので実質タダで入手可能Amazon Prime会員限定 msr-i386 / slide_20180127_dash
今回の目的Dash Buttonをハックするボタンを押しても商品を買えないようにするdasherを使用してHTTPリクエストをオーバーライドするシェルコマンドが実行されるようにする msr-i386 / slide_20180127_dash
用意するものAmazon Dash ButtonWi-FiルーターMacOSもしくはLinuxがインストールされたPC注) WSL (Windows Subsystem for Linux)は使用不可root権限 msr-i386 / slide_20180127_dash
セットアップ msr-i386 / slide_20180127_dash
DASH BUTTONの初期設定スマートフォン向けAmazonアプリから、DashButtonの設定を行うを 参照し、DashButtonの設定を行っていく。ただし...商品選択画面で商品を選ばずに終了する (重要)商品を選んでしまうと、注文が成立してしまうAmazon公式のセットアップ方法 msr-i386 / slide_20180127_dash
環境整備(1)node.js, libpcapのインストールdasherのインストール$ sudo apt install nodejs npm libpcap-dev$ node -v$ python --version$ git clone https://github.com/maddox/dasher.g$ cd dasher$ npm install msr-i386 / slide_20180127_dash
環境整備(2)Dash ButtonのMACアドレスを取得$ ./script/find_button msr-i386 / slide_20180127_dash
DASHER準備config/config.jsonを編集※dasherにはURLのリクエストを送ったり、任意のコマンド実行したりできると連携したり、 に投げたりするのが実用的{"buttons":[{"name" : "test Dash","address": "xx:xx:xx:xx:xx:xx","protocol": "udp","cmd": "echo TEST"}]}IFTTT AWS API Gateway msr-i386 / slide_20180127_dash
実行$ sudo npm run start msr-i386 / slide_20180127_dash
デモ msr-i386 / slide_20180127_dash
参考Amazon Dash ButtonをただのIoTボタンとして使うワンライナーWebサーバを集めてみたhttps://qiita.com/jsoizo/items/3b8bba4160f41aef20f4https://qiita.com/sudahiroshi/items/e74d61d939f18779970d# msr-i386 / slide_20180127_dash
おまけ自爆 Dash Button msr-i386 / slide_20180127_dash