VSS XML Schema Definition
$xml = $cvss->to_xml;
# Convert CVSS in JSON in according of CVSS JSON Schema
$json = encode_json($cvss);
# exported functions
use CVSS qw(decode_cvss encode_cv
asic, temporal, and environmental), convert the "vector string" and returns
the L<CVSS> object in JSON or XML.
The Common Vulnerability Scoring System (CVSS) provides a way to capture the
principal c
shift->{scores}->{impact} }
sub modified_impact_score { shift->{scores}->{modified_impact} }
# JSON-style alias
sub vectorString { shift->vector_string }
sub baseScore { shift-
ics->{$metric});
}
}
return join '/', @vectors;
}
sub TO_JSON {
my ($self) = @_;
# Required JSON fields:
# CVSS == v2.0: version, vectorString and baseScore
#
ring, baseScore and baseSeverity
$self->calculate_score unless ($self->base_score);
my $json = {
version => sprintf('%.1f', $self->version),
vectorString => $self->vecto
{json => 'accessVector', values => $AV},
AC => {json => 'accessComplexity', values => $AC},
Au => {json => 'authentication', values => $Au},
C => {json =
s => $C},
I => {json => 'integrityImpact', values => $I},
A => {json => 'availabilityImpact', values => $A},
# Temporal
E => {json => 'exploitability', v
es => $E},
RL => {json => 'remediationLevel', values => $RL},
RC => {json => 'reportConfidence', values => $RC},
# Environmental
CDP => {json => 'collateralDamagePoten
qw(pod2usage);
use Carp ();
use JSON::PP ();
use Data::Dumper ();
use CVSS ();
our $VERSION = $CVSS::VERSION;
my %options = (format => 'json');
sub _print { print(($_[0] || '') . (d
act-score
modified-impact-score
null|0
format=s
json
xml
)
) or pod2usage(-verbose => 0);
pod2usage(-exitstatus => 0, -ve
= @args;
pod2usage(-verbose => 1) if !$vector_string;
$options{format} = 'json' if defined $options{json};
$options{format} = 'xml' if defined $options{xml};
$options{'base-severi