Skip to main content

vamp-penreport

Version Python License VampSecure Labs

Professional pentest report aggregator for VampSecure Labs toolkit.

vamp-penreport reads JSON output files from any VSL tool, normalizes and deduplicates all findings, computes a global risk score, and produces polished HTML, PDF, and Markdown reports ready for client delivery.

It is not a scanner — it is a report aggregator and generator. It has no finding prefix of its own; it works with findings produced by other VSL tools.


Features

  • Ingests multiple VSL JSON output files in a single run
  • Normalizes severity labels and deduplicates findings across tools
  • Computes global risk score (0–100) with qualitative label (Low / Moderate / High / Critical)
  • Executive summary with inline SVG gauge and category bar chart
  • Prioritized remediation roadmap (4 phases: Immediate / Urgent / Planned / Continuous)
  • MITRE ATT&CK coverage section: auto-detected from vamp-log-analyzer FORA-NNN findings — 25 detectors mapped to 12 tactics; rendered as an interactive table with severity badges and technique tooltips
  • Detailed technical findings section with estimated CVSS range
  • Local logo embedding: --logo-file PATH embeds any PNG/JPG/SVG as a base64 data URI — the HTML is fully self-contained with no external requests
  • Printable HTML with full CSS @media print support
  • Native PDF via fpdf2 (no browser required)
  • Markdown output for integration into wikis or documentation systems
  • Consolidated JSON export for pipeline integration

Installation

cd vamp-penreport
pip install -r requirements.txt

fpdf2 is only required for PDF output. HTML and Markdown generation work with Python stdlib alone.


Usage

Basic — HTML only

python3 vamp_penreport.py scan1.json \
  --client "Acme Corp" \
  --engagement "External Pentest Q3 2026"

Full report — HTML + PDF + Markdown

python3 vamp_penreport.py scan1.json scan2.json scan3.json \
  --client "Acme Corp" \
  --engagement "External Pentest Q3 2026" \
  --auditor "VampSecure Labs Red Team" \
  --scope "Perimeter web applications and exposed APIs" \
  --start-date 2026-07-01 \
  --end-date 2026-07-31 \
  --logo-file /path/to/client_logo.png \
  --report-html report.html \
  --report-pdf report.pdf \
  --report-md report.md \
  --report-json consolidated.json

Executive summary only (no detailed technical findings)

python3 vamp_penreport.py scan1.json scan2.json \
  --client "Acme Corp" \
  --engagement "Quick Assessment" \
  --executive-only \
  --report-html executive_summary.html

Forensic log report with MITRE ATT&CK coverage

When the input includes output from vamp-log-analyzer, the report automatically adds a MITRE ATT&CK coverage section showing which tactics and techniques were observed:

python3 vamp_penreport.py \
  recon.json ssl.json http.json logs_forensic.json \
  --client "Acme Corp" \
  --engagement "Full Perimeter Assessment" \
  --report-html full_report.html

All options

usage: vamp-penreport [-h] --client NOMBRE [--engagement DESC]
                      [--auditor NOMBRE] [--scope TEXTO]
                      [--start-date FECHA] [--end-date FECHA]
                      [--report-html FILE] [--report-pdf FILE]
                      [--report-md FILE] [--report-json FILE]
                      [--logo-url URL] [--logo-file FICHERO]
                      [--executive-only] [--verbose]
                      INPUT [INPUT ...]

positional arguments:
  INPUT                One or more VSL JSON output files

options:
  --client NOMBRE      Client name (required)
  --engagement DESC    Engagement description
  --auditor NOMBRE     Auditor name/team (default: VampSecure Labs)
  --scope TEXTO        Engagement scope
  --start-date FECHA   Start date (YYYY-MM-DD)
  --end-date FECHA     End date (YYYY-MM-DD)
  --report-html FILE   HTML output file (default: report.html)
  --report-pdf FILE    PDF output file (requires fpdf2)
  --report-md FILE     Markdown output file
  --report-json FILE   Consolidated JSON output file
  --logo-url URL       Client logo URL (HTML only, optional)
  --logo-file FILE     Local logo file embedded as base64 (PNG/JPG/SVG)
  --executive-only     Executive summary only, no technical findings
  --verbose            Verbose/debug output

Input JSON schema

VSL tools produce output files in the following standard schema. All fields are optional except findings.

Field Type Description
tool string Tool name (e.g. vamp-docker-audit)
version string Tool version
target string Scan target (hostname, IP, path…)
timestamp string ISO 8601 scan timestamp
findings array Array of finding objects (see below)
summary object Count by severity (optional, for reference)

Finding object

Field Type Description
id string Finding identifier (e.g. DOCK-001, FORA-001)
severity string CRITICAL, HIGH, MEDIUM, LOW, or INFO
title string Short finding title
description string Technical description
evidence string Raw evidence / proof of concept
remediation string Recommended fix
references array External references (CVEs, CWEs, URLs…)

Alternative field names are also accepted: results/issues/vulnerabilities instead of findings; risk/level instead of severity; detail/details instead of description; output/proof instead of evidence; fix/recommendation instead of remediation.


Report sections

Section Description
Cover page Client name, dates, auditor, CONFIDENTIAL classification, optional logo
Table of contents Navigable index with dynamic numbering
Executive summary Risk gauge (SVG), severity table, top 5 findings, tool distribution chart
Remediation roadmap 4-phase plan: Immediate (0–7d), Urgent (7–30d), Planned (30–90d), Continuous
MITRE ATT&CK coverage Auto-generated when FORA-NNN findings are present — tactics matrix with severity badges and technique tooltips
Technical findings Full detail per finding: description, evidence, remediation, CVSS estimate, references
Methodology Tools used, severity classification table
Disclaimer Confidentiality notice

The MITRE ATT&CK section only appears when the report contains findings from vamp-log-analyzer (FORA-NNN prefix). Section numbers adjust automatically.


MITRE ATT&CK Coverage

When vamp-log-analyzer output is included, vamp-penreport automatically maps the 25 FORA-NNN detectors to MITRE ATT&CK tactics and renders a coverage matrix. Example:

Tactic Detected Detectors
Credential Access CRITICAL×2, HIGH×1 FORA-001 FORA-002 FORA-022
Reconnaissance HIGH×1 FORA-009
Initial Access MEDIUM×1 FORA-007

The 25 detectors cover 12 tactics: Reconnaissance, Initial Access, Execution, Persistence, Privilege Escalation, Defense Evasion, Credential Access, Discovery, Lateral Movement, Collection, Command & Control, Exfiltration.


Compatible VSL tools

vamp-penreport works with JSON output from any tool in the VampSecure Labs toolkit:

  • vamp-log-analyzer — Forensic log analysis — 25 MITRE ATT&CK detectors, STIX 2.1 (triggers ATT&CK section)
  • vamp-docker-audit — Docker container and daemon security
  • vamp-k8s-audit — Kubernetes cluster security review
  • vamp-ssl-audit — TLS/SSL certificate and configuration analysis
  • vamp-secrets-scanner — Hardcoded secrets and credential detection
  • vamp-http-audit — HTTP headers and web security checks
  • vamp-wp2shell-audit — WordPress vulnerability assessment
  • vamp-passive-recon — OSINT and passive reconnaissance
  • vamp-subdomain-takeover — Subdomain takeover detection
  • vamp-cve-oracle — CVE correlation and vulnerability lookup
  • vamp-jwt-audit — JWT token security analysis
  • vamp-k8s-audit — Kubernetes cluster security review
  • vamp-llm-probe — LLM endpoint security assessment
  • vamp-mail-audit — Email security (SPF/DKIM/DMARC)
  • vamp-arp-sentinel — ARP spoofing and network analysis
  • vamp-entropy-watch — Entropy-based anomaly detection
  • vamp-forticheck — Multi-vendor edge device CVE scanner
  • vamp-cloud-enum — Cloud asset enumeration

License

MIT — See LICENSE file.


© VampSecure Studios — VampSecure Labs Security Research Division

Authorized use only in environments with explicit written permission.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vamp_penreport-2.1.tar.gz (24.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vamp_penreport-2.1-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file vamp_penreport-2.1.tar.gz.

File metadata

  • Download URL: vamp_penreport-2.1.tar.gz
  • Upload date:
  • Size: 24.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.6

File hashes

Hashes for vamp_penreport-2.1.tar.gz
Algorithm Hash digest
SHA256 c6ab8e66e8f5b1693293398796c33bcd4aa16961c7310eeb6beeb49545859c65
MD5 74d06f0258a374042ac63378e22ffb9f
BLAKE2b-256 c6fd20200a190748c892cb864154face63e30a1144a2288db3e46685963a11e8

See more details on using hashes here.

File details

Details for the file vamp_penreport-2.1-py3-none-any.whl.

File metadata

  • Download URL: vamp_penreport-2.1-py3-none-any.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.6

File hashes

Hashes for vamp_penreport-2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dc632f37666695134db66a8baabe26e22ad474e1dd8bfb7fc81ba329a9cffbe1
MD5 9dbd4e0034ba6c670be20cdb1bf58633
BLAKE2b-256 f10181e66a9d8143ee0c90c5afdf04650f3444923207a59327bb8e46262df9ff

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2.1 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page