Self-hosted · Kali-native · Job-driven

One workspace for the entire pentest.

90+ integrated tools, a unified findings pipeline, and automated reports. Built by pentesters, for pentesters.

  • 90+integrated tools
  • 9firewall vendors
  • 14assessment types
Dashboard screenshot
Dashboard screenshot appears here once capture.mjs has run.

What's inside

A curated stack of reconnaissance, exploitation, review and reporting tooling, all writing to a single per-client workspace.

Unified findings pipeline

Every tool, parser and reviewer writes to one per-client findings store with CVSS scoring, evidence capture and remediation text ready for report generation.

Attack path visualisation

Kill-chain graph with MITRE ATT&CK mapping, auto-generated from credentials, hosts and compromise state. Fully editable for manual attack narratives.

Firewall review, nine vendors

Palo Alto, Cisco IOS, ASA, FortiGate, Juniper ScreenOS and JunOS, Check Point, SonicWall and pfSense. Plus Titania Nipper v2/v3 XML import to reuse prior audits without re-analysis.

External importers

Nessus, Burp Suite Pro, BloodHound, Nmap XML, MobSF, Office 365 scan output, IART finding library. Data flows into the same unified pipeline.

Background job system

Every long-running tool runs as a cancellable background job with live terminal streaming, PID tracking, completion events and per-client history.

PDF and Word reports

Executive summary, scope table, findings by severity, evidence tables, auto-populated host tables. Generated from a template that keeps the professional voice consistent across engagements.

How to run it

The tool is built against Kali Linux and expects its default tool paths and wordlists. Other distributions may work but are not supported.

One-time setup

Clones the repository, installs the Python backend and Node frontend dependencies, builds the Vite bundle, and pins tool versions.

git clone https://github.com/leonteale/Pentest-Assessment-Tool.git
cd Pentest-Assessment-Tool
./setup.sh

Daily use

Brings up the FastAPI backend on port 8000 and the Vite frontend on 5173. Open the browser, create your first client, and start ingesting.

./start.sh

# Backend:  http://localhost:8000
# Frontend: http://localhost:5173

Requirements

  • Kali Linux (recent rolling release)
  • Python 3.10 or later
  • Node.js 18 or later
  • Typical pentesting utilities available on the PATH: nmap, impacket, responder, bloodhound, hashcat, john, mobsf, and others (setup.sh installs any that are missing)

Changelog

Release history, latest first.

  • Loading changelog…

Get it

The tool is source-available on GitHub. Clone the repository, run ./setup.sh, then ./start.sh.