Skip to content

COS301-SE-2026/PenFlow

Repository files navigation

PenFlow animated logo

PenFlow

Continuous exposure → automated scanning → managed pentest workflow.
A layered modular monolith with event-driven orchestration for long-running scans.

Build Coverage Issues Demo 1

Typing SVG


The Problem

Traditional penetration testing workflows are fragmented:

  • static PDF reports
  • email-based coordination
  • poor visibility into change over time
  • high-friction onboarding for SMBs

PenFlow makes security posture continuous and trackable by structuring assessment into a phased pipeline.


The Solution (Pipeline)

Phase 1 — Passive CTEM (Demo 1 focus)

  • Passive OSINT aggregation (no direct interaction with target)
  • Multiple sources queried asynchronously
  • Partial failure tolerant
  • Results normalized into a consistent finding contract

Phase 2 — Automated External Vulnerability Scan (planned)

  • Ownership verification
  • Controlled external perimeter scanning
  • Containerized isolation per scan

Phase 3 — Manual Pentest Workflow (planned)

  • RBAC + audit logging
  • Engagement dashboard
  • Findings submitted and tracked in-platform

Architecture

PenFlow is a layered modular monolith with an event-driven orchestration layer for long-running work.

  • Frontend: Next.js (TypeScript)
  • Core API: FastAPI (Python)
  • Async Orchestration: Celery + RabbitMQ
  • State/Updates: Redis + WebSockets
  • Database: PostgreSQL
  • Storage: AWS S3
  • Auth: Auth0 (JWT + RBAC)

High-Level System Architecture

High-Level System Architecture

Documentation

  • Software Architecture (Demo 1): docs/architecture.md
  • SRS: docs/SRS.md
  • Design: docs/DESIGN.md

Tech Stack

Component Technology
Frontend Next.js, React, TypeScript, Tailwind
API Gateway FastAPI, Pydantic, SQLAlchemy, Alembic
Workers Celery, httpx, Tenacity
Broker / State RabbitMQ, Redis
Database PostgreSQL 16
Storage AWS S3
Auth Auth0 (JWT + RBAC)
CI/CD GitHub Actions
Testing PyTest, Jest, Cypress

Meet the Team — The BroCode

Franky Liu

Franky
Liu

Backend / Data

GitHub
LinkedIn
Jeandre Opperman

Jeandre
Opperman

Backend / Integrations

GitHub
LinkedIn
Aaron Kim

Aaron
Kim

Frontend / UI/UX

GitHub
LinkedIn
Ayrtonn Taljaard

Ayrtonn
Taljaard

Team Lead / Architecture

GitHub
LinkedIn
Damian Moustakis

Damian
Moustakis

Systems / Security

GitHub
LinkedIn

Contact: thebrocodetuks@gmail.com

About

No description, website, or topics provided.

Resources

Stars

4 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors