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
OWASP Top10-2017対応版Dockerイメージの使い方
Search
zash_shibainu
January 22, 2018
1
890
OWASP Top10-2017対応版Dockerイメージの使い方
2018/02/28:新リポジトリにPath変更
#OWASP #Mutillidae #脆弱性診断 #日本語
zash_shibainu
January 22, 2018
Tweet
Share
More Decks by zash_shibainu
See All by zash_shibainu
_脆弱性診断研究会_78_TruthPositiveのお話.pdf
zash_shibainu
0
63
[OWASP-Connnect-2]Snakes_and_Laddersやってみた.pdf
zash_shibainu
0
89
【eLV-SEC-2】ボードゲームでセキュリティを学ぼう.pdf
zash_shibainu
0
240
_SEC共有_15_過去のインシデント事例から学ぶこと.pdf
zash_shibainu
0
410
_eLV_Web脆弱性を体験しよう.pdf
zash_shibainu
1
510
【IaCC#2】DockerImageでアプリを配布しよう
zash_shibainu
1
220
【ええんやで#59】Mutillidaeのインストールを見よう
zash_shibainu
0
490
【ええんやで#57】他分野のプロから学ぶサイバーセキュリティ.pdf
zash_shibainu
1
140
没【ええんやで#57】2017年を振り返ってみる.pdf
zash_shibainu
0
130
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
328
21k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Fireside Chat
paigeccino
34
3.1k
Transcript
None
偶々MutillidaeⅡのサイトみたら… https://sourceforge.net/projects/mutillidae/ the OWASP Top Ten 2007, 2010, 2013 and
2017
None
None
None
というわけで、Dockerイメージ作って公開してみました。 何でDockerかって?配布が楽チンだからだよ(・∀・) https://hub.docker.com/r/zash11o/mutillidae2017/
というわけで、概念とか使い方とかザックリ説明します。 Dockerお勉強資料じゃないので、そのあたりはザックリです(;´Д`) 100%正しいことより、60%ぐらいの正しさ。 とりあえず使ってみようかな~と思ってもらえることを目指す (`・ω・´)
None
None
ハードウェア VMとかなかった時代(占有) VMができた時代(HW共有) コンテナの時代(OS共有) OS MW MW App App App
ハードウェア ハイパーバイザ OS OS MW MW MW App App App App ハードウェア OS コンテナ MW コンテナ 全部 占有 HW 共有 OSカーネル 共有 MW App App App App
VMの時代: VMイメージ=OS+MW+Apps 仮にOS:1.0GB + MW:500MB + Apps:100MB = 1.6GB共有 コンテナの時代:
コンテナ=MW+Apps OSの1.0GBは共有しなくて(・∀・)イイ!! Linuxさえ動けばおk! コンテナ自体はLinuxの技術。 Dockerは共通フォーマットみたいな感じ(JSONとか YAMLとか)
VMなら、OS起動時間+MW起動時間⇒数分 DockerならほぼMW起動時間だけ⇒数秒 +廃棄(Purge)も完全に!(脱獄除く) 一部セキュリティ製品(リモートブラウザ)でも採用。 スパコンでもコンテナ使ってるものも。 起動開始 VM ・カーネル読み込み ・ディスクマウント ・イニシャライズetc
・MW起動 コンテナ
ザックリと、ライブCDみたいなモノだと思ってください。 CD入れたら、サクッとOS起動!みたいな。 それがもう1段上のレイヤー(MW)で起こってます。 DockerHub ISOイメージ
None
前提条件: Linuxが動く。 Docker for Win/Macもあるけど使ったことない(;´Д`) 軽量なLinux(Mobi)入れてるだけだったから… VM上でも、物理PC(Me!)でも、様式は問いません。 それがいいところ。 今回はCentOS7で動かします! Debian/Ubuntuの人はyum→aptに読み替えてね。
あとパッケージ名がdockerじゃなくてdocker.ioです
AlpineLinux 4MiBぐらい!! MariaDB MySQLでもいいけど趣味 (こっちが本家と思ってる) ApacheHTTP + PHP DockerHub Alpine
リポジトリ SourceForge unzip / wget apk (yum/apt相当) mutillidae.zip mutillidae wget unzip ユーティリティも最小限 (デフォじゃ入ってない)
None
None
まずはターミナルに繋ぐ&Dockerのインストール。 [root@cent7targ ~]# yum install -y docker (最新版のDocker使いたい場合はリポジトリADDしてください) ====================================================================================== Package
アーキテクチャー バージョン リポジトリー 容量 ====================================================================================== インストール中: docker x86_64 2:1.12.6-68.gitec8512b.el7.centos extras 15 M トランザクションの要約 ====================================================================================== インストール 1 パッケージ 総ダウンロード容量: 15 M インストール容量: 52 M インストール: docker.x86_64 2:1.12.6-68.gitec8512b.el7.centos 完了しました! [root@cent7targ ~]#
Dockerサービスの起動。 [root@cent7targ ~]# systemctl start docker [root@cent7targ ~]# systemctl enable
docker [root@cent7targ ~]# systemctl status docker • docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since 月 2018-01-22 19:07:24 JST; 1min 20s ago Docs: http://docs.docker.com Main PID: 2236 (dockerd-current)
予め作っておいたので、DockerHubからPullします。 [root@cent7targ ~]# docker pull zash11o/mutillidae2017 Using default tag: latest
Trying to pull repository docker.io/zashshibainu/owasp-mutillidae-2017 ... latest: Pulling from docker.io/zashshibainu/owasp-mutillidae-2017 578b327bb460: Downloading 535.1 kB/67.09 MB 058d1a44bab8: Download complete 9c54cfa9684f: Waiting ~暫しかかります~ [root@cent7targ ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/zash11o/mutillidae2017 latest a2496b33e26c 49 minutes ago 374.8 MB mutillidae2017 があればおk
Dockerコンテナ起動。 [root@cent7targ ~]# docker run -d -p 60080:80 \ docker.io/zash11o/mutillidae2017
c0d9a1f6e567197b6376c4cd5452c91ccf734117a71fce74ed0f2a492f37ef51 [root@cent7mgr mutillidae2017]# -pオプション: ポートバインド: ホストの60080にアクセスすると コンテナの80番にリダイレクト
MutillidaeⅡの初期化画面が表示! 毎回出ちゃう… ⇒MariaDBの初期化が書き込まれないため ⇒A)あきらめる(対処法はなきにしもあらず)
まあ、サクッと検証用の環境起動するにはいいかな? と。 探せば、DVWAとかのDockerイメージもあります。 MutillidaeⅡは古い(2013版)のしかなかったので作った。
None