From d1ef1121fcc0a832915dacc252b7463b2a77e92a Mon Sep 17 00:00:00 2001 From: Rishi Garg Date: Fri, 14 Feb 2025 11:55:02 +0530 Subject: [PATCH 1/2] Improved UI for severity details Signed-off-by: Rishi Garg --- .../templates/vulnerability_details.html | 184 ++++++++++-------- 1 file changed, 103 insertions(+), 81 deletions(-) diff --git a/vulnerabilities/templates/vulnerability_details.html b/vulnerabilities/templates/vulnerability_details.html index 7001c8f3b..bcdb01a00 100644 --- a/vulnerabilities/templates/vulnerability_details.html +++ b/vulnerabilities/templates/vulnerability_details.html @@ -409,97 +409,119 @@
{% for severity_vector in severity_vectors %} {% if severity_vector.vector.version == '2.0' %} - Vector: {{ severity_vector.vector.vectorString }} Found at {{ severity_vector.origin }} - - - - - - - - - - - - - - - - - - - -
Exploitability (E)Access Vector (AV)Access Complexity (AC)Authentication (Au)Confidentiality Impact (C)Integrity Impact (I)Availability Impact (A)
{{ severity_vector.vector.exploitability|cvss_printer:"high,functional,unproven,proof_of_concept,not_defined" }}{{ severity_vector.vector.accessVector|cvss_printer:"local,adjacent_network,network" }}{{ severity_vector.vector.accessComplexity|cvss_printer:"high,medium,low" }}{{ severity_vector.vector.authentication|cvss_printer:"multiple,single,none" }}{{ severity_vector.vector.confidentialityImpact|cvss_printer:"none,partial,complete" }}{{ severity_vector.vector.integrityImpact|cvss_printer:"none,partial,complete" }}{{ severity_vector.vector.availabilityImpact|cvss_printer:"none,partial,complete" }}
+
+ Score: {{ severity_vector.vector.baseScore }} - + Vector: {{ severity_vector.vector.vectorString }} + + + + - Found at {{ severity_vector.origin }} + + + + + + + + + + + + + + + + + + + +
Exploitability (E)Access Vector (AV)Access Complexity (AC)Authentication (Au)Confidentiality Impact (C)Integrity Impact (I)Availability Impact (A)
{{ severity_vector.vector.exploitability|cvss_printer:"high,functional,unproven,proof_of_concept,not_defined" }}{{ severity_vector.vector.accessVector|cvss_printer:"local,adjacent_network,network" }}{{ severity_vector.vector.accessComplexity|cvss_printer:"high,medium,low" }}{{ severity_vector.vector.authentication|cvss_printer:"multiple,single,none" }}{{ severity_vector.vector.confidentialityImpact|cvss_printer:"none,partial,complete" }}{{ severity_vector.vector.integrityImpact|cvss_printer:"none,partial,complete" }}{{ severity_vector.vector.availabilityImpact|cvss_printer:"none,partial,complete" }}
+
+ {% elif severity_vector.vector.version == '3.1' or severity_vector.vector.version == '3.0'%} - Vector: {{ severity_vector.vector.vectorString }} Found at {{ severity_vector.origin }} - - - - - - - - - - - - - - - - - - - - - +
+ Score: {{ severity_vector.vector.baseScore }} - + Vector: {{ severity_vector.vector.vectorString }} + + + + - Found at {{ severity_vector.origin }} +
Attack Vector (AV)Attack Complexity (AC)Privileges Required (PR)User Interaction (UI)Scope (S)Confidentiality Impact (C)Integrity Impact (I)Availability Impact (A)
{{ severity_vector.vector.attackVector|cvss_printer:"network,adjacent_network,local,physical"}}{{ severity_vector.vector.attackComplexity|cvss_printer:"low,high" }}{{ severity_vector.vector.privilegesRequired|cvss_printer:"none,low,high" }}{{ severity_vector.vector.userInteraction|cvss_printer:"none,required"}}{{ severity_vector.vector.scope|cvss_printer:"unchanged,changed" }}{{ severity_vector.vector.confidentialityImpact|cvss_printer:"high,low,none" }}{{ severity_vector.vector.integrityImpact|cvss_printer:"high,low,none" }}{{ severity_vector.vector.availabilityImpact|cvss_printer:"high,low,none" }}
+ + + + + + + + + + + + + + + + + + + +
Attack Vector (AV)Attack Complexity (AC)Privileges Required (PR)User Interaction (UI)Scope (S)Confidentiality (C)Integrity (I)Availability (A)
{{ severity_vector.vector.attackVector|cvss_printer:"network,adjacent_network,local,physical"}}{{ severity_vector.vector.attackComplexity|cvss_printer:"low,high" }}{{ severity_vector.vector.privilegesRequired|cvss_printer:"none,low,high" }}{{ severity_vector.vector.userInteraction|cvss_printer:"none,required"}}{{ severity_vector.vector.scope|cvss_printer:"unchanged,changed" }}{{ severity_vector.vector.confidentialityImpact|cvss_printer:"high,low,none" }}{{ severity_vector.vector.integrityImpact|cvss_printer:"high,low,none" }}{{ severity_vector.vector.availabilityImpact|cvss_printer:"high,low,none" }}
+
+ {% elif severity_vector.vector.version == '4' %} - Vector: {{ severity_vector.vector.vectorString }} Found at {{ severity_vector.origin }} - - - - - - - + Score: {{ severity_vector.vector.baseScore }} - + Vector: {{ severity_vector.vector.vectorString }} + + + + - Found at {{ severity_vector.origin }} +
Attack Vector (AV)Attack Complexity (AC)Attack Requirements (AT)Privileges Required (PR)User Interaction (UI)
+ + + + + + - - - + + + - - - - - - - - - - + + + + + + + + + + - - - + + + - - - - + + + +
Attack Vector (AV)Attack Complexity (AC)Attack Requirements (AT)Privileges Required (PR)User Interaction (UI)Vulnerable System Impact Confidentiality (VC)Vulnerable System Impact Integrity (VI)Vulnerable System Impact Availability (VA)VS Impact Confidentiality (VC)VS Impact Integrity (VI)VS Impact Availability (VA)Subsequent System Impact Confidentiality (SC)Subsequent System Impact Integrity (SI)Subsequent System Impact Availability (SA)
{{ severity_vector.vector.attackVector|cvss_printer:"network,adjacent,local,physical"}}{{ severity_vector.vector.attackComplexity|cvss_printer:"low,high" }}{{ severity_vector.vector.attackRequirement|cvss_printer:"none,present" }}{{ severity_vector.vector.privilegesRequired|cvss_printer:"none,low,high" }}{{ severity_vector.vector.userInteraction|cvss_printer:"none,passive,active"}}SS Impact Confidentiality (SC)SS Impact Integrity (SI)SS Impact Availability (SA)
{{ severity_vector.vector.attackVector|cvss_printer:"network,adjacent,local,physical"}}{{ severity_vector.vector.attackComplexity|cvss_printer:"low,high" }}{{ severity_vector.vector.attackRequirement|cvss_printer:"none,present" }}{{ severity_vector.vector.privilegesRequired|cvss_printer:"none,low,high" }}{{ severity_vector.vector.userInteraction|cvss_printer:"none,passive,active"}}{{ severity_vector.vector.vulnerableSystemImpactConfidentiality|cvss_printer:"high,low,none" }}{{ severity_vector.vector.vulnerableSystemImpactIntegrity|cvss_printer:"high,low,none" }}{{ severity_vector.vector.vulnerableSystemImpactAvailability|cvss_printer:"high,low,none" }}{{ severity_vector.vector.vulnerableSystemImpactConfidentiality|cvss_printer:"high,low,none" }}{{ severity_vector.vector.vulnerableSystemImpactIntegrity|cvss_printer:"high,low,none" }}{{ severity_vector.vector.vulnerableSystemImpactAvailability|cvss_printer:"high,low,none" }}{{ severity_vector.vector.subsequentSystemImpactConfidentiality|cvss_printer:"high,low,none" }}{{ severity_vector.vector.subsequentSystemImpactIntegrity|cvss_printer:"high,low,none" }}{{ severity_vector.vector.subsequentSystemImpactAvailability|cvss_printer:"high,low,none" }}
{{ severity_vector.vector.subsequentSystemImpactConfidentiality|cvss_printer:"high,low,none" }}{{ severity_vector.vector.subsequentSystemImpactIntegrity|cvss_printer:"high,low,none" }}{{ severity_vector.vector.subsequentSystemImpactAvailability|cvss_printer:"high,low,none" }}
{% elif severity_vector.vector.version == 'ssvc' %} -
- Vector: {{ severity_vector.vector.vectorString }} Found at {{ severity_vector.origin }} -
+
+ Vector: {{ severity_vector.vector.vectorString }} Found at {{ severity_vector.origin }} + - Found at {{ severity_vector.origin }} +
{% endif %} - {% empty %} - - - There are no known vectors. - - - {% endfor %} + {% empty %} + + + There are no known vectors. + + + {% endfor %} From d25fb799b03bb647f127ed40eceef15c444b9f3c Mon Sep 17 00:00:00 2001 From: Rishi Garg Date: Fri, 14 Feb 2025 17:43:40 +0530 Subject: [PATCH 2/2] Improved Hovertext for diffrent cvss versions Signed-off-by: Rishi Garg --- .../templates/vulnerability_details.html | 89 +++++++++++++------ 1 file changed, 61 insertions(+), 28 deletions(-) diff --git a/vulnerabilities/templates/vulnerability_details.html b/vulnerabilities/templates/vulnerability_details.html index bcdb01a00..ee2a893df 100644 --- a/vulnerabilities/templates/vulnerability_details.html +++ b/vulnerabilities/templates/vulnerability_details.html @@ -418,13 +418,48 @@ - Found at {{ severity_vector.origin }} - - - - - - - + + + + + + + + + + + + + @@ -437,7 +472,6 @@
Exploitability (E)Access Vector (AV)Access Complexity (AC)Authentication (Au)Confidentiality Impact (C)Integrity Impact (I)Availability Impact (A)Exploitability (E)Access Vector (AV)Access Complexity (AC)Authentication (Au)Confidentiality (C)Integrity (I)Availability (A)
{{ severity_vector.vector.exploitability|cvss_printer:"high,functional,unproven,proof_of_concept,not_defined" }}
- {% elif severity_vector.vector.version == '3.1' or severity_vector.vector.version == '3.0'%}
Score: {{ severity_vector.vector.baseScore }} - @@ -448,14 +482,14 @@ - Found at {{ severity_vector.origin }} - - - - - - - - + + + + + + + + @@ -469,7 +503,6 @@
Attack Vector (AV)Attack Complexity (AC)Privileges Required (PR)User Interaction (UI)Scope (S)Confidentiality (C)Integrity (I)Availability (A)Attack Vector (AV)Attack Complexity (AC)Privileges Required (PR)User Interaction (UI)Scope (S)Confidentiality (C)Integrity (I)Availability (A)
{{ severity_vector.vector.attackVector|cvss_printer:"network,adjacent_network,local,physical"}}
- {% elif severity_vector.vector.version == '4' %} Score: {{ severity_vector.vector.baseScore }} - Vector: {{ severity_vector.vector.vectorString }} @@ -479,19 +512,19 @@ - Found at {{ severity_vector.origin }} - - - - - + + + + + - - - + + + - - - + + +
Attack Vector (AV)Attack Complexity (AC)Attack Requirements (AT)Privileges Required (PR)User Interaction (UI)Attack Vector (AV)Attack Complexity (AC)Attack Requirements (AT)Privileges Required (PR)User Interaction (UI)VS Impact Confidentiality (VC)VS Impact Integrity (VI)VS Impact Availability (VA)VS Impact Confidentiality (VC)VS Impact Integrity (VI)VS Impact Availability (VA)SS Impact Confidentiality (SC)SS Impact Integrity (SI)SS Impact Availability (SA)SS Impact Confidentiality (SC)SS Impact Integrity (SI)SS Impact Availability (SA)
{{ severity_vector.vector.attackVector|cvss_printer:"network,adjacent,local,physical"}}