Slide 1

Slide 1 text

OWASP FOUNDATION ® OWASP Juice Shopを 触ってみよう! 2022/12/16

Slide 2

Slide 2 text

OWASP FOUNDATION 目次 1. OWASP Juice Shopの紹介 2. ハンズオン環境の作成 3. OWASP Juice Shopの使い方 4. スコアボードの見方 5. 自由に使ってみよう 6. ローカル環境で使う 7. Appendix

Slide 3

Slide 3 text

OWASP FOUNDATION 1. OWASP Juice Shopの紹介

Slide 4

Slide 4 text

OWASP FOUNDATION OWASP Juice Shop • Webアプリケーションの脆弱性を意図的に組み込んだトレー ニング用環境(やられサイト) • 2014年9月に開発開始 →2016年9月にOAWSP Projectに追加 →2018年7月にFLAGSHIP Projectに昇格 • オフィシャルサイトURL:https://owasp-juice.shop

Slide 5

Slide 5 text

OWASP FOUNDATION Juice Shopの名前由来 • ドイツ語で「ゴミ捨て場(お粗末な商品を販売するお店)」 を"Saftladen”と呼ぶ →これを英語に再翻訳すると”Juice Shop” • JavaScript の”JS”とJuice Shopの”JS”が一致したのは偶然

Slide 6

Slide 6 text

OWASP FOUNDATION 3. OWASP Juice Shopの使い方

Slide 7

Slide 7 text

OWASP FOUNDATION Juice Shop画面

Slide 8

Slide 8 text

OWASP FOUNDATION Juice Shop画面 メニューを表示する

Slide 9

Slide 9 text

OWASP FOUNDATION Juice Shop画面 商品を検索する

Slide 10

Slide 10 text

OWASP FOUNDATION Juice Shop画面 Juice Shop用のアカウントを作 成、ログインする

Slide 11

Slide 11 text

OWASP FOUNDATION OWASP Juice Shopの使い方 • Juice Shopの画面上に沢山の脆弱性が組み込まれており、そ れを発見(=Hacking)すると結果が記録される。

Slide 12

Slide 12 text

OWASP FOUNDATION OWASP Juice Shopの使い方 • 発見した脆弱性はスコアボード画面で確認可能。 • ただし、スコアボードへのリンクが無い。 • 「スコアボードを表示する事」自体が課題の1つになっている。

Slide 13

Slide 13 text

OWASP FOUNDATION スコアボードの見つけ方 • URLを類推する • HTMLのコードを調べる • ZAPなどのテストツールを使用する • JavaScriptのコードを調べる → このあと説明します …など

Slide 14

Slide 14 text

OWASP FOUNDATION JavaScriptのコードを調べる • Webブラウザの開発者ツール(Dev Tools)を使用する。 • 開発者ツールの起動方法(例) • ブラウザ画面上で「F12」キー

Slide 15

Slide 15 text

OWASP FOUNDATION 画面レイアウト、UIはブラウザによって異なります。 (図はMicrosoft Edgeを使った場合、以後の画面キャプチャも同様)

Slide 16

Slide 16 text

OWASP FOUNDATION 「ソース」タブを選択 「main.js」ファイルをダブルクリックで開く

Slide 17

Slide 17 text

OWASP FOUNDATION 「{}」ボタン(自動整形ボタン)をクリック

Slide 18

Slide 18 text

OWASP FOUNDATION 自動整形されたソースコードが表示される

Slide 19

Slide 19 text

OWASP FOUNDATION 「Ctrl」+「F」キーをタイプし、検索フォームを表示する

Slide 20

Slide 20 text

OWASP FOUNDATION path : “score-board”とコードが記載してある。 →怪しい 🤔 “score”で検索してみる

Slide 21

Slide 21 text

OWASP FOUNDATION URLに”score-board”を付加してアクセス

Slide 22

Slide 22 text

OWASP FOUNDATION スコアボードが表示された

Slide 23

Slide 23 text

OWASP FOUNDATION 一度スコアボードをアクセスするとメニューに追加される

Slide 24

Slide 24 text

OWASP FOUNDATION 開発者ツールの使い方(参考URL) • OWASP Web Security Testing Guide(英語) https://owasp.org/www-project-web-security-testing-gu ide/latest/6-Appendix/F-Leveraging_Dev_Tools • Chrome DevTools(英語) https://developer.chrome.com/docs/devtools/ • Microsoft Edge DevTools https://learn.microsoft.com/ja-jp/microsoft-edge/devtoo ls-guide-chromium/landing/

Slide 25

Slide 25 text

OWASP FOUNDATION 4. スコアボードの見方

Slide 26

Slide 26 text

OWASP FOUNDATION スコアボード画面 難易度・カテゴリ別に脆弱性の一覧を表示

Slide 27

Slide 27 text

OWASP FOUNDATION スコアボード画面 挑戦結果をファイルに保存・復元

Slide 28

Slide 28 text

OWASP FOUNDATION スコアボード画面 ステータスを表示

Slide 29

Slide 29 text

OWASP FOUNDATION スコアボード画面 アイコン 説明 未発見の脆弱性、クリックすると解説ページを表示する 発見済みの脆弱性 クリックするとチュートリアルを表示

Slide 30

Slide 30 text

OWASP FOUNDATION スコアボード画面 アイコン 説明 コーディングチャレンジ ※解決済み課題の一部に表示 ※時間の都合上  説明は割愛します

Slide 31

Slide 31 text

OWASP FOUNDATION 実績をエクスポート 別環境のJuice Shopに実績を引き継ぎたい場合は、この ボタンをクリックしてファイルを保存する

Slide 32

Slide 32 text

OWASP FOUNDATION 6. ローカル環境で使用する

Slide 33

Slide 33 text

OWASP FOUNDATION ローカル構築方法 • ソースからビルドして実行 • ビルド済みパッケージを実行 → このあと説明します • Dockerコンテナ上で実行 • Vagrant仮想環境で実行 • AWS(EC2)上で実行 …など • 詳細は↓に記載してあります https://github.com/juice-shop/juice-shop#setup

Slide 34

Slide 34 text

OWASP FOUNDATION ビルド済みパッケージを実行 Node.jsを端末にインストール https://nodejs.org/en/download/ • 64bit版 • Versionは18.x or 16.x or 14.x を選択 Versionを確認 OSに対応したインストーラを選択

Slide 35

Slide 35 text

OWASP FOUNDATION ビルド済みパッケージを実行 GitHubのReleaseページからJuice Shopをダウンロードし任意の フォルダに展開 https://github.com/juice-shop/juice-shop/releases ファイル名が以下の形式になっている juice-shop-___x64 … Juice Shopのバージョン … 対応するNode.jsのバージョン … OS

Slide 36

Slide 36 text

OWASP FOUNDATION ビルド済みパッケージを実行 コンソールウィンドウ(コマンドプロンプト)を起動し展開した ディレクトリに移動後、 npm start コマンドを実行 この表示になったらOK

Slide 37

Slide 37 text

OWASP FOUNDATION ビルド済みパッケージを実行 ブラウザを起動し、 http://localhost:3000 にアクセス

Slide 38

Slide 38 text

OWASP FOUNDATION ビルド済みパッケージを実行 スコアボードを表示し、エクスポートしたファ イルを読み込ませると実績が引継ぎできる。

Slide 39

Slide 39 text

OWASP FOUNDATION 7. Appendix

Slide 40

Slide 40 text

OWASP FOUNDATION Appendix • Projectサイト https://owasp-juice.shop/ • Companion Guide https://pwning.owasp-juice.shop/