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
20191026_pronama_juiceshop
Search
ONO,Tetsuo
October 26, 2019
0
400
20191026_pronama_juiceshop
とりあえずdockerでjuiceshopとctfdを同居させるための手順書みたいなお話です。
ONO,Tetsuo
October 26, 2019
Tweet
Share
More Decks by ONO,Tetsuo
See All by ONO,Tetsuo
20240127_NGK2024S_DM
gplains
0
290
20230121_NGK2023S_DM
gplains
0
410
202101_t1d_telework
gplains
0
430
202012_juiceshop
gplains
0
110
20201218_pktmon_netsh
gplains
0
570
20201130_keepalived
gplains
0
120
20201123_prep_exam_1
gplains
0
110
202011_rsyslog
gplains
0
41
20201117_vagrant
gplains
0
94
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Visualization
eitanlees
146
15k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Six Lessons from altMBA
skipperchong
27
3.6k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Transcript
JuiceShopCTFで考える安全なウェブサイト 大野 哲生(@g_plains) On 2019/10/26
おやくそく 当該スライドに登場するアプリケーションは、不 具合調査やその前提となる技能の習得のために作 られたものです。 構内での自習や、ウェブアプリケーションの受け 入れ検査など、利用が許可された環境でのみ実施 するようおねがいします。
AWSなどのクラウド上でCTF環境を構築する際に は「防災訓練」等の契約上の申請が必要なことが あります。
おしながき 自己紹介 ウェブサイトのライフサイクル 検査のためのの知識づくり OWASP JuiceShop(とCTFd)のインストール
OWASP JuiceShopで困ったこと まとめ
自己紹介 ハンドル :こてつ(@g_plains) 出身 : 愛知で銀杏のおいしいところ おしごと
: 派遣社員(システム運用管理)
ウェブサイトのライフサイクル 設計して、素材集めて作ります 納品前に、受け入れ検査をするよね 納品後に、周辺環境が変わったら、また検査が必要かも? …検査ってどうやればいいのかな?
検査のための知識? 関数だったら、「ユニットテスト」ができるよね 画面の操作で見つかるバグって、ユニットテストで見つけら れるのかなぁ… 手入力でどんなバグを見つけられるか、実際にやってみよ う! …ということで、
OWASP JuiceShopのご紹介。
OWASP JuiceShop OWASPの「やられアプリ」プロジェクト https://www2.owasp.org/www-project-juice-shop/ FBCTFやCTFdで出題する「CTF機能」もあるよ 環境作るのが大変ってときはherokuにもあるよ https://juice-shop.herokuapp.com/
ドキュメントが全部英語(つらい) ともかく、JuiceShopとCTFd連携まで、作ってみよう
JuiceShopのインストール-1 適当なLinux環境に、dockerをインストールします。 CentOS7だと、こんな感じ KALI LinuxだとOWASP ZAPが入ってたりして便利です。 $ sudo
yum install docker $ sudo systemctl start docker
JuiceShopのインストール-2 DockerHubからリポジトリを集めます。 今回は、ctfdも一緒にpullします。 $ sudo docker pull bkimminich/juice-shop $
sudo docker pull ctfd/ctfd $ sudo docker pull bkimminich/juice-shop-ctf $ docker pull nahidupa/fbctf
JuiceShopのインストール-3 まずはjuiceshop を起動するよ。引数の「CTF_KEY」は、 CTFモードでつかうタネになります。 例) http://172.16.226.136:3000/#/ $ sudo docker
run -d -e "CTF_KEY=pn1026" -e "NODE_ENV=ctf" -p 3000:3000 --name juiceshop bkimminich/juice-shop
JuiceShopのインストール-4 適当なフォルダに移動して、設定ファイルを作ります。 今回は、juiceshop.ymlって名前にしますか。 次のコマンドを1回だけ実行。何かzipファイルができます。 できたzipファイルは、scpか何かで手元にコピー。 ctfFramework: CTFd 2.x
juiceShopUrl: https://juice-shop.herokuapp.com ctfKey: pn1026 insertHints: free insertHintUrls: free $ sudo docker run -ti --rm -v $(pwd):/data:Z bkimminich/juice-shop-ctf --config juiceshop.yml
JuiceShopのインストール-5 CTFdを起動します。 CTFdのセットアップ画面で、先ほど作成したzipファイルを 取り込んでみましょう。 例) http://172.16.226.136:8000/setup $ sudo
docker run --name ctfd -p 8000:8000 ctfd/ctfd
JuiceShopのインストール-6 CTFdのセットアップ画面で、先ほど作成したzipファイルを 取り込んでみましょう。 (設定は取り込み後にリセットされます。)
JuiceShopのインストール-7 ひとまず、CTFdのスコアボードを見てみましょう(英語だ)
JuiceShop(CTFモード) JuiceShopの課題「スコアボードの表示」を実績解除して、 スコアボードの画面に異動すると…お、なんか出てきた →出てきたキーワードをコピペしてCTFdに張り付けると CTFdでポイントが付きます
JuiceShopでの困ったこと UIはちょっとだけ日本語だが、原則英語 ヒントの文句は全部英語 https://bkimminich.gitbooks.io/pwning-owasp-juice- shop/content/ 日本語ヒント埋め込めないかな...すみません追い付けません でした。
Orz (ヒントの部分のコードを読みましたが、全部英語でハード コードされていました。ロケールェ)
最後に 身につけた技術は使いどころが難しいですが、 ウェブシステムのテストやデバッグには十分使え ると思います! 安全なウェブサイト作り、みんなでがんばりま しょう!