PyGoat

All Contributors

Intentionally vulnerable web application in Django.

Table of Contents

Installation

From Sources

To setup the project on your local machine:

First, Clone the repository using GitHub website or git in Terminal

  git clone https://github.com/Contrast-Security-OSS/PyGoat.git
  ### To Download a specific branch
  git clone -b <branch_name> https://github.com/Contrast-Security-OSS/PyGoat.git

Method 1

  1. Install all app and python requirements using installer file - bash installer.sh
  2. Apply the migrations python3 manage.py migrate.
  3. Finally, run the development server python3 manage.py runserver.
  4. The project will be available at http://127.0.0.1:8000

Method 2

  1. Install python3 requirements pip install -r requirements.txt.
  2. Apply the migrations python3 manage.py migrate.
  3. Finally, run the development server python3 manage.py runserver.
  4. The project will be available at http://127.0.0.1:8000

Method 3

  1. Install all app and python requirements using setup.py file - pip3 install .
  2. Apply the migrations python3 manage.py migrate.
  3. Finally, run the development server python3 manage.py runserver.
  4. The project will be available at http://127.0.0.1:8000

Docker Container

  1. Install Docker
  2. Run docker pull pygoat/pygoat or docker pull pygoat/pygoat:latest
  3. Run docker run --rm -p 8000:8000 pygoat/pygoat:latest
  4. Browse to http://127.0.0.1:8000
  5. Remove existing image using docker image rm pygoat/pygoat and pull again incase of any error

From Docker-Compose

  1. Install Docker
  2. Run docker-compose up or docker-compose up -d

Build Docker Image and Run

  1. Clone the repository   git clone https://github.com/pprofili-contrast/pygoat.git
  2. Build the docker image from Dockerfile using   docker build -f Dockerfile -t pygoat .
  3. Run the docker image  docker run --rm -p 8000:8000 pygoat:latest
  4. Browse to http://127.0.0.1:8000 or http://0.0.0.0:8000

Installation video

  1. From Source using installer.sh
  1. Without using installer.sh

Uninstallation

On Debian/Ubuntu Based Systems

  • On Debian/Ubuntu based systems, you can use the uninstaller.sh script to uninstall pygoat along with all it's dependencies.
  • To uninstall pygoat, simply run:
$ bash ./uninstaller.sh

On Other Systems

  • On other systems, you can use the uninstaller.py script to uninstall pygoat along with all it's dependencies
  • To uninstall pygoat, simply run:
$ python3 uninstaller.py

Solutions

Solutions to all challenges

Contributors ✨

Thanks goes to these wonderful people (emoji key):


pwned-17

💻

Aman Singh

💻

adeyosemanputra

💻 📖

gaurav618618

💻 📖

MajAK

💻

JustinPerkins

💻

Liu Peng

💻

Metaphor

💻

whokilleddb

💻

This project follows the all-contributors specification. Contributions of any kind welcome!