Back to Portfolio
Python ScriptingNmap AutomationVulnerability Mapping

Pentest Report Tool

Automated PDF Generation Pipeline

Open-Source on GitHub

The Objective

Penetration testers manually mapping Nmap scan results to known exploits and writing client reports — a process that takes hours. This tool was engineered independently to automate that entire workflow: scan a target, isolate vulnerabilities, and instantly output a confidential, colour-coded PDF report.

Execution & Automation Pipeline

Uses python-nmap and reportlab to bridge active scanning and intelligence reporting:

  • Automated Nmap Integration: Probes target IP infrastructure, detects open ports and services via async Python wrappers.
  • Vulnerability Translation Engine: Maps ports/services to known CVEs (e.g., MS17-010 EternalBlue, BlueKeep, SMB Relay).
  • Automated Triage: Assigns severity scores (High/Medium/Low), calculates impact (RCE, Data Leak), provides remediation steps automatically.
  • Professional PDF Output: Clean dynamic PDFs with tables, pie charts of port status, and Internal/Confidential footers via ReportLab.

CLI Preview

$ python run_scan.py --target 192.168.72.134

================== Scan Results ==================
Target    : 192.168.72.134
Found    : 5 open port(s)

445/tcp   microsoft-ds   Windows 7 Ultimate
Exploit  : EternalBlue (MS17-010)
Impact   : Remote Code Execution (SYSTEM)
Severity : HIGH
Fix      : Apply MS17-010 patch; disable SMBv1

[+] PDF Generated: Pentest_Report_192.168.72.134.pdf
Project Specs
Status ● Complete
Category Pentest Tooling
Role Sole Developer
4.5x
Faster
Reporting
CLI
Zero-Click
Automation
Tooling Used
Python 3 Nmap ReportLab Matplotlib python-nmap
View Source on GitHub