SlideShare a Scribd company logo
Dockerを使って
OSコマンドインジェクションが
出来るSlack botを作った話
自己紹介
• IS科3回生
• 自然言語処理研究室
• 自然言語処理,機械学習,深層学習
• 好き
• C++,Python
• Vim
• 競技プログラミング
• 興味あり
• 人工知能
• CI/CD, DevOps
• 自動化
1
2
Dockerを使って
OSコマンドインジェクションが
出来るSlack botを作った話
3
Dockerを使って
OSコマンドインジェクションが
出来るSlack botを作った話
Dockerとは
• コンテナ型仮想化を行うソフトウェア
• 2013年に登場
• Go言語で書かれている
• コンテナとは仮想OSのこと
• 一台のマシンで複数のOSが動作する
• Virtual Boxなどの仮想マシンとは少し違う
4
Dockerとは
5
ベッド
ベッド
ベッド
トイレ
風呂
キ
ッ
チ
ン
一軒家
(物理マシン)
賃貸マンション
(仮想マシン)
シェアハウス
(コンテナ)
*参考: Docker実戦活用
ガイド(マイナビ出版)
Dockerとは
コンテナ 仮想マシン
OSの起動 速い 遅い
リソース消費 少ない 多い
OSの種類 Linuxのみ なんでも
6
コンテナ(Docker)と仮想マシン(Virtual Box等)の比較
*参考: Docker実戦活用
ガイド(マイナビ出版)
7
Dockerを使って
OSコマンドインジェクションが
出来るSlack botを作った話
8
Dockerを使って
OSコマンドインジェクションが
出来るSlack botを作った話
OSコマンドインジェクションとは
• ユーザからの入力を受け付けるWebサイトで
プログラムのパラメータにOSに対する
コマンドを紛れさせて不正操作する攻撃
9
不正なコマンド
クラッカー
脆弱性のある
Webサーバ
不正操作
情報漏洩
OSコマンドインジェクションとは
• 任意コマンドを実行されるのは重大な脆弱性
• パスワードの漏洩
• cat /etc/passwd
• 秘密鍵の漏洩
• cat ~/.ssh/id_rsa
• サーバのデータ全消し
• rm –rf /
10
11
Dockerを使って
OSコマンドインジェクションが
出来るSlack botを作った話
12
Dockerを使って
OSコマンドインジェクションが
出来るSlack botを作った話
Slack botとは
• Slackは皆さんお馴染みのチャットツール
• botとは機械による自動発言システム
• サービスから提供されているAPIを叩いて作る
• 今回はPython製のslackhq/python-rtmbotという
Frameworkを使った
13
Slack botとは
• ソースコード
• https://github.com/odanado/slackbot-os-command-
injection
14
OSコマンドインジェクションが
出来るSlack botのいらすと
全体の流れ
15
@付きで
コマンド送信
デモ
• ご一緒にどうぞ
• 何しても大丈夫です
• ハッキングしよう!!
16
実際にOSコマンドインジェクションを
行います
今後
• bash以外の言語を実行できるようになる
• C言語
• Java
• Python
• Ruby
• PHP
• Dockerの特性を活かして部内サーバを部員が
自由に使えるようにします
• 作業が遅れていてもうしばらく時間がかかります
• ごめんなさい...
17
まとめ
• Dockerはコンテナ仮想型化を行うツール
• 高速に起動し,リソースの消費量が少ない
• 自分だけの環境が手に入る
• OSコマンドインジェクションは重大な脆弱性
• パスワードの漏洩やデータ改竄の危険
• Slack botはSlack上での自動発言ツール
• 今回はPython製のFrameworkを使った
18

More Related Content

PDF
Dockerプレゼン
PDF
LT#7 Hello coffeeしてきた
PDF
Dockerfile for Perl development
PDF
Couch DB in 15minutes
PDF
peco活用術
PPTX
Unixコマンド入門
KEY
正月発火村に参加して変なJobQueueサーバー作った話
PDF
Unix architecture
Dockerプレゼン
LT#7 Hello coffeeしてきた
Dockerfile for Perl development
Couch DB in 15minutes
peco活用術
Unixコマンド入門
正月発火村に参加して変なJobQueueサーバー作った話
Unix architecture

