@neuralegion/cvss
Version:
The Common Vulnerability Scoring System ([CVSS](https://www.first.org/cvss/)) [base](https://www.first.org/cvss/specification-document#Base-Metrics) [score](https://www.first.org/cvss/specification-document#1-2-Scoring) calculator and validator library wr
88 lines (87 loc) • 3.92 kB
JavaScript
export var BaseMetric;
(function (BaseMetric) {
BaseMetric["ATTACK_VECTOR"] = "AV";
BaseMetric["ATTACK_COMPLEXITY"] = "AC";
BaseMetric["PRIVILEGES_REQUIRED"] = "PR";
BaseMetric["USER_INTERACTION"] = "UI";
BaseMetric["SCOPE"] = "S";
BaseMetric["CONFIDENTIALITY"] = "C";
BaseMetric["INTEGRITY"] = "I";
BaseMetric["AVAILABILITY"] = "A";
})(BaseMetric || (BaseMetric = {}));
export var TemporalMetric;
(function (TemporalMetric) {
TemporalMetric["EXPLOIT_CODE_MATURITY"] = "E";
TemporalMetric["REMEDIATION_LEVEL"] = "RL";
TemporalMetric["REPORT_CONFIDENCE"] = "RC";
})(TemporalMetric || (TemporalMetric = {}));
export var EnvironmentalMetric;
(function (EnvironmentalMetric) {
EnvironmentalMetric["CONFIDENTIALITY_REQUIREMENT"] = "CR";
EnvironmentalMetric["INTEGRITY_REQUIREMENT"] = "IR";
EnvironmentalMetric["AVAILABILITY_REQUIREMENT"] = "AR";
EnvironmentalMetric["MODIFIED_ATTACK_VECTOR"] = "MAV";
EnvironmentalMetric["MODIFIED_ATTACK_COMPLEXITY"] = "MAC";
EnvironmentalMetric["MODIFIED_PRIVILEGES_REQUIRED"] = "MPR";
EnvironmentalMetric["MODIFIED_USER_INTERACTION"] = "MUI";
EnvironmentalMetric["MODIFIED_SCOPE"] = "MS";
EnvironmentalMetric["MODIFIED_CONFIDENTIALITY"] = "MC";
EnvironmentalMetric["MODIFIED_INTEGRITY"] = "MI";
EnvironmentalMetric["MODIFIED_AVAILABILITY"] = "MA";
})(EnvironmentalMetric || (EnvironmentalMetric = {}));
export const baseMetrics = [
BaseMetric.ATTACK_VECTOR,
BaseMetric.ATTACK_COMPLEXITY,
BaseMetric.PRIVILEGES_REQUIRED,
BaseMetric.USER_INTERACTION,
BaseMetric.SCOPE,
BaseMetric.CONFIDENTIALITY,
BaseMetric.INTEGRITY,
BaseMetric.AVAILABILITY
];
export const temporalMetrics = [
TemporalMetric.EXPLOIT_CODE_MATURITY,
TemporalMetric.REMEDIATION_LEVEL,
TemporalMetric.REPORT_CONFIDENCE
];
export const environmentalMetrics = [
EnvironmentalMetric.AVAILABILITY_REQUIREMENT,
EnvironmentalMetric.CONFIDENTIALITY_REQUIREMENT,
EnvironmentalMetric.INTEGRITY_REQUIREMENT,
EnvironmentalMetric.MODIFIED_ATTACK_VECTOR,
EnvironmentalMetric.MODIFIED_ATTACK_COMPLEXITY,
EnvironmentalMetric.MODIFIED_PRIVILEGES_REQUIRED,
EnvironmentalMetric.MODIFIED_USER_INTERACTION,
EnvironmentalMetric.MODIFIED_SCOPE,
EnvironmentalMetric.MODIFIED_CONFIDENTIALITY,
EnvironmentalMetric.MODIFIED_INTEGRITY,
EnvironmentalMetric.MODIFIED_AVAILABILITY
];
export const baseMetricValues = {
[]: ['N', 'A', 'L', 'P'],
[]: ['L', 'H'],
[]: ['N', 'L', 'H'],
[]: ['N', 'R'],
[]: ['U', 'C'],
[]: ['N', 'L', 'H'],
[]: ['N', 'L', 'H'],
[]: ['N', 'L', 'H']
};
export const temporalMetricValues = {
[]: ['X', 'H', 'F', 'P', 'U'],
[]: ['X', 'U', 'W', 'T', 'O'],
[]: ['X', 'C', 'R', 'U']
};
export const environmentalMetricValues = {
[]: ['X', 'H', 'M', 'L'],
[]: ['X', 'H', 'M', 'L'],
[]: ['X', 'H', 'M', 'L'],
[]: ['X', 'N', 'A', 'L', 'P'],
[]: ['X', 'L', 'H'],
[]: ['X', 'N', 'L', 'H'],
[]: ['X', 'N', 'R'],
[]: ['X', 'U', 'C'],
[]: ['X', 'N', 'L', 'H'],
[]: ['X', 'N', 'L', 'H'],
[]: ['X', 'N', 'L', 'H']
};