CVSSlib

1.0.0 · maintenance · verified Thu Apr 16

CVSSlib is a Python 3 library designed for calculating Common Vulnerability Scoring System (CVSS) v2, v3, and v3.1 vectors. It provides utilities for scoring and manipulating CVSS vectors and is built to be extendable, allowing for custom scoring systems. The current version is 1.0.0, released in March 2020, and the project is in a maintenance state with no active feature development since then.

Common errors

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to import the necessary modules from `cvsslib` and use the `calculate_vector` function to compute CVSS scores for different versions (v2, v3.0, and v3.1) from their respective vector strings. It prints the base, impact, and exploitability scores.

from cvsslib import cvss2, cvss3, cvss31, calculate_vector

# Calculate CVSS v2 score
vector_v2 = "AV:L/AC:M/Au:S/C:N/I:P/A:C/E:U/RL:OF/RC:UR/CDP:N/TD:L/CR:H/IR:H/AR:H"
base_score_v2, impact_v2, exploitability_v2 = calculate_vector(vector_v2, cvss2)
print(f"CVSS v2 Vector: {vector_v2}")
print(f"Base Score: {base_score_v2}, Impact Score: {impact_v2}, Exploitability Score: {exploitability_v2}\n")

# Calculate CVSS v3.0 score
vector_v3 = "CVSS:3.0/AV:L/AC:L/PR:H/UI:R/S:U/C:H/I:N/A:H/MPR:N"
base_score_v3, impact_v3, exploitability_v3 = calculate_vector(vector_v3, cvss3)
print(f"CVSS v3.0 Vector: {vector_v3}")
print(f"Base Score: {base_score_v3}, Impact Score: {impact_v3}, Exploitability Score: {exploitability_v3}\n")

# Calculate CVSS v3.1 score
vector_v31 = "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"
base_score_v31, impact_v31, exploitability_v31 = calculate_vector(vector_v31, cvss31)
print(f"CVSS v3.1 Vector: {vector_v31}")
print(f"Base Score: {base_score_v31}, Impact Score: {impact_v31}, Exploitability Score: {exploitability_v31}")

view raw JSON →