Skip to content

Devan301/message-board-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Secure Mini Message Board

A secure web application built with Python and Flask, developed as a course programming project demonstrating OWASP TOP 10 secure programming principles.

Features

  • User registration and login with hashed passwords
  • Post messages and comment on posts
  • Full CSRF protection on every form
  • XSS prevention via template escaping
  • SQL injection prevention via SQLAlchemy ORM
  • Security headers via Flask-Talisman

Security checklist (OWASP TOP 10)

ID Issue Solution
A01 Broken access control @login_required on all routes
A02 Cryptographic failures Werkzeug scrypt password hashing
A03 Injection SQLAlchemy ORM + Jinja2 escaping
A05 Security misconfiguration Flask-Talisman security headers
A07 Auth failures Flask-Login session management + CSRF

How to run

# 1. Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate

# 2. Install dependencies
pip install -r requirements.txt

# 3. Run the app
python run.py

Then open http://127.0.0.1:5000 in your browser.

Running security tests

pytest tests/ -v

DevSecOps pipeline

  • Snyk — dependency vulnerability scanning
  • SonarQube — static code analysis
  • Jenkins — CI pipeline automation

Environment

  • Ubuntu 22.04 LTS (VirtualBox)
  • Python 3
  • Flask 3.0.3

About

Secure Flask message board demonstrating OWASP Top 10 secure programming principles

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors