! Why Reports Matter

$_

The pentester discovers a critical RCE vulnerability and achieves Domain Admin access.

Path A: Bad Report

"Found some issues. Recommend fixing them."

The client is confused. Nothing gets patched. Three months later, the same vulnerability is exploited by a real attacker.

Path B: Professional Report

"Critical: Unauthenticated RCE via deserialization in /api/upload (CVSS 9.8). Remediation: Update to v2.1.4, implement input validation."

The client understands exactly what to fix. All vulnerabilities patched. The pentester gets repeat business.

"The exploit gets you in. The report gets you paid and respected."

@ Report Structure

Click each section to learn its purpose. Then click "See Example" to see a real filled-in version.

1

Cover Page

The first impression. Contains: client name, assessment type, date range, classification level (Confidential), report version, and pentester contact info.

2

Executive Summary

Written for the CEO, not the sysadmin. No technical jargon. Summarizes overall risk, top business impacts, and recommended priorities in 150-300 words.

3

Scope & Methodology

Defines the boundaries: what IPs/domains were in scope, what was excluded, testing methodology (OWASP, PTES), tools used, and any limitations encountered.

4

Technical Findings

The heart of the report. Each vulnerability gets its own section with: title, severity (CVSS), description, proof of concept, business impact, and remediation steps.

5

Appendices

Supporting material: raw tool output, full credentials found, additional screenshots, and vulnerability scan results that support the findings.

# Writing a Finding β€” Interactive

Scenario

You exploited a machine via an anonymous FTP login that contained backup credentials, which you used to authenticate to an internal MSSQL instance with xp_cmdshell enabled, giving you SYSTEM.

Now build the finding step by step.

1. Finding Title

Choose the best title for this finding:

2. Severity Rating (CVSS 3.1)

Adjust the CVSS sliders to rate this vulnerability:

0.0 -- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

3. Description

Fill in the blanks:

An vulnerability was identified on which allows an unauthenticated attacker to , resulting in .

4. Proof of Concept β€” Evidence Order

Drag the evidence screenshots into the correct chronological order:

[img] xp_cmdshell execution returning SYSTEM
[img] SYSTEM shell with whoami output
[img] Anonymous FTP login with backup credentials

5. Business Impact

Which statement is written for a business audience?

6. Remediation

Improve this vague remediation: "Fix the FTP server."

@ Executive Summary

Findings Summary

Critical x1: Anonymous FTP + MSSQL RCE High x2: Weak AD Passwords, SMB Signing Disabled Medium x1: Outdated Apache (CVE-2023-xxxx) Low x1: Missing Security Headers

Write an executive summary for these findings. Target audience: the CEO.

Words: 0/300

Requirements Checklist

% Report Assembly

Drag the report sections into the correct order to compile your report:

:: Scope & Methodology
:: Appendices
:: Cover Page
:: Technical Findings
:: Executive Summary

> Report Tools

1

Create a New Project

In SysReptor, click New Project. Select the "Pentest Report" template. Fill in client name, date range, and assessor details.

2

Add Findings

Click Add Finding. Use the finding template: fill in title, severity, description, PoC, impact, and remediation. SysReptor auto-formats CVSS scores.

3

Write Executive Summary

Navigate to the Executive Summary section. Use the rich text editor to write your summary. SysReptor includes a findings count widget automatically.

4

Export PDF

Click Export > PDF. Choose your template style. The report compiles with professional formatting, table of contents, and consistent branding.

CPTS Exam Tip: SysReptor is the most popular tool for CPTS exam reports. Set up your template before exam day.
+

Report Writing Course Complete!

You've learned the structure, practiced writing findings, composed an executive summary, assembled a report, and explored professional tools.