Skip to content

⏱️ 可用性 (A) ​

🟦 基础指标 · 📐 影响子分

定义 ​

可用性 (A) 衡量受影响组件内可用性的损失程度——攻击者拒绝资源访问的能力。它与机密性、完整性同为构成影响 (Impact) 子分的三项 CIA 指标之一。

取值 ​

短值长值分数描述
HHigh0.56可用性完全丧失:攻击者可完全拒绝资源访问,持续或持久。
LLow0.22性能下降或资源可用性中断,但攻击者无法完全拒绝服务,影响非直接严重。
NNone0.00受影响组件内无可用性影响。

分数取自 pkg/vector/availability.go。

分数映射 ​

C、I、A 三个指标分数刻度相同(H=0.56、L=0.22、N=0.00)。它们汇入 ISC(影响)子分:取值越高影响越大。完全损失(H)影响最大;无损失(N)不计。

评分影响 ​

A 喂入影响子分。三者按 Impact = 1 − (1 − C) × (1 − I) × (1 − A) 合并。仅 A 有影响时,A:H 得影响 0.56,A:L 得 0.22,A:N 得 0。

示例 ​

将 C、I 设为 None 以单独观察 A:

bash
cvss score "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"  # A:High
cvss score "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"  # A:Low
cvss score "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:N"  # A:None
text
7.5 (High)     # A:H
5.3 (Medium)   # A:L
0.0 (None)     # A:N

Go SDK:

go
package main

import (
    "fmt"

    "github.com/scagogogo/cvss-skills/pkg/vector"
)

func main() {
    h, _ := vector.GetAvailability('H')
    l, _ := vector.GetAvailability('L')
    n, _ := vector.GetAvailability('N')
    fmt.Printf("A:H=%.2f  A:L=%.2f  A:N=%.2f\n", h.GetScore(), l.GetScore(), n.GetScore())
}

源码位置 ​

pkg/vector/availability.go — 定义 AvailabilityHigh (0.56)、AvailabilityLow (0.22)、AvailabilityNone (0),以及 MA 修改后变体。

相关 ​

基于 MIT 许可证发布。