362d2aa36d
With the LP page of the CVE issue is 'Fix Released' status, the CVE won't be reported in the cves_to_fix_lp list. we create a new cves_to_track_lp_fixed list to check if there is a newer fixer is provided under the same CVE for the 'stx' versioned pacakge, So that we can recognize when a fixed LP is actually not fixed. Monthly we need to double check the cves_to_track_lp_fixed list if it's not empty in the report. TestPlan: Pass: python3 cve_policy_filter.py localhost.json test cvssv3 Report the fixed LP of CVE issue in cves_to_fix_lp list. Story: 2010387 Task: 46683 Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com> Change-Id: If910a4e58a2a6e2f575c4bad67cd6d19f23ad3f1
156 lines
3.4 KiB
Plaintext
156 lines
3.4 KiB
Plaintext
<head></head>
|
|
<body>
|
|
<h1>Security report from vuls scan from {{title}}</h1>
|
|
<h2>CVEs to fix w/o a launchpad assigned: {{cves_to_fix | length}}</h2>
|
|
<table>
|
|
{% if cves_to_fix|length >= 1 %}
|
|
<tr>
|
|
{% for head in heads %}
|
|
<th>{{head}}</th>
|
|
{% endfor %}
|
|
</tr>
|
|
|
|
{% for cve in cves_to_fix %}
|
|
<tr>
|
|
<td>{{cve["id"]}}</td>
|
|
<td>{{cve["status"]}}</td>
|
|
<td>{{cve["cvss3Score"]}}</td>
|
|
<td>{{cve["av"]}}</td>
|
|
<td>{{cve["ac"]}}</td>
|
|
<td>{{cve["pr"]}}</td>
|
|
<td>{{cve["ui"]}}</td>
|
|
<td>{{cve["ai"]}}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</table>
|
|
<h2>CVEs to fix w/ a launchpad assigned: {{cves_to_fix_lp | length}}</h2>
|
|
<table>
|
|
{% if cves_to_fix_lp|length >= 1 %}
|
|
<tr>
|
|
{% for head in heads %}
|
|
<th>{{head}}</th>
|
|
{% endfor %}
|
|
</tr>
|
|
|
|
{% for cve in cves_to_fix_lp %}
|
|
<tr>
|
|
<td>{{cve["id"]}}</td>
|
|
<td>{{cve["status"]}}</td>
|
|
<td>{{cve["cvss3Score"]}}</td>
|
|
<td>{{cve["av"]}}</td>
|
|
<td>{{cve["ac"]}}</td>
|
|
<td>{{cve["pr"]}}</td>
|
|
<td>{{cve["ui"]}}</td>
|
|
<td>{{cve["ai"]}}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</table>
|
|
<h2> CVEs to track for launchpad fixed: {{cves_to_track_lp_fixed | length}}</h2>
|
|
<table>
|
|
{% if cves_to_track_lp_fixed|length >= 1 %}
|
|
<tr>
|
|
{% for head in heads %}
|
|
<th>{{head}}</th>
|
|
{% endfor %}
|
|
</tr>
|
|
|
|
{% for cve in cves_to_track_lp_fixed %}
|
|
<tr>
|
|
<td>{{cve["id"]}}</td>
|
|
<td>{{cve["status"]}}</td>
|
|
<td>{{cve["cvss3Score"]}}</td>
|
|
<td>{{cve["av"]}}</td>
|
|
<td>{{cve["ac"]}}</td>
|
|
<td>{{cve["pr"]}}</td>
|
|
<td>{{cve["ui"]}}</td>
|
|
<td>{{cve["ai"]}}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</table>
|
|
<h2> CVEs to track for incoming fix: {{cves_to_track | length}}</h2>
|
|
<table>
|
|
{% if cves_to_track|length >= 1 %}
|
|
<tr>
|
|
{% for head in heads %}
|
|
<th>{{head}}</th>
|
|
{% endfor %}
|
|
</tr>
|
|
|
|
{% for cve in cves_to_track %}
|
|
<tr>
|
|
<td>{{cve["id"]}}</td>
|
|
<td>{{cve["status"]}}</td>
|
|
<td>{{cve["cvss3Score"]}}</td>
|
|
<td>{{cve["av"]}}</td>
|
|
<td>{{cve["ac"]}}</td>
|
|
<td>{{cve["pr"]}}</td>
|
|
<td>{{cve["ui"]}}</td>
|
|
<td>{{cve["ai"]}}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</table>
|
|
<h2> CVEs that are Invalid or Won't Fix: {{cves_wont_fix | length}}</h2>
|
|
<table>
|
|
{% if cves_wont_fix|length >= 1 %}
|
|
<tr>
|
|
{% for head in heads %}
|
|
<th>{{head}}</th>
|
|
{% endfor %}
|
|
</tr>
|
|
|
|
{% for cve in cves_wont_fix %}
|
|
<tr>
|
|
<td>{{cve["id"]}}</td>
|
|
<td>{{cve["status"]}}</td>
|
|
<td>{{cve["cvss3Score"]}}</td>
|
|
<td>{{cve["av"]}}</td>
|
|
<td>{{cve["ac"]}}</td>
|
|
<td>{{cve["pr"]}}</td>
|
|
<td>{{cve["ui"]}}</td>
|
|
<td>{{cve["ai"]}}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</table>
|
|
|
|
<h2> CVEs to omit: {{cves_to_omit | length}}</h2>
|
|
<table>
|
|
{% if cves_to_omit|length >= 1 %}
|
|
<tr>
|
|
{% for head in heads %}
|
|
<th>{{head}}</th>
|
|
{% endfor %}
|
|
</tr>
|
|
|
|
{% for cve in cves_to_omit %}
|
|
<tr>
|
|
<td>{{cve["id"]}}</td>
|
|
<td>{{cve["status"]}}</td>
|
|
<td>{{cve["cvss3Score"]}}</td>
|
|
<td>{{cve["av"]}}</td>
|
|
<td>{{cve["ac"]}}</td>
|
|
<td>{{cve["pr"]}}</td>
|
|
<td>{{cve["ui"]}}</td>
|
|
<td>{{cve["ai"]}}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</table>
|
|
|
|
<h2>ERROR: CVEs that have no cvss3Score or cvss2Vector:{{cves_w_errors | length}}</h2>
|
|
<table>
|
|
{% if cves_w_errors|length >= 1 %}
|
|
{% for cve in cves_w_errors %}
|
|
<tr>
|
|
<td>{{cve["id"]}}</td>
|
|
<td>{{cve["status"]}}</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
</table>
|
|
</body>
|