Skip to content

A virtual environment to learn hacking for professors, ctf competitions, and enthusiasts!

Notifications You must be signed in to change notification settings

so87/Security-Lab-Manager

Repository files navigation

Security Lab Manager

Build Status Quality Gate Vulnerabilities bugs code_smells coverage lines Waffle.io - Columns and their card count GitHub issues

GitHub license Sonarqube Results

Description

This is my senior project at the University of Evansville. This application is meant to be easily run by educators and enthusiasts to learn security. Users can launch security exercises. If they complete the exercise, they can submit their unique value to the application. Administrators can login to see if users completed their exercises.
If you are wanting to see the formal project description, you can read it here

How can I run this?

This system can be run on both Centos7(ubuntu coming soon) and Windows because of docker! If you run on windows, make sure docker for windows is installed: https://docs.docker.com/docker-for-windows/install/ . Also make sure that you meet all requirements. If you run on linux, you are all good to go! My build script installs docker for you.

You need to run everything as administrator. There are security implications to running the docker daemon as a user because that allows for easier command and control.

  1. run "git clone https://github.com/so87/Security-Lab-Manager.git"
  2. run "install-windows.bat" or "install-linux.sh" depending on whether you are linux or windows
  3. if you need to stop or stop run "start-stop-windows.bat" or "start-stop-linux.sh" and that's it!

Architecture

Below is the flow of the browser talking to the application

How can I contribute, request an enhancement, or report a bug?

Contributing
Pull Request
Issue Template

How does all of this get developed and deployed by you?

Below is my high level development and deployment process. I have a CI build and a nightly build to deploy production.