{% extends "base.html" %} {% block title %}{{ finding.title }} — secfoo{% endblock %} {% block content %} ← Back to SAST
{{ finding.severity }} {% if finding.cvss_score is not none %} CVSS {{ "%.1f"|format(finding.cvss_score) }} ({{ finding.cvss_score | cvss_rating_label | capitalize }}) {% endif %} {% if finding.status == "closed" %}Closed{% else %}Open{% endif %}

{{ finding.title }}

{{ finding.cwe or "unverified" }}{% if finding.owasp and finding.owasp != "unverified" %} · {{ finding.owasp }}{% endif %} · {{ finding.location_file }}{% if finding.location_line %}:{{ finding.location_line }}{% endif %}

{% if finding.description %}

Description

{{ finding.description }}

{% endif %} {% if finding.recommendation %}

Recommendation

{{ finding.recommendation }}

{% endif %}

CVSS v3.1 vector

{% if finding.cvss_vector %}

{{ finding.cvss_vector }}

Score computed by secfoo from this vector using the public CVSS v3.1 formula -- never asserted directly by the model.

{% else %}
No usable CVSS vector was captured for this finding.
{% endif %}

Access

{% if finding.verdict and finding.verdict.lower() == 'confirmed' %}Verified{% endif %} {% if finding.cvss_vector | cvss_network_reachable %}External (network-reachable){% endif %}

Verdict: {{ finding.verdict or "unverified" }}

Lifecycle

First seen: {{ finding.first_seen_at | fmt_time }}

Last seen: {{ finding.last_seen_at | fmt_time }}

{% if finding.status == "closed" %}

Closed: {{ finding.closed_at | fmt_time }}

{% endif %}
{% endblock %}