dradis-calculator_cvss 4.11.0 → 4.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +2 -2
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/cvss.js +32 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/manifests/application.js +16 -5
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/manifests/tylium.js +16 -5
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/{calculator.js.coffee → v3/calculator.js.coffee} +10 -32
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/calculator.js +168 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/vendor/app.js +435 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/vendor/cvss_config.js +858 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/vendor/cvss_details.js +18 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/vendor/cvss_lookup.js +275 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/vendor/max_composed.js +35 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/vendor/max_severity.js +30 -0
- data/app/assets/javascripts/dradis/plugins/calculators/cvss/v4/vendor/metrics.js +42 -0
- data/app/assets/stylesheets/dradis/plugins/calculators/cvss/manifests/application.css.scss +2 -1
- data/app/assets/stylesheets/dradis/plugins/calculators/cvss/manifests/tylium.scss +1 -2
- data/app/controllers/dradis/plugins/calculators/cvss/base_controller.rb +3 -1
- data/app/controllers/dradis/plugins/calculators/cvss/issues_controller.rb +35 -9
- data/app/models/dradis/plugins/calculators/cvss/v4.rb +89 -0
- data/app/views/dradis/plugins/calculators/cvss/_version_menu.html.erb +8 -0
- data/app/views/dradis/plugins/calculators/cvss/base/index.html.erb +9 -70
- data/app/views/dradis/plugins/calculators/cvss/base/v3/_base.html.erb +123 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v3/_environmental.html.erb +192 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v3/_index.html.erb +69 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v3/_temporal.html.erb +67 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v4/_base.html.erb +143 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v4/_environmental.html.erb +220 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v4/_index.html.erb +82 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v4/_supplemental.html.erb +85 -0
- data/app/views/dradis/plugins/calculators/cvss/base/v4/_threat.html.erb +19 -0
- data/app/views/dradis/plugins/calculators/cvss/issues/_show-content.html.erb +21 -9
- data/app/views/dradis/plugins/calculators/cvss/issues/_show-tabs.html.erb +3 -5
- data/app/views/dradis/plugins/calculators/cvss/issues/edit/_v3.html.erb +91 -0
- data/app/views/dradis/plugins/calculators/cvss/issues/edit/_v4.html.erb +103 -0
- data/app/views/dradis/plugins/calculators/cvss/issues/edit.html.erb +3 -93
- data/dradis-calculator_cvss.gemspec +1 -1
- data/lib/dradis/plugins/calculators/cvss/engine.rb +13 -7
- data/lib/dradis/plugins/calculators/cvss/gem_version.rb +1 -1
- metadata +32 -15
- data/app/assets/stylesheets/dradis/plugins/calculators/cvss/_version_switch.scss +0 -26
- data/app/views/dradis/plugins/calculators/cvss/_version_switch.html.erb +0 -10
- data/app/views/dradis/plugins/calculators/cvss/base/_base.html.erb +0 -123
- data/app/views/dradis/plugins/calculators/cvss/base/_environmental.html.erb +0 -192
- data/app/views/dradis/plugins/calculators/cvss/base/_temporal.html.erb +0 -67
- /data/app/assets/javascripts/dradis/plugins/calculators/cvss/{vendor → v3/vendor}/cvsscalc30.js +0 -0
- /data/app/assets/javascripts/dradis/plugins/calculators/cvss/{vendor → v3/vendor}/cvsscalc30_helptext.js +0 -0
- /data/app/assets/javascripts/dradis/plugins/calculators/cvss/{vendor → v3/vendor}/cvsscalc31.js +0 -0
- /data/app/assets/javascripts/dradis/plugins/calculators/cvss/{vendor → v3/vendor}/cvsscalc31_helptext.js +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f82faa99521fce223adbac8573d81816a7220b6e458963ae8ff1584661e6e4c0
|
4
|
+
data.tar.gz: bd1c63c74eb94f08b3435f806226873ec60920b3e3014b5f97fb0944a6acfb73
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1c36e17b6b184197c7eccb1261ece3f361d493cc05d937211641a6f6b5081f61d590a3640e9a6a9cbf844f9b712e3050271c52d8af4c0dacb7f851e57423d86e
|
7
|
+
data.tar.gz: d7aa100798815e471e68eefeb33864b8112f0809e95377ae564b76a4ac0ce68dfd1e512ca0bb01b1d17c063fd938b75c835a1b50aeb257ed825ce2b8249d919c
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
This simple add-on adds a new page under `/calculators/cvss` for you to perform CVSS score calculations:
|
4
4
|
|
5
|
-
![
|
5
|
+
![cvss4_calculator](https://github.com/dradis/dradis-calculator_cvss/assets/111541062/fd957a70-c068-4453-908e-be50beff9325)
|
6
6
|
|
7
|
-
The Common Vulnerability Scoring System (CVSS) Version
|
7
|
+
The Common Vulnerability Scoring System (CVSS) Version 4.0, 3.1, 3.0 Calculator is heavily inspired in the one provided by [FIRST](https://www.first.org/cvss/calculator/3.0).
|
8
8
|
|
9
9
|
|
10
10
|
## Install
|
@@ -0,0 +1,32 @@
|
|
1
|
+
$(document).on('turbolinks:load', function () {
|
2
|
+
if ($('[data-behavior~=cvss-version]').length) {
|
3
|
+
function handleVersionSelection() {
|
4
|
+
var selectedValue = $('[data-behavior~=cvss-version]').val();
|
5
|
+
$('[data-cvss-version]').addClass('d-none');
|
6
|
+
switch (selectedValue) {
|
7
|
+
case '40':
|
8
|
+
$('[data-cvss-version=4]').removeClass('d-none');
|
9
|
+
window.calculator = new CVSS40Calculator();
|
10
|
+
break;
|
11
|
+
case '31':
|
12
|
+
$('[data-cvss-version=3]').removeClass('d-none');
|
13
|
+
window.calculator = new CVSS31Calculator();
|
14
|
+
break;
|
15
|
+
case '30':
|
16
|
+
$('[data-cvss-version=3]').removeClass('d-none');
|
17
|
+
window.calculator = new CVSS30Calculator();
|
18
|
+
break;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
handleVersionSelection();
|
22
|
+
$('[data-behavior~=cvss-error]').addClass('d-none');
|
23
|
+
$('[data-behavior~=cvss-buttons] button').on('click', function () {
|
24
|
+
var $this = $(this);
|
25
|
+
$this.parent().find('button').removeClass('active btn-primary');
|
26
|
+
$this.addClass('active btn-primary');
|
27
|
+
$(`input[name="${$this.attr('name')}"]`).val($this.val());
|
28
|
+
window.calculator.calculate();
|
29
|
+
});
|
30
|
+
$('[data-behavior~=cvss-version]').on('change', handleVersionSelection);
|
31
|
+
}
|
32
|
+
});
|
@@ -3,8 +3,19 @@
|
|
3
3
|
//= require bootstrap
|
4
4
|
//= require turbolinks
|
5
5
|
|
6
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc30
|
7
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc30_helptext
|
8
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc31
|
9
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc31_helptext
|
10
|
-
//= require dradis/plugins/calculators/cvss/calculator
|
6
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc30
|
7
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc30_helptext
|
8
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc31
|
9
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc31_helptext
|
10
|
+
//= require dradis/plugins/calculators/cvss/v3/calculator
|
11
|
+
|
12
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/app
|
13
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/cvss_config
|
14
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/cvss_details
|
15
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/cvss_lookup
|
16
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/max_composed
|
17
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/max_severity
|
18
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/metrics
|
19
|
+
//= require dradis/plugins/calculators/cvss/v4/calculator
|
20
|
+
|
21
|
+
//= require dradis/plugins/calculators/cvss/cvss
|
@@ -1,5 +1,16 @@
|
|
1
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc30
|
2
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc30_helptext
|
3
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc31
|
4
|
-
//= require dradis/plugins/calculators/cvss/vendor/cvsscalc31_helptext
|
5
|
-
//= require dradis/plugins/calculators/cvss/calculator
|
1
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc30
|
2
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc30_helptext
|
3
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc31
|
4
|
+
//= require dradis/plugins/calculators/cvss/v3/vendor/cvsscalc31_helptext
|
5
|
+
//= require dradis/plugins/calculators/cvss/v3/calculator
|
6
|
+
|
7
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/app
|
8
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/cvss_config
|
9
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/cvss_details
|
10
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/cvss_lookup
|
11
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/max_composed
|
12
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/max_severity
|
13
|
+
//= require dradis/plugins/calculators/cvss/v4/vendor/metrics
|
14
|
+
//= require dradis/plugins/calculators/cvss/v4/calculator
|
15
|
+
|
16
|
+
//= require dradis/plugins/calculators/cvss/cvss
|
@@ -128,38 +128,16 @@ class CVSSCalculator
|
|
128
128
|
$('input[type=submit]').attr('disabled', 'disabled')
|
129
129
|
$('[data-behavior~=cvss-error]').removeClass('d-none').text(errorMessage)
|
130
130
|
|
131
|
-
class CVSS30Calculator extends CVSSCalculator
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
super()
|
137
|
-
|
138
|
-
class CVSS31Calculator extends CVSSCalculator
|
139
|
-
constructor: ->
|
140
|
-
@calc = CVSS31
|
141
|
-
@cvssHelp = CVSS31_Help
|
142
|
-
|
143
|
-
super()
|
144
|
-
|
145
|
-
document.addEventListener "turbolinks:load", ->
|
146
|
-
if $('[data-behavior~=cvss-buttons]').length
|
147
|
-
if $('[data-behavior~=cvss-version-toggle]').prop('checked')
|
148
|
-
window.calculator = new CVSS30Calculator()
|
149
|
-
else
|
150
|
-
window.calculator = new CVSS31Calculator()
|
131
|
+
class @CVSS30Calculator extends CVSSCalculator
|
132
|
+
constructor: ->
|
133
|
+
@calc = CVSS
|
134
|
+
@cvssHelp = CVSS_Help
|
151
135
|
|
152
|
-
|
136
|
+
super()
|
153
137
|
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
$("input[name=#{$this.attr('name')}]").val($this.val())
|
159
|
-
window.calculator.calculate()
|
138
|
+
class @CVSS31Calculator extends CVSSCalculator
|
139
|
+
constructor: ->
|
140
|
+
@calc = CVSS31
|
141
|
+
@cvssHelp = CVSS31_Help
|
160
142
|
|
161
|
-
|
162
|
-
if $('[data-behavior~=cvss-version-toggle]').prop('checked')
|
163
|
-
window.calculator = new CVSS30Calculator()
|
164
|
-
else
|
165
|
-
window.calculator = new CVSS31Calculator()
|
143
|
+
super()
|
@@ -0,0 +1,168 @@
|
|
1
|
+
class CVSS4Calculator {
|
2
|
+
constructor() {
|
3
|
+
$('[data-cvss-heading], [data-cvss-option]').each(function (_, item) {
|
4
|
+
let heading, metrics, metricGroup, tooltipContent;
|
5
|
+
|
6
|
+
metrics = $(item).parents('[data-cvss-metrics]').data('cvss-metrics');
|
7
|
+
metricGroup = $(item)
|
8
|
+
.parents('[data-cvss-metric-group]')
|
9
|
+
.data('cvss-metric-group');
|
10
|
+
|
11
|
+
if ($(item).is('[data-cvss-option]')) {
|
12
|
+
let option = $(item).data('cvss-option');
|
13
|
+
heading = $(item)
|
14
|
+
.parent()
|
15
|
+
.prevAll('[data-cvss-heading]:first')
|
16
|
+
.data('cvss-heading');
|
17
|
+
tooltipContent =
|
18
|
+
cvss40Config[metrics].metric_groups[metricGroup][heading].options[
|
19
|
+
option
|
20
|
+
].tooltip;
|
21
|
+
} else {
|
22
|
+
heading = $(item).data('cvss-heading');
|
23
|
+
tooltipContent =
|
24
|
+
cvss40Config[metrics].metric_groups[metricGroup][heading].tooltip;
|
25
|
+
}
|
26
|
+
|
27
|
+
$(item).attr('title', tooltipContent);
|
28
|
+
});
|
29
|
+
}
|
30
|
+
}
|
31
|
+
|
32
|
+
class CVSS40Calculator extends CVSS4Calculator {
|
33
|
+
constructor() {
|
34
|
+
super()
|
35
|
+
|
36
|
+
this.app = cvss_v4_app();
|
37
|
+
this.calculate();
|
38
|
+
}
|
39
|
+
|
40
|
+
calculate() {
|
41
|
+
const regex = / \(.+?\)/i;
|
42
|
+
|
43
|
+
$('input[type=submit]').attr('disabled', null);
|
44
|
+
|
45
|
+
const that = this;
|
46
|
+
$('[data-cvss-metrics] .btn-group').each(function(){
|
47
|
+
const selected = $(this).find('[data-cvss-option].active');
|
48
|
+
|
49
|
+
if (selected.length == 1) {
|
50
|
+
that.app.cvssSelected[selected.attr('name').toUpperCase()] = selected.attr('value');
|
51
|
+
|
52
|
+
const label = selected.data('cvss-option');
|
53
|
+
that.app.cvssSelectedValue[selected.attr('name').toUpperCase()] = label.replace(regex, '');
|
54
|
+
}
|
55
|
+
});
|
56
|
+
|
57
|
+
this.setResult();
|
58
|
+
|
59
|
+
return true;
|
60
|
+
}
|
61
|
+
|
62
|
+
baseVector() {
|
63
|
+
let baseVector = 'CVSS:4.0';
|
64
|
+
const that = this;
|
65
|
+
|
66
|
+
Object.keys(expectedMetricOrder).forEach(function(metric) {
|
67
|
+
if (that.app.cvssSelected[metric] && that.app.cvssSelected[metric] != 'X') {
|
68
|
+
baseVector += `/${metric}:${that.app.cvssSelected[metric]}`
|
69
|
+
}
|
70
|
+
})
|
71
|
+
|
72
|
+
return baseVector;
|
73
|
+
}
|
74
|
+
|
75
|
+
setResult() {
|
76
|
+
let issue_cvss = ''
|
77
|
+
|
78
|
+
issue_cvss += "#[CVSSv4.BaseVector]#\n"
|
79
|
+
issue_cvss += `${this.baseVector()}\n\n`
|
80
|
+
issue_cvss += "#[CVSSv4.BaseScore]#\n"
|
81
|
+
issue_cvss += `${this.app.score()}\n\n`
|
82
|
+
issue_cvss += "#[CVSSv4.BaseSeverity]#\n"
|
83
|
+
issue_cvss += `${this.app.qualScore()}\n\n`
|
84
|
+
|
85
|
+
issue_cvss += "#[CVSSv4.MacroVector]#\n";
|
86
|
+
issue_cvss += `${this.app.macroVector()}\n\n`
|
87
|
+
|
88
|
+
const that = this;
|
89
|
+
[
|
90
|
+
'Exploitability', 'Complexity', 'VulnerableSystem', 'SubsequentSystem',
|
91
|
+
'Exploitation', 'SecurityRequirements'
|
92
|
+
].forEach(function(macroMetric) {
|
93
|
+
issue_cvss += "#[CVSSv4." + macroMetric + "]#\n"
|
94
|
+
issue_cvss += cvssMacroVectorValues[that.app.macroVector()[cvssMacroVectorDetails[macroMetric]]] + "\n\n"
|
95
|
+
});
|
96
|
+
|
97
|
+
issue_cvss += "#[CVSSv4.BaseExploitableAttackVector]#\n"
|
98
|
+
issue_cvss += `${this.app.cvssSelectedValue['AV']}\n\n`
|
99
|
+
issue_cvss += "#[CVSSv4.BaseExploitableAttackComplexity]#\n"
|
100
|
+
issue_cvss += `${this.app.cvssSelectedValue['AC']}\n\n`
|
101
|
+
issue_cvss += "#[CVSSv4.BaseExploitableAttackRequirements]#\n"
|
102
|
+
issue_cvss += `${this.app.cvssSelectedValue['AT']}\n\n`
|
103
|
+
issue_cvss += "#[CVSSv4.BaseExploitablePrivilegesRequired]#\n"
|
104
|
+
issue_cvss += `${this.app.cvssSelectedValue['PR']}\n\n`
|
105
|
+
issue_cvss += "#[CVSSv4.BaseExploitableUserInteraction]#\n"
|
106
|
+
issue_cvss += `${this.app.cvssSelectedValue['UI']}\n\n`
|
107
|
+
issue_cvss += "#[CVSSv4.BaseVulnerableConfidentiality]#\n"
|
108
|
+
issue_cvss += `${this.app.cvssSelectedValue['VC']}\n\n`
|
109
|
+
issue_cvss += "#[CVSSv4.BaseVulnerableIntegrity]#\n"
|
110
|
+
issue_cvss += `${this.app.cvssSelectedValue['VI']}\n\n`
|
111
|
+
issue_cvss += "#[CVSSv4.BaseVulnerableAvailability]#\n"
|
112
|
+
issue_cvss += `${this.app.cvssSelectedValue['VA']}\n\n`
|
113
|
+
issue_cvss += "#[CVSSv4.BaseSubsequentConfidentiality]#\n"
|
114
|
+
issue_cvss += `${this.app.cvssSelectedValue['SC']}\n\n`
|
115
|
+
issue_cvss += "#[CVSSv4.BaseSubsequentIntegrity]#\n"
|
116
|
+
issue_cvss += `${this.app.cvssSelectedValue['SI']}\n\n`
|
117
|
+
issue_cvss += "#[CVSSv4.BaseSubsequentAvailability]#\n"
|
118
|
+
issue_cvss += `${this.app.cvssSelectedValue['SA']}\n\n`
|
119
|
+
|
120
|
+
issue_cvss += "#[CVSSv4.SupplementalSafety]#\n"
|
121
|
+
issue_cvss += `${this.app.cvssSelectedValue['S']}\n\n`
|
122
|
+
issue_cvss += "#[CVSSv4.SupplementalAutomatable]#\n"
|
123
|
+
issue_cvss += `${this.app.cvssSelectedValue['AU']}\n\n`
|
124
|
+
issue_cvss += "#[CVSSv4.SupplementalRecovery]#\n"
|
125
|
+
issue_cvss += `${this.app.cvssSelectedValue['R']}\n\n`
|
126
|
+
issue_cvss += "#[CVSSv4.SupplementalValueDensity]#\n"
|
127
|
+
issue_cvss += `${this.app.cvssSelectedValue['V']}\n\n`
|
128
|
+
issue_cvss += "#[CVSSv4.SupplementalVulnerabilityResponseEffort]#\n"
|
129
|
+
issue_cvss += `${this.app.cvssSelectedValue['RE']}\n\n`
|
130
|
+
issue_cvss += "#[CVSSv4.SupplementalProviderUrgency]#\n"
|
131
|
+
issue_cvss += `${this.app.cvssSelectedValue['U']}\n\n`
|
132
|
+
|
133
|
+
issue_cvss += "#[CVSSv4.EnvironmentalExploitabilityAttackVector]#\n"
|
134
|
+
issue_cvss += `${this.app.cvssSelectedValue['MAV']}\n\n`
|
135
|
+
issue_cvss += "#[CVSSv4.EnvironmentalExploitabilityAttackComplexity]#\n"
|
136
|
+
issue_cvss += `${this.app.cvssSelectedValue['MAC']}\n\n`
|
137
|
+
issue_cvss += "#[CVSSv4.EnvironmentalExploitabilityAttackRequirements]#\n"
|
138
|
+
issue_cvss += `${this.app.cvssSelectedValue['MAT']}\n\n`
|
139
|
+
issue_cvss += "#[CVSSv4.EnvironmentalExploitabilityPrivilegesRequired]#\n"
|
140
|
+
issue_cvss += `${this.app.cvssSelectedValue['MPR']}\n\n`
|
141
|
+
issue_cvss += "#[CVSSv4.EnvironmentalExploitabilityUserInteraction]#\n"
|
142
|
+
issue_cvss += `${this.app.cvssSelectedValue['MUI']}\n\n`
|
143
|
+
issue_cvss += "#[CVSSv4.EnvironmentalVulnerableConfidentiality]#\n"
|
144
|
+
issue_cvss += `${this.app.cvssSelectedValue['MVC']}\n\n`
|
145
|
+
issue_cvss += "#[CVSSv4.EnvironmentalVulnerableIntegrity]#\n"
|
146
|
+
issue_cvss += `${this.app.cvssSelectedValue['MVI']}\n\n`
|
147
|
+
issue_cvss += "#[CVSSv4.EnvironmentalVulnerableAvailability]#\n"
|
148
|
+
issue_cvss += `${this.app.cvssSelectedValue['MVA']}\n\n`
|
149
|
+
issue_cvss += "#[CVSSv4.EnvironmentalSubsequentConfidentiality]#\n"
|
150
|
+
issue_cvss += `${this.app.cvssSelectedValue['MSC']}\n\n`
|
151
|
+
issue_cvss += "#[CVSSv4.EnvironmentalSubsequentIntegrity]#\n"
|
152
|
+
issue_cvss += `${this.app.cvssSelectedValue['MSI']}\n\n`
|
153
|
+
issue_cvss += "#[CVSSv4.EnvironmentalSubsequentAvailability]#\n"
|
154
|
+
issue_cvss += `${this.app.cvssSelectedValue['MSA']}\n\n`
|
155
|
+
issue_cvss += "#[CVSSv4.EnvironmentalConfidentialityRequirements]#\n"
|
156
|
+
issue_cvss += `${this.app.cvssSelectedValue['CR']}\n\n`
|
157
|
+
issue_cvss += "#[CVSSv4.EnvironmentalIntegrityRequirements]#\n"
|
158
|
+
issue_cvss += `${this.app.cvssSelectedValue['IR']}\n\n`
|
159
|
+
issue_cvss += "#[CVSSv4.EnvironmentalAvailabilityRequirements]#\n"
|
160
|
+
issue_cvss += `${this.app.cvssSelectedValue['AR']}\n\n`
|
161
|
+
|
162
|
+
issue_cvss += "#[CVSSv4.ThreatExploitMaturity]#\n"
|
163
|
+
issue_cvss += `${this.app.cvssSelectedValue['E']}\n\n`
|
164
|
+
|
165
|
+
$('[data-behavior=cvss4-result-text] textarea').val(issue_cvss)
|
166
|
+
$('[data-behavior=cvss4-result]').html(this.app.score() + ' (' + this.app.qualScore() + ')')
|
167
|
+
}
|
168
|
+
}
|