{% extends "report_base.html" %} {% load static %} {% load display_tags %} {% load humanize %} {% load get_endpoint_status %} {% load get_note_status %} {% load get_notetype_availability %} {% load event_tags %} {% block content %} {{ block.super }}

Engagement Security Report for {{ engagement.product.name }}

Engagement: {{ engagement.name }}
Generated: {% display_date %}

{% if include_table_of_contents%}

Table of Contents for {{ engagement.name }}

{% endif %} {% if include_executive_summary %}

Executive Summary

This report represents a security assessment performed by the {{ team_name }} team including confidential information about the state of your network and applications.

Engagement {% if engagement.name %} : {{ engagement.name }} {% endif %}
{% if engagement.description %} {% endif %}
Start Date End Date Status Lead
{{ engagement.target_start|date}} {{ engagement.target_end|date}} {{ engagement.status }} {{ engagement.lead.first_name }} {{ engagement.lead.last_name }} - {{ engagement.lead }}
{{ engagement.description|markdown_render }}
{% if engagement.test_set %}

The engagement included the following tests:

    {% for t in engagement.test_set.all %}
  • {{ t }} ({{ t.environment.name|default:"unknown" }}): {{ t.target_start|date:"SHORT_DATE_FORMAT" }}
  • {% endfor %}
{% endif %} {% if engagement.test_strategy %}

The test strategy for this engagement can be viewed at {{ engagement.test_strategy }}

{% endif %}
Endpoints
{% colgroup endpoints into 2 cols as grouped_items %} {% for row in grouped_items %} {% for item in row %} {% endfor %} {% endfor %}
{% if item %} {{ item }}{% endif %}

A total of {{ findings|length|apnumber }} finding{{ findings|length|pluralize }} of varying severity are represented in this report.

Engagement Finding Count
Finding Age
{% endif %} {% if include_disclaimer%}
Disclaimer

{{ disclaimer }}

{% endif %}
{% if include_finding_notes %} {% if engagement.test_set.all %}

Testing Notes

{% for test in engagement.test_set.all %} {% if test in tests %} {% if test.notes.all %} {% for note in test.notes.all %} {% if not note.private %} {{ note.author }} - {{ note.date }} - {{ note }}
{% endif %} {% endfor %} {% endif %} {% endif %} {% endfor %}

{% endif %} {% endif %} {% if engagement.risk_acceptance.count > 0 %}

Risk Accepted Findings

{% for risk in engagement.risk_acceptance.all %} {% for finding in risk.accepted_findings.all %} {% endfor %} {% endfor %}
Name Date Severity EPSS Score / Percentile
{{ finding.title }} {{ finding.date }} {{ finding.severity }} {{ finding.epss_score|format_epss }} / {{ finding.epss_percentile|format_epss }}
{% endif %}
{% if findings %}

Findings

{% endif %} {% for finding in findings %} {% ifchanged finding.severity %}

{{ finding.severity|capfirst }}

{% endifchanged %}
Finding {{ forloop.counter }}: {{ finding.title }} {% if finding.tags %} {% for tag in finding.tags.all %} {{ tag }} {% endfor %} {% endif %}
{% if finding.risk_acceptance_set.all %} {% endif %} {% if finding.mitigated %} {% endif %} {% if finding.cwe > 0 %} {% endif %} {% if finding.risk_acceptance_set.all %} {% endif %} {% if finding.mitigated %} {% endif %} {% if finding.cwe > 0 %} {% endif %}
Severity EPSS Score / Percentile StatusAcceptanceDate discovered Age ReporterDate Mitigated Mitigated ByCWEDojo ID
{% if finding.severity %} {{ finding.severity }} {% else %} Unknown {% endif %} {{ finding.epss_score|format_epss }} / {{ finding.epss_percentile|format_epss }} {{ finding.status }} {% comment %} for some reason the font-awesome icons don't work with the report template{% endcomment %} {% for ra in finding.risk_acceptance_set.all|slice:":5" %} acceptance  {% endfor %} {{ finding.date }} {{ finding.age }} days {{ finding.reporter }}{{ finding.mitigated }} {{ finding.mitigated_by }} {{ finding.cwe }} {{ finding.id }}
{% include "dojo/snippets/endpoints.html" with finding=finding destination="Report" %} {% if finding.cvssv3 %}
CVSS v3
{{ finding.cvssv3|markdown_render }}
{% endif %}
Description
{{ finding.description|markdown_render }}
{% if finding.mitigation %}
Mitigation
{{ finding.mitigation|markdown_render }}
{% endif %} {% if finding.get_report_requests %}
Sample Request(s): Displaying {{finding.get_report_requests.count}} of {{finding.burprawrequestresponse_set.count}}
{% for req in finding.get_report_requests %}
Request {{forloop.counter}}
{{ req.get_request }}
{% if req.get_response != "" %}
Response {{forloop.counter}}
{{ req.get_response|truncatechars_html:800 }}
{% endif %} {% endfor %} {% endif %} {% if finding.impact %}
Impact
{{ finding.impact|markdown_render }}
{% endif %} {% if finding.steps_to_reproduce %}
Steps to Reproduce
{{ finding.steps_to_reproduce|markdown_render }}
{% endif %} {% if finding.severity_justification %}
Severity Justification
{{ finding.severity_justification|markdown_render }}
{% endif %} {% if finding.references %}
References
{{ finding.references|markdown_render }}
{% endif %} {% if include_finding_images %} {% include "dojo/snippets/file_images.html" with size='original' obj=finding format="HTML" %} {% endif %} {% if include_finding_notes %} {% with notes=finding.notes.all|get_public_notes %} {% if notes.count > 0 %}
Notes
{% with notes_with_type=notes|get_notetype_notes_count %} {% if notes_with_type > 0 %} {% endif %} {% for note in notes reversed %} {% if notes_with_type > 0 %} {% endif %} {% endfor %} {% endwith %}
User DateNote TypeNote
{{ note.author.username }} {{ note.date }} {% if note.note_type != None %} {{ note.note_type }} {% endif %} {{ note|linebreaks }}
{% endif %} {% endwith %} {% endif %} {% endfor %}
{% if include_table_of_contents %}
{% endif %}
{% endblock %} {% block js %} {{ block.super }} {% endblock %}