What You'll Learn
- Explain why written investigation reports are critical for documentation, knowledge transfer, and legal defensibility
- Describe the complete phishing report template structure: Executive Summary through Lessons Learned
- Write an effective executive summary that communicates findings to non-technical stakeholders in under 30 seconds
- Present evidence clearly using defanged IOCs, screenshots, header excerpts, and structured tables
- Identify and avoid common report writing mistakes that undermine credibility and usefulness
- Walk through a complete sample report based on a realistic phishing scenario
- Apply a report quality checklist to self-review before submission
Why Reports Matter More Than You Think
You triaged the phishing email. You analyzed the headers. You extracted every artifact. You blocked the IOCs, scoped the campaign, checked for credential compromise, and contained the threat. The investigation is done — right?
Wrong. Without a written report, your investigation might as well not have happened. Here is why:
Documentation: Six months from now, when the same attacker infrastructure resurfaces, no one will remember the details of today's investigation. A written report preserves the full analysis — IOCs, evidence, decisions, and actions taken — as a searchable, permanent record.
Knowledge transfer: You will not always be the analyst on shift. When a colleague handles the next report from the same campaign, your documentation tells them exactly what was already investigated, what was blocked, and what to look for.
Legal and compliance: If the phishing attack leads to a data breach, regulatory investigation, or legal proceedings, your report becomes evidence. "I analyzed it and it looked bad" does not hold up. A structured report with timestamps, evidence, and clear reasoning does.
Metrics and improvement: Reports feed your phishing program metrics. How many phishing incidents per month? What percentage led to credential compromise? What was the average response time? Without structured reports, these questions are unanswerable.
A good report turns a single investigation into organizational knowledge. The artifacts you extracted become threat intelligence. The techniques you observed become detection rules. The response steps you took become playbook improvements. The report is the mechanism that makes this transfer happen.
The Phishing Report Template
Every phishing investigation report should follow a consistent structure. Consistency means any analyst can read any report and find the information they need in the expected location.
1. Executive Summary
The executive summary is the most important section. It is read by managers, legal, compliance, and executives who will not read the full report. It must answer five questions in 3-5 sentences:
- What happened? (A phishing email targeting X was reported by Y)
- Who was affected? (N users received it; M interacted)
- What was the impact? (Credentials compromised / no compromise confirmed)
- What was done? (IOCs blocked, passwords reset, emails purged)
- What is the current status? (Contained / monitoring / escalated)
EXECUTIVE SUMMARY
On 2026-02-20 at 14:32 UTC, a phishing email impersonating the IT Help Desk
was reported by [User Name] in the Finance department. The email directed users
to a credential harvesting page mimicking the Microsoft 365 login portal. Campaign
scoping identified 47 recipients across three departments. Proxy log analysis
confirmed 3 users submitted credentials. All compromised accounts underwent
immediate password resets and session revocation. Malicious infrastructure was
blocked across email gateway, DNS, and web proxy. No evidence of post-compromise
lateral movement was identified. Status: CONTAINED — enhanced monitoring active
for 72 hours.
Write the executive summary last. Even though it appears first, write it after you have completed all other sections. By then, you have the full picture and can distill it accurately. Writing it first leads to inaccuracies that require revision.
2. Email Details
Present the raw facts of the reported email:
| Field | Value |
|---|---|
| Subject | Urgent: Your Account Has Been Locked |
| From (Display) | IT Help Desk <helpdesk@company[.]com> |
| From (Envelope) | attacker@evil-domain[.]xyz |
| Reply-To | support-reset@protonmail[.]com |
| Date | 2026-02-20 14:28:03 UTC |
| Recipients | 47 users (Finance, HR, Executive) |
| Attachments | None |
| Embedded URLs | 1 (credential harvesting link) |
3. Header Analysis
Summarize your header analysis findings. Do not paste the entire header block — extract the relevant portions:
HEADER ANALYSIS
Originating IP: 198[.]51[.]100[.]42 (Received: from mail.evil-domain[.]xyz)
Message-ID Domain: evil-domain[.]xyz (confirms true sending infrastructure)
X-Mailer: PHPMailer 6.8.0 (mass-mailing tool, not corporate email client)
Hop Count: 3 hops (originator → relay → company gateway)
Time Consistency: All timestamps sequential with < 2 second variance (no anomalies)
4. Authentication Results
Document SPF, DKIM, and DMARC results with clear pass/fail verdicts:
| Check | Result | Details |
|---|---|---|
| SPF | FAIL | smtp.mailfrom=evil-domain[.]xyz — IP 198[.]51[.]100[.]42 not authorized for company[.]com |
| DKIM | NONE | No DKIM signature present |
| DMARC | FAIL | Policy: p=none (company[.]com DMARC not enforcing — recommendation issued) |
If the victim organization's DMARC policy is p=none, include a recommendation to upgrade to p=quarantine or p=reject. This is one of the most impactful defensive improvements your report can drive. Many organizations have DMARC in monitoring mode indefinitely because no one flags it.
5. Artifact Analysis
Present your analysis of each extracted artifact. This section shows your work — the evidence that supports your verdict.
URL Analysis:
| Property | Finding |
|---|---|
| URL | hxxps://evil-domain[.]xyz/m365-login?ref=fin-dept |
| URLScan.io | Screenshot shows Microsoft 365 login clone; page hosted on Namecheap VPS |
| VirusTotal | 14/87 vendors flagged as phishing (as of 2026-02-20 15:00 UTC) |
| Domain Age | Registered 2026-02-18 (2 days before campaign) |
| SSL Certificate | Let's Encrypt, issued 2026-02-18 |
| Hosting | 198[.]51[.]100[.]42 — Namecheap / BV-EU-AS (known bulletproof hosting range) |
Attachment Analysis (if applicable):
| Property | Finding |
|---|---|
| Filename | Invoice_Q4_2026.docm |
| MD5 | d41d8cd98f00b204e9800998ecf8427e |
| SHA256 | e3b0c44298fc1c149afbf4c8996fb924... |
| VirusTotal | 32/72 detections — Trojan.MacroDownloader |
| Hybrid Analysis | Macro executes PowerShell → downloads payload from hxxps://cdn[.]evil-domain[.]xyz/stage2[.]exe |
| Behavior | Process: WINWORD.EXE → cmd.exe → powershell.exe → Invoke-WebRequest |
6. IOC Table
Present all extracted and enriched IOCs in a single structured table:
| IOC Type | Value | Context | Enrichment |
|---|---|---|---|
| Domain | evil-domain[.]xyz | Sending infrastructure + hosting | Registered 2 days prior; Namecheap; no historical DNS |
| IP Address | 198[.]51[.]100[.]42 | Originating mail server + web host | AbuseIPDB: 87% confidence malicious; 142 reports |
| URL | hxxps://evil-domain[.]xyz/m365-login | Credential harvesting page | 14/87 VT detections; M365 login clone |
attacker[@]evil-domain[.]xyz | Envelope sender | SPF fail; PHPMailer origin | |
support-reset[@]protonmail[.]com | Reply-To address | Free email service; unattributable |
7. Verdict and Confidence Level
State your verdict clearly with a confidence level:
VERDICT: MALICIOUS — Credential Harvesting Phishing Campaign
Confidence: HIGH
Basis:
- Authentication failure (SPF FAIL, no DKIM, DMARC FAIL)
- Domain registered 48 hours before campaign launch
- URL destination is a pixel-perfect Microsoft 365 login clone
- 14/87 VirusTotal vendors confirm phishing classification
- Originating IP has 142 abuse reports on AbuseIPDB
- PHPMailer indicates mass-mailing tool, not legitimate corporate email
Always state your confidence level. HIGH means multiple independent indicators all point to the same conclusion. MEDIUM means strong indicators but some ambiguity (e.g., a legitimate-looking domain with suspicious behavior). LOW means limited evidence requiring further investigation. This calibration helps the reader understand how much weight to give your verdict.
8. Defensive Actions Taken
Document every containment and remediation action with timestamps:
| Timestamp (UTC) | Action | Scope |
|---|---|---|
| 2026-02-20 15:05 | Sender domain blocked on email gateway | Tenant-wide |
| 2026-02-20 15:08 | Phishing URL added to web proxy block list | Tenant-wide |
| 2026-02-20 15:10 | Domain sinkholed on internal DNS resolver | All internal DNS clients |
| 2026-02-20 15:12 | IP blocked on perimeter firewall (outbound) | Tenant-wide |
| 2026-02-20 15:15 | Compliance search: 47 matching emails purged | All user mailboxes |
| 2026-02-20 15:22 | Password reset forced for 3 compromised users | Individual accounts |
| 2026-02-20 15:25 | Active sessions revoked for 3 compromised users | Individual accounts |
| 2026-02-20 15:30 | Email forwarding rules audited — none found | 3 compromised accounts |
| 2026-02-20 15:35 | Wazuh custom rules deployed for campaign IOCs | All monitored endpoints |
9. Recommendations
Provide actionable recommendations that go beyond this incident:
- Upgrade DMARC policy from
p=nonetop=quarantinefor company[.]com — this would have quarantined the spoofed email at the gateway - Enable URL rewriting (SafeLinks) for all users — time-of-click protection would catch deferred phishing attacks
- Deploy phishing simulation targeting Finance, HR, and Executive departments — these departments were specifically targeted in this campaign
- Implement conditional access policies requiring MFA from non-corporate IP ranges — limits credential abuse even if credentials are harvested
- Add PHPMailer X-Mailer header to email gateway detection rules — legitimate corporate email does not originate from PHPMailer
10. Lessons Learned
Reflect on what worked, what did not, and what should change:
LESSONS LEARNED
What worked well:
- User reported the email within 8 minutes of delivery (below 15-minute target)
- Artifact extraction and IOC blocking completed within 43 minutes (below 60-minute target)
- Wazuh rules for campaign IOCs deployed within 1 hour
What needs improvement:
- DMARC policy at p=none allowed the spoofed email through — upgrade timeline needed
- No URL rewriting in place — users who clicked reached the live harvesting page
- 3 of 47 recipients submitted credentials — simulation training needed for targeted departments
Process changes:
- Add DMARC enforcement check to quarterly security review
- Fast-track URL rewriting deployment (SafeLinks) — target completion: 2026-03-15
- Schedule targeted phishing simulation for Finance/HR/Executive — Q2 2026
Writing Effective Executive Summaries
The executive summary deserves extra attention because it is the only section most stakeholders will read. Follow these rules:
| Rule | Why |
|---|---|
| Lead with impact, not process | "3 users' credentials were compromised" matters more than "we analyzed email headers" |
| Use plain language | "SPF failed" means nothing to a VP. "The email was sent from an unauthorized server" does. |
| Include numbers | 47 recipients, 3 compromised, 43-minute response time — concrete data builds confidence |
| State the current status | Readers need to know: is this still happening, or is it contained? |
| Keep it under 150 words | If it takes more than 30 seconds to read, it is too long |
Never use jargon without explanation in the executive summary. Terms like SPF, DKIM, IOC, sinkholing, and TTPs are second nature to you. They are meaningless to the CISO's executive assistant, the legal team, or the board member who receives the escalation summary. Translate everything.
Evidence Presentation Best Practices
Your report's credibility depends on how you present evidence:
- Always defang IOCs — even in internal reports, ticketing systems auto-link URLs
- Include screenshots — a screenshot of the URLScan.io result is more compelling than a text description
- Timestamp everything — every finding, every action, in UTC
- Quote exact header values — do not paraphrase; copy the relevant header lines verbatim
- Use tables for structured data — IOC tables, authentication results, and action logs are easier to scan as tables than paragraphs
- Reference your sources — "VirusTotal (14/87 detections as of 2026-02-20 15:00 UTC)" is verifiable; "VirusTotal flagged it" is not
Common Report Mistakes
| Mistake | Why It Hurts | Fix |
|---|---|---|
| No executive summary | Decision-makers skip the report entirely | Always write one, even for minor incidents |
| Copying entire email headers | Walls of text that no one reads | Extract only the relevant header lines with context |
| Live (not defanged) IOCs | Someone clicks the link in your Jira ticket | Defang every URL, IP, and email address |
| Missing timestamps | Cannot reconstruct the timeline or measure response metrics | Timestamp every observation and action in UTC |
| Verdict without evidence | "It's phishing" is an opinion; evidence makes it a finding | List each indicator that supports your verdict |
| No confidence level | Reader cannot gauge certainty | State HIGH/MEDIUM/LOW with supporting basis |
| Skipping recommendations | The same attack succeeds again next month | Every report should drive at least one defensive improvement |
| Writing for analysts only | Non-technical stakeholders cannot act on it | Write the executive summary for a non-technical reader |
Sample Report Walkthrough
Let us walk through a condensed version of a complete phishing investigation report using a realistic scenario:
Scenario: On 2026-02-20, a Finance department employee received an email with the subject "ACTION REQUIRED: Wire Transfer Approval" from what appeared to be the CFO. The email contained a link to an "approval portal."
Executive Summary: A business email compromise (BEC) attempt targeting the Finance department was reported on 2026-02-20. The email spoofed the CFO's display name and directed the recipient to a credential harvesting page. Scoping identified 12 recipients in Finance and Accounting. One user clicked the link but did not submit credentials (confirmed via proxy logs). All IOCs were blocked within 38 minutes. No credential compromise or financial impact occurred. Status: CONTAINED.
Key Analysis Findings:
- From header showed CFO's name but envelope sender was
cfo-approvals@finance-portal[.]xyz - Domain
finance-portal[.]xyzregistered 24 hours before the attack - SPF FAIL (sending IP not authorized for the spoofed domain)
- URL led to a fake "wire transfer approval" form requesting login credentials and a one-time approval code
- VirusTotal: 8/87 detections at time of analysis
Verdict: MALICIOUS — BEC/Credential Harvesting. Confidence: HIGH.
Key Defensive Actions:
- Domain and IP blocked across email gateway, DNS, firewall, and web proxy
- 12 emails purged from all mailboxes via compliance search
- Custom Wazuh rule deployed for campaign IOCs
- Recommendation issued to implement DMARC enforcement and deploy CFO impersonation detection rules
This condensed walkthrough demonstrates the flow from summary to evidence to action. In Lab PH-6, you will write a full-length report following the complete template.
Report Quality Checklist
Before submitting any phishing investigation report, verify every item:
- Executive summary is under 150 words and answers: what, who, impact, actions, status
- All IOCs are defanged (URLs, IPs, email addresses)
- Every finding has a timestamp in UTC
- Authentication results (SPF, DKIM, DMARC) are documented with pass/fail verdicts
- IOC table includes type, value, context, and enrichment columns
- Verdict states a confidence level (HIGH/MEDIUM/LOW) with supporting basis
- Defensive actions include timestamps and scope
- Recommendations are specific and actionable (not generic "improve security")
- Executive summary is written in plain language for non-technical readers
- Report has been spell-checked and formatted consistently
Peer review your first 10 reports. Ask a senior analyst to review your reports before submission. The feedback on your first 10 reports will shape your writing quality for the rest of your career. After that, self-review using this checklist is usually sufficient.
Key Takeaways
- Written reports transform single investigations into permanent organizational knowledge — without them, analysis is lost when the analyst goes off shift
- Follow a consistent template structure: Executive Summary, Email Details, Header Analysis, Authentication Results, Artifact Analysis, IOC Table, Verdict, Actions, Recommendations, Lessons Learned
- Write the executive summary last (after completing all analysis) and keep it under 150 words in plain language
- Defang all IOCs, timestamp everything in UTC, and quote exact evidence — credibility depends on precision
- State your verdict with a confidence level (HIGH/MEDIUM/LOW) supported by specific indicators, not just opinions
- Every report should drive at least one actionable recommendation that prevents the same attack from succeeding again
- Use the quality checklist before every submission — consistency builds trust with stakeholders and improves your program metrics
What's Next
This lesson completes the Phishing Analysis module. You have progressed from recognizing phishing emails to analyzing headers, verifying authentication, extracting artifacts, executing defensive response, and documenting your findings in professional investigation reports. In Lab PH-6, you will write a complete phishing investigation report from scratch using a realistic scenario and the template from this lesson.
Next, you move into Module 5: Network Detection & Forensics, where you shift focus from email-borne threats to network-level detection. You will work with Suricata rules, EveBox alert triage, protocol analysis, and PCAP investigation — building on the same analytical methodology you have mastered in phishing analysis, now applied to network traffic.
Knowledge Check: Phishing Investigation Report Writing
10 questions · 70% to pass
Why is a written phishing investigation report necessary even after the threat has been fully contained?
What is the recommended maximum word count for a phishing report's executive summary, and why?
When should the executive summary be written relative to the rest of the report?
In Lab PH-6, you write a phishing report and include the verdict 'MALICIOUS — Confidence: HIGH.' What makes a verdict HIGH confidence?
What five questions must the executive summary answer?
Why should analysts avoid pasting entire email headers into the report?
In your Lab PH-6 report, you discover the victim organization's DMARC policy is set to p=none. What recommendation should you include?
What common mistake makes a phishing report's verdict unreliable?
The report quality checklist requires that all timestamps use a specific format. What is it and why?
Why should every phishing investigation report include at least one actionable recommendation?
0/10 answered