資安風險長期以「高、中、低」定性描述,難以說服 C-Level 做投資決策。FAIR 框架以貨幣量化風險,將資安語言轉換為財務語言,讓決策有數字支撐。
FAIR 的核心結構:兩大維度拆解風險
FAIR 將風險定義為:風險 = 損失事件頻率(LEF)× 損失幅度(LM)。LEF 進一步拆解為「威脅事件頻率(TEF)」與「弱點(Vulnerability)」的組合;LM 則涵蓋六類損失形式,包含生產力損失、回應成本、法律責任、聲譽損害等。每個節點皆以機率分佈(如 PERT 分佈)表示不確定性,最終透過蒙地卡羅模擬(Monte Carlo Simulation)產出年化損失期望值(ALE),以具體金額呈現風險暴露程度,取代模糊的定性評級。
實戰應用:從分析到決策的完整流程
實施 FAIR 分析的標準流程分為四步:第一步,定義分析範圍,明確資產、威脅行為者與威脅情境(如:外部攻擊者針對客戶資料庫發動勒索攻擊)。第二步,收集數據,引用業界威脅情報(如 Verizon DBIR)與組織內部歷史事件,估算 TEF 與弱點機率的最小值、最可能值與最大值。第三步,執行蒙地卡羅模擬(建議 10,000 次迭代),產出年化損失分佈圖。第四步,比較控制措施 ROI:投入 50 萬控制措施若能將 ALE 從 300 萬降至 80 萬,淨效益達 170 萬,決策一目瞭然。
# 簡易 FAIR 蒙地卡羅模擬(Python)
import numpy as np
samples = 10_000
tef = np.random.pert(1, 4, 12, samples) # 年均威脅事件次數
vuln = np.random.pert(0.1, 0.3, 0.6, samples) # 弱點機率
lm = np.random.pert(50_000, 200_000, 800_000, samples) # 單次損失(元)
ale = tef * vuln * lm # 年化損失期望值
print(f"ALE 第 90 百分位:{np.percentile(ale, 90):,.0f} 元")
💡 重點整理
- 風險 = LEF × LM:頻率與幅度缺一不可,單看其中一項會誤判優先序。
- PERT 分佈取代點估計:以最小/最可能/最大值捕捉不確定性,比單一數字更誠實。
- 蒙地卡羅產出分佈而非單值:決策者可依風險偏好選擇 50 或 90 百分位作為決策基準。
- 控制措施需計算 ROI:ALE 降幅扣除控制成本,才是真正的資安投資價值。
FAIR 不是要取代資安判斷力,而是為判斷力加上財務刻度。當資安風險能以貨幣溝通,它才真正進入企業治理的核心對話。
留言
張貼留言