This guide explains how to set up the Information Security Fall 2025 Lab application locally using Python.
- Python 3.10 or higher installed
- Git (optional, for cloning the repository)
- Docker (optional, for containerized setup)
python3 -m venv venv.\venv\Scripts\Activate.ps1 OR ~.\venv\Scripts\Activate.ps1 OR ./venv/bin/activate.\venv\Scripts\activate.bat
source venv/bin/activatepython3 -m pip install --upgrade pip
python3 -m pip install -r requirements.txtpython app.pydocker build -t infosec_lab .
docker run -it -p 5000:5000 \
-v $(pwd):/app \
-v $(pwd)/uploads:/app/uploads \
-v $(pwd)/infosec_lab.db:/app/infosec_lab.db \
-e FLASK_APP=app.py \
-e FLASK_ENV=development \
infosec_lab
docker build -t infosec_lab .
docker run -it -p 5000:5000 `
-v ${PWD}:/app `
-v ${PWD}/infosec_lab.db:/app/infosec_lab.db `
-e FLASK_APP=app.py `
-e FLASK_ENV=development `
infosec_lab
- Registration with Name, Andrew ID, and Password
- Login using Andrew ID + Password
- Personalized greeting after login:
Hello {Name}, Welcome to Lab 0 of Information Security course. Enjoy!!!
- Logout returns to the landing page
- SQLite database:
infosec_lab.db - Schema source of truth:
schema.sql(edit here to add tables/columns) - Auto-created on first run by executing
schema.sql
InfoSec_Fall2025/
│── app.py
│── requirements.txt
│── readme.md
│── schema.sql
│── scripts/
│ └── dump_db.py
|__ reset_db.py
│── static/
│ └── style.css
│── templates/
│ └── base.html, index.html, login.html, register.html, dashboard.html
└── infosec_lab.db (auto-created)
The project includes a scripts/ folder with a simple reset utility.
- Optional reset:
python scripts/reset_db.py- Optional dump database:
python scripts/dump_db.pyLink to download:
- Python: https://www.python.org/downloads/windows/
- Docker: https://docs.docker.com/get-started/get-docker/
- VScode: https://code.visualstudio.com/download
Note: Youtube Tutorials may help in installation process
- What is Flask? https://flask.palletsprojects.com/en/stable/