OWASP Juice Shop

わざと脆弱に作られた練習用のネットショップ。自分のパソコンで動かし、Web の脆弱性探しや診断ツールの練習に使える。

cat juice-shop/meta.yml確認日 2026-10-24

安全性

影響範囲 手元だけ自分の端末の中で完結し、外には何も送らない
管理者権限
不要
検証環境
不要

使い方

用途
学習
難易度
初級
形態
練習用の環境
対応環境
Docker / Windows / macOS / Linux

信頼性

リポジトリ
juice-shop/juice-shop
ライセンス
自由に使えるMIT
GitHub
スター14,2282026-10-25 時点
メンテ状況
更新が続いている最終更新 2026-10-23
目次
  1. はじめに
  2. Juice Shop でできること
  3. 安全な試し方:Docker で起動する
  4. 主な起動方法
  5. ZAP と組み合わせる
  6. 注意点
  7. 次に読む
  8. 出典

OWASP Juice Shop は、脆弱性をわざと仕込んだジュース屋さんのネットショップです。自分のパソコンの中で動かすので、攻撃の練習をしても誰にも迷惑がかかりません。

公式の説明では、OWASP Top 10 の全分野に加えて、実際のアプリで見つかった多くの欠陥を含んでいます。研修やデモ、CTF、診断ツールの試し撃ちの相手として作られています。

この記事は、Web の脆弱性を手を動かして学びたい人に向けています。読み終えると、次のことができるようになります。

  • Docker で Juice Shop を起動し、ブラウザで開く
  • スコアボードで課題(チャレンジ)の一覧と進み具合を見る
  • ZAP や Nuclei の練習台として使う

Juice Shop でできること

  • チャレンジ:アプリの中に隠れた脆弱性を見つけて突くと、課題が解けたことになります。難しさは星 1〜6 で表されます。
  • スコアボード:全チャレンジの一覧と、解いた数を表示します。スコアボードの場所を探すこと自体が最初の課題の 1 つです。
  • Hacking Instructor:一部のチャレンジに、画面上で手順を案内するチュートリアルが付いています。
  • 診断ツールの練習:ZAP のアクティブスキャンや Nuclei のテンプレートを、本番のサイトを傷つけずに試せます。
しないことJuice Shop は練習用の「的」で、何かを守ったり調べたりする機能はありません。また、公式ガイドによると再起動するとスコアボードは 0% に戻ります。

安全な試し方:Docker で起動する

  1. Docker をインストールします。

  2. 次のコマンドでイメージを取得します。

    docker pull bkimminich/juice-shop
  3. 次のコマンドで起動します。127.0.0.1:3000:3000 と書くことで、自分のパソコンからしか開けなくなります。

    docker run --rm -p 127.0.0.1:3000:3000 bkimminich/juice-shop
  4. ブラウザで http://localhost:3000 を開きます。

  5. 止めるときは、別の画面で docker ps を実行してコンテナ ID を調べ、docker stop <コンテナ ID> を実行します。--rm を付けたので、止めるとコンテナは消えます。

主な起動方法

方法 手順の概要 向いている人
Docker 上の手順のとおり まず試したい人
ソースから Node.js を入れ、git clone の後に npm install と npm start コードも読みたい人
配布パッケージ GitHub のリリースから OS 用の zip を入手し、展開して npm start Docker を使えない人

ソースや配布パッケージで動かすときは Node.js が必要です。公式ガイドでは 22.x、24.x、26.x が正式な対応版です。

ZAP と組み合わせる

Juice Shop を起動したまま ZAP を開き、Quick Start の URL to attack に http://localhost:3000 を入れて試します。詳しい手順は ZAP の記事にあります。アクティブスキャンでデータが壊れても、コンテナを起動し直せば元に戻ります。

注意点

  • インターネットから見える場所に置かないでください。わざと脆弱なので、他人に乗っ取られます。Docker で動かすときは、上の手順のように 127.0.0.1 に限って公開します。
  • 本物のパスワードや個人情報を入力しないでください。
  • 設定項目 safetyMode は、コンテナ環境で害が出うる一部のチャレンジを止める仕組みです。公式ガイドは、意味を理解したうえで自己責任で変えるよう書いています。
  • Juice Shop で覚えた手口を、許可のない他人のサイトに使わないでください。

次に読む

出典

  1. 公式リポジトリ(juice-shop/juice-shop)github.com/juice-shop/juice-shop
  2. 公式ガイド「Pwning OWASP Juice Shop」:起動方法pwning.owasp-juice.shop/companion-guide/latest/part1/running.html
  3. 公式ガイド:チャレンジとスコアボードpwning.owasp-juice.shop/companion-guide/latest/part1/challenges.html
  4. 公式ガイド:設定のカスタマイズ(safetyMode)pwning.owasp-juice.shop/companion-guide/latest/part4/customization.html

確認日 2026-10-24

似たツール

Nuclei

影響範囲 相手に実害
projectdiscovery/nuclei

YAML のテンプレートに書かれた手順どおりにリクエストを送り、既知の脆弱性や設定ミスを調べるコマンドラインのスキャナ。

用途
診断・監査
形式
コマンドライン
難易度
中級
ライセンス
自由に使えるMIT
分類
脆弱性スキャン/Web セキュリティ
更新が続いているスター32,301最終更新 2026-10-25
Nucleiの解説を読む

ZAP

影響範囲 相手に実害
zaproxy/zaproxy

ブラウザと Web アプリの間に入って通信を記録し、脆弱性を探す無料の Web アプリ診断ツール。旧称 OWASP ZAP、現在は ZAP by Checkmarx。

用途
診断・監査
形式
デスクトップアプリ
難易度
中級
ライセンス
自由に使えるApache-2.0
分類
Web セキュリティ/脆弱性スキャン
更新が続いているスター16,025最終更新 2026-10-23
ZAPの解説を読む