{% extends 'base.html' %} {% block title %}Dashboard Vulnérabilités{% endblock %} {% block content %} {% set msg = request.query_params.get('msg', '') %} {% if msg == 'refresh_started' %}
Aucun snapshot disponible. Lance un premier calcul.
| Catégorie | Total | 🔴 Critique | 🟠 High | 🟡 Medium | 🟢 Sain | ⚫ Non scanné | % vuln |
|---|---|---|---|---|---|---|---|
| {{ it.name }} | {{ it.total }} | {% if it.critical > 0 %}{{ it.critical }}{% else %}-{% endif %} | {% if it.high > 0 %}{{ it.high }}{% else %}-{% endif %} | {% if it.medium > 0 %}{{ it.medium }}{% else %}-{% endif %} | {% if it.sain > 0 %}{{ it.sain }}{% else %}-{% endif %} | {{ it.non_scanne if it.non_scanne > 0 else '-' }} | {{ it.pct_vuln }}% |
| ENV \ POS | {% for p in pos_list %}{{ p }} | {% endfor %}|
|---|---|---|
| {{ e }} | {% for p in pos_list %} {% set cell = matrix.get((e,p)) %} {% if cell and cell.total > 0 %}
{{ cell.vuln_total }}/{{ cell.scanned }}
{{ cell.pct_vuln }}%
|
{% else %}
- | {% endif %} {% endfor %}
Format : vulnérables / scannés — couleur = % vulnérables (rouge ≥50%, orange ≥25%, jaune >0)