Viewers also liked (20)

PDF
TranslimitのChatOps事情と愉快なbotたち
PDF
2015年4月ペパボテックカンファレンス資料
PDF
【Mobidays】KM-Report 2016年9月
PPTX
サンタBot説明
PPTX
Facebook bot(20160518)
PDF
LINE@ 新手帳號設定五步驟介紹
PPTX
Facebook Messenger Platform Framework
PDF
我が家を支えるChatOps
PDF
やるおがtriphone HMMを作るようです
PPTX
Slackとgoogle appsscript(js)で作る俺の秘書ハンズオン
PDF
Bot に家計を任せる
PDF
Microsoft Bot framework 概要
PDF
Bot mashup world LT Bot ✖️ HMM
PPTX
千里之行,始於足下:動手寫自己的App
PDF
DDoS対策の自動化
PDF
Botと対話する
PDF
[mobidays]KM-Report(韩国移动市场的最新潮流一目了然)
PDF
中の下のエンジニアを脱出するための目標設定
PPTX
Slack + Hubot でお前の一番好きな二次元嫁キャラと一緒に仕事をする
PDF
Build your first messenger bot
TranslimitのChatOps事情と愉快なbotたち
2015年4月ペパボテックカンファレンス資料
【Mobidays】KM-Report 2016年9月
サンタBot説明
Facebook bot(20160518)
LINE@ 新手帳號設定五步驟介紹
Facebook Messenger Platform Framework
我が家を支えるChatOps
やるおがtriphone HMMを作るようです
Slackとgoogle appsscript(js)で作る俺の秘書ハンズオン
Bot に家計を任せる
Microsoft Bot framework 概要
Bot mashup world LT Bot ✖️ HMM
千里之行,始於足下:動手寫自己的App
DDoS対策の自動化
Botと対話する
[mobidays]KM-Report(韩国移动市场的最新潮流一目了然)
中の下のエンジニアを脱出するための目標設定
Slack + Hubot でお前の一番好きな二次元嫁キャラと一緒に仕事をする
Build your first messenger bot
Ad

Similar to Dockerを使ってOSコマンドインジェクションが出来るSlack botを作った話 (20)

PDF
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
PPTX
Dockerを使ってみよう
PDF
【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座
PDF
Dockerイメージ構築 実践テクニック
PDF
Docker最新動向2017秋+セキュリティの落とし穴
PDF
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
PPTX
Dockerのキホンその2 Docker Compose Swarm Machine 利用編
PDF
オトナのDocker入門
PPTX
Docker v14
PPTX
ラズパイ2で動く Docker PaaSを作ってみたよ
PDF
Docker Swarm モード にゅうもん
PPTX
Docker超入門
PPTX
コンテナの基本 ~Docker実践~
PDF
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
PDF
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
PPTX
第一回コンテナ情報交換会@関西
PDF
Docker入門: コンテナ型仮想化技術の仕組みと使い方
PDF
Docker handson
PDF
Docker入門 - 基礎編 いまから始めるDocker管理
PPTX
今さら聞けない人のためのDocker超入門
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerを使ってみよう
【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座
Dockerイメージ構築 実践テクニック
Docker最新動向2017秋+セキュリティの落とし穴
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Dockerのキホンその2 Docker Compose Swarm Machine 利用編
オトナのDocker入門
Docker v14
ラズパイ2で動く Docker PaaSを作ってみたよ
Docker Swarm モード にゅうもん
Docker超入門
コンテナの基本 ~Docker実践~
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
第一回コンテナ情報交換会@関西
Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker handson
Docker入門 - 基礎編 いまから始めるDocker管理
今さら聞けない人のためのDocker超入門
Ad

Dockerを使ってOSコマンドインジェクションが出来るSlack botを作った話

Editor's Notes

  • #4: 質問する