cvss_vulnerability_scoring 1.0.0-beta.1+2 copy "cvss_vulnerability_scoring: ^1.0.0-beta.1+2" to clipboard
cvss_vulnerability_scoring: ^1.0.0-beta.1+2 copied to clipboard

Calculate CVSS vulnerability scores.

🧮 CVSS Vulnerability Scoring #

Caution

This library is under heavy development.

Getting started #

  • Calculates CVSS v2.0, v3.0, v3.1 score based on provided metrics.
  • Easy way to change CVSS vulnerability score

Supported Metrics #

CVSS Version Base Metric Extended Metric (Temporal, Environmental...)
CVSS v4.0 🚧 Not implemented 🚧 Not implemented
CVSS v3.1 🚧 Not implemented
CVSS v3.0 🚧 Not implemented
CVSS v2.0 🚧 Not implemented

Usage #

Creating a CVSS v3.1 Object

import 'package:cvss_vulnerability_scoring/cvss_vulnerability_scoring.dart';

final cvss = CVSSv31(
  attackVector: AttackVector.network,
  attackComplexity: AttackComplexity.low,
  privilegesRequired: PrivilegesRequired.none,
  userInteraction: UserInteraction.none,
  scope: Scope.unchanged,
  confidentialityImpact: ConfidentialityImpact.high,
  integrityImpact: IntegrityImpact.high,
  availabilityImpact: AvailabilityImpact.high,
);

final baseScore = cvss.calculateBaseScore();
final severity = cvss.baseSeverityRating;

print('CVSS Base Score: $baseScore');  // Output: CVSS Base Score: 9.8
print('Severity Rating: $severity');   // Output: Severity Rating: Critical
print('CVSS Vector String: $cvss');    // Output: CVSS Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Creating a CVSS v3.0 Object

import 'package:cvss_vulnerability_scoring/cvss_vulnerability_scoring.dart';

final cvss = CVSSv30(
  attackVector: AttackVector.network,
  attackComplexity: AttackComplexity.low,
  privilegesRequired: PrivilegesRequired.none,
  userInteraction: UserInteraction.none,
  scope: Scope.unchanged,
  confidentialityImpact: ConfidentialityImpact.high,
  integrityImpact: IntegrityImpact.high,
  availabilityImpact: AvailabilityImpact.high,
);

final baseScore = cvss.calculateBaseScore();
final severity = cvss.baseSeverityRating;

print('CVSS Base Score: $baseScore');
print('Severity Rating: $severity');
print('CVSS Vector String: $cvss');

Creating a CVSS v2.0 Object

import 'package:cvss_vulnerability_scoring/cvss_vulnerability_scoring.dart';

final cvssString = 'CVSS:2.0/AV:N/AC:L/Au:N/C:P/I:P/A:P';
final cvss = CVSSv20.fromString(cvssString);

final baseScore = cvss.calculateBaseScore();

print('CVSS Base Score: $baseScore');
print('CVSS Vector String: $cvss');

Contributing #

See the Contributing guide for more information.

License #

All of CVSS Vulnerability Scoring library is licensed under the Apache-2.0 license unless otherwise stated.

See the license file for more information.

1
likes
120
points
1
downloads

Publisher

verified publishernullcube.me

Weekly Downloads

Calculate CVSS vulnerability scores.

Repository (GitHub)
View/report issues

Documentation

API reference

Funding

Consider supporting this project:

github.com

License

Apache-2.0 (license)

More

Packages that depend on cvss_vulnerability_scoring