diff --git a/agents/QualysCloudAgent_7.3.0.40.deb b/agents/QualysCloudAgent_7.3.0.40.deb new file mode 100644 index 0000000..0bd294b Binary files /dev/null and b/agents/QualysCloudAgent_7.3.0.40.deb differ diff --git a/agents/QualysCloudAgent_7.3.0.40.rpm b/agents/QualysCloudAgent_7.3.0.40.rpm new file mode 100644 index 0000000..215a729 Binary files /dev/null and b/agents/QualysCloudAgent_7.3.0.40.rpm differ diff --git a/agents/QualysCloudAgent_LINUX_7.1.0.37.rpm b/agents/QualysCloudAgent_LINUX_7.1.0.37.rpm new file mode 100644 index 0000000..cf98152 Binary files /dev/null and b/agents/QualysCloudAgent_LINUX_7.1.0.37.rpm differ diff --git a/agents/QualysCloudAgent_LINUX_UBUNTU_7.2.0.38.deb b/agents/QualysCloudAgent_LINUX_UBUNTU_7.2.0.38.deb new file mode 100644 index 0000000..6c6c322 Binary files /dev/null and b/agents/QualysCloudAgent_LINUX_UBUNTU_7.2.0.38.deb differ diff --git a/agents/QualysCloudAgent_LINUX_UBUNTU_7.2.3.8.deb b/agents/QualysCloudAgent_LINUX_UBUNTU_7.2.3.8.deb new file mode 100644 index 0000000..6c5f119 Binary files /dev/null and b/agents/QualysCloudAgent_LINUX_UBUNTU_7.2.3.8.deb differ diff --git a/app/routers/qualys.py b/app/routers/qualys.py index 875dd61..2d9a9a0 100644 --- a/app/routers/qualys.py +++ b/app/routers/qualys.py @@ -466,11 +466,23 @@ async def qualys_search(request: Request, db=Depends(get_db), all_tags = db.execute(text("SELECT qualys_tag_id, name FROM qualys_tags ORDER BY name")).fetchall() + # KPI : total / avec vuln / sans vuln + filtrage vuln_filter (with|zero) + vuln_filter = request.query_params.get("vuln_filter", "") + kpi_total = len(assets) if assets else 0 + kpi_with_vuln = sum(1 for a in assets if vuln_map.get(str(a.ip_address), 0) > 0) if assets else 0 + kpi_zero_vuln = kpi_total - kpi_with_vuln + if assets and vuln_filter == "with": + assets = [a for a in assets if vuln_map.get(str(a.ip_address), 0) > 0] + elif assets and vuln_filter == "zero": + assets = [a for a in assets if vuln_map.get(str(a.ip_address), 0) == 0] + ctx = base_context(request, db, user) ctx.update({ "app_name": APP_NAME, "assets": assets, "search": search, "field": field, "api_msg": api_msg, "all_tags": all_tags, "vuln_map": vuln_map, + "kpi_total": kpi_total, "kpi_with_vuln": kpi_with_vuln, "kpi_zero_vuln": kpi_zero_vuln, + "vuln_filter": vuln_filter, "cache_info": cache_info, "can_edit_qualys": can_edit(perms, "qualys"), "msg": request.query_params.get("msg"), diff --git a/app/templates/qualys_search.html b/app/templates/qualys_search.html index ba5ac27..7075800 100644 --- a/app/templates/qualys_search.html +++ b/app/templates/qualys_search.html @@ -48,6 +48,26 @@ {% endif %} +{% if search and kpi_total is defined %} +
+{% endif %} +