ae-cvss-calculator
Version:
A CVSS vector modeling and score calculation implementation for all CVSS versions by {metæffekt}.
64 lines (63 loc) • 3.03 kB
TypeScript
import { ComponentCategory, CvssVector, MultiScoreResult, VectorComponent, VectorComponentValue } from "../CvssVector";
export declare class Cvss2 extends CvssVector<MultiScoreResult> {
constructor(initialVector?: string);
getRegisteredComponents(): Map<ComponentCategory, VectorComponent<VectorComponentValue>[]>;
getVectorPrefix(): string;
getVectorName(): string;
fillAverageVector(): void;
fillRandomBaseVector(): void;
protected calculateScoresInternal(normalize?: boolean): MultiScoreResult;
private calculateExactBaseScore;
private calculateExactImpactScore;
private calculateExactExploitabilityScore;
private calculateExactTemporalScore;
private calculateExactAdjustedBaseScore;
private calculateExactAdjustedTemporalScore;
private calculateExactEnvironmentalScore;
private calculateExactAdjustedImpactScore;
private calculateExactOverallScore;
isBaseFullyDefined(): boolean;
isTemporalFullyDefined(): boolean;
isEnvironmentalFullyDefined(): boolean;
isAnyBaseDefined(): boolean;
isAnyTemporalDefined(): boolean;
isAnyEnvironmentalDefined(): boolean;
private f;
createJsonSchema(): JSONSchemaForCommonVulnerabilityScoringSystemVersion20;
}
export type AccessVectorType = "NETWORK" | "ADJACENT_NETWORK" | "LOCAL";
export type AccessComplexityType = "HIGH" | "MEDIUM" | "LOW";
export type AuthenticationType = "MULTIPLE" | "SINGLE" | "NONE";
export type CiaType = "NONE" | "PARTIAL" | "COMPLETE";
export type ScoreType = number;
export type ExploitabilityType = "UNPROVEN" | "PROOF_OF_CONCEPT" | "FUNCTIONAL" | "HIGH" | "NOT_DEFINED";
export type RemediationLevelType = "OFFICIAL_FIX" | "TEMPORARY_FIX" | "WORKAROUND" | "UNAVAILABLE" | "NOT_DEFINED";
export type ReportConfidenceType = "UNCONFIRMED" | "UNCORROBORATED" | "CONFIRMED" | "NOT_DEFINED";
export type CollateralDamagePotentialType = "NONE" | "LOW" | "LOW_MEDIUM" | "MEDIUM_HIGH" | "HIGH" | "NOT_DEFINED";
export type TargetDistributionType = "NONE" | "LOW" | "MEDIUM" | "HIGH" | "NOT_DEFINED";
export type CiaRequirementType = "LOW" | "MEDIUM" | "HIGH" | "NOT_DEFINED";
export interface JSONSchemaForCommonVulnerabilityScoringSystemVersion20 {
/**
* CVSS Version
*/
version: "2.0";
vectorString: string;
baseScore: ScoreType;
temporalScore?: ScoreType;
environmentalScore?: ScoreType;
accessVector?: AccessVectorType;
accessComplexity?: AccessComplexityType;
authentication?: AuthenticationType;
confidentialityImpact?: CiaType;
integrityImpact?: CiaType;
availabilityImpact?: CiaType;
exploitability?: ExploitabilityType;
remediationLevel?: RemediationLevelType;
reportConfidence?: ReportConfidenceType;
collateralDamagePotential?: CollateralDamagePotentialType;
targetDistribution?: TargetDistributionType;
confidentialityRequirement?: CiaRequirementType;
integrityRequirement?: CiaRequirementType;
availabilityRequirement?: CiaRequirementType;
[k: string]: unknown;
}