資安檢測報告怎麼看?CVSS 分數與修補優先序
約 7 分鐘
一份掃描報告動輒幾十頁,翻開是滿滿的紅色高風險標記。IT 窗口的第一個問題通常是:這些要全部修嗎?老闆問的則是:修完要花多少錢、要多久?兩個問題都合理,答案藏在報告的細節裡。這篇說明報告的結構、CVSS 分數的意義與界線,以及怎麼把一長串發現排成一份能執行的修補順序。
1. 報告裡通常有哪五個區塊
各家版型不同,內容大致落在五個區塊:管理層摘要、風險統計、逐項發現、修補建議、附錄。老闆看摘要與統計,IT 窗口看逐項發現與修補建議。
建議的閱讀順序反過來。先翻到最後面的附錄,確認這次掃了哪些資產、用什麼工具、哪些被排除在外。知道範圍之後再回頭看前面的數字,才知道那些百分比代表什麼。一份只掃了三個網址的報告,就算全綠也說明不了整個環境的狀況。
| 區塊 | 裡面有什麼 | 怎麼用 |
|---|---|---|
| 摘要 | 一頁講清楚掃了什麼、找到幾項、整體風險落在什麼位置 | 給決策者判斷要投多少資源 |
| 風險統計 | 重大、高、中、低各幾項,通常搭配圖表 | 看整體分布、跟上一次比較,不看細節 |
| 逐項發現 | 弱點名稱、風險等級、受影響的 URL 或 IP、驗證證據、CVE 編號或 OWASP 分類 | 修補工作的主體,每一條都要對得到一個負責人 |
| 修補建議 | 具體到升級到哪個版本、關閉哪個設定 | 只寫「請加強驗證」的條目,可以要求廠商補充 |
| 附錄 | 掃描日期區間、來源 IP、工具與規則庫版本、排除項目 | 複掃比對與日後稽核佐證的基礎 |
2. CVSS 是什麼?0 到 10 分怎麼分級
CVSS(Common Vulnerability Scoring System)是一套公開的弱點嚴重度評分標準。它把攻擊路徑、需不需要權限、要不要使用者互動、對機密性完整性可用性的衝擊,換算成 0 到 10 的分數。用途是讓來自不同工具、不同廠商的弱點有共同的比較尺度。
報告上標示的多半是基礎分數(Base Score),描述的是弱點本身的技術特性,還沒有計入你的環境。分數看的是能不能從網路端直接發動、難不難、需不需要權限、要不要使用者配合操作,再加上對資料的影響程度。
| 分數 | 等級 | 大致的意思 |
|---|---|---|
| 0 | 無 | 沒有實質影響 |
| 0.1 到 3.9 | 低 | 利用條件嚴苛,或影響很有限 |
| 4.0 到 6.9 | 中 | 有實際影響,但通常要特定條件配合 |
| 7.0 到 8.9 | 高 | 容易被利用,或影響範圍大 |
| 9.0 以上 | 重大 | 多半可從遠端直接利用,衝擊嚴重 |
實際級距以報告採用的 CVSS 版本為準,常見的是 v3.1 與 v4.0,看報告時先確認版本號。同一個 CVE 在不同工具可能顯示略有差異的分數,通常來自版本不同或評分向量的取值不同。可以請廠商附上完整的評分向量字串,方便自己核對。
基礎分數有一個很大的限制:它不知道你有沒有 WAF、那台主機在不在內網、上面的資料重不重要。這三件事只有你補得上去,也正是下一節排序的依據。
3. 決定修補順序真正要看的三件事
把報告依分數由高到低排一遍,是最省事的做法,也常常排錯。一個 9.8 分但只存在於內網測試機的弱點,急迫性可能低於一個 5.3 分的設定疏失,只要那個疏失讓外網任何人都能列出你的備份檔。
第一件事是可利用性。對外網開放、而且已經有公開利用程式流傳的項目排最前面。需要先取得內部帳號,或需要實體接觸機器才能觸發的項目,可以往後排。
第二件事是影響範圍與資產重要性。承載客戶個資、金流或會員登入的系統,就算只是中風險也值得提前處理。確實隔離的測試環境,高風險反而可以排後面。這一層判斷廠商做不了,因為只有你知道哪台機器上放著什麼。
第三件事是修補成本與風險。改設定、加安全標頭這類低成本項目直接清掉,不必進排程會議。要升級大版本框架的,先排測試與停機時段,這期間可以用限制來源 IP、加 WAF 規則等方式暫時緩解。緩解不等於修補,但能把急迫性壓下來。
排完順序之後,替每一條標上預計完成日與負責人。沒有時程的清單,三個月後還會是同一份清單,下次複掃只是再證明一次。
4. 誤報怎麼看,為什麼需要人工驗證
自動化掃描靠特徵比對與版本判斷,會出現兩種偏差。誤報是把不存在的問題報出來,漏報是存在的問題沒抓到。這不是廠商偷懶,是工具本身的極限,人工驗證的價值就在補這一段。
最常見的誤報來源是版本判讀。有些系統會把修補補進舊的版本號裡,實際上已經安全,但版本號沒變,掃描器仍然把它算成有洞。另外兩種常見情形,是把客製的錯誤頁誤讀成問題,以及明明已被防火牆擋下卻仍列為存在。
驗證的方式是看證據。每一條發現都應該附上請求與回應片段、截圖,或可重現的步驟。只有一行工具訊息的項目,你可以要求廠商說明。標記為誤報的條目要留下判定理由與判定日期,下次複掃才不會為同一條重複爭論。
還有一件事要先講清楚:弱點掃描比對的是已知弱點資料庫。改個網址參數就能看到別人的訂單,這種商業邏輯問題不在資料庫裡,需要滲透測試或人工測試才容易被發現。報告乾淨,不代表沒有這一類問題。
5. OWASP Top 10 的分類在報告裡怎麼讀
Web 弱點掃描報告常把每一條發現對應到 OWASP Top 10 的分類,例如存取控制失效、加密機制失效、注入、安全設定缺陷、使用有漏洞或過時的元件。分類代號與名稱會隨版本調整,看報告時先確認採用哪一年的版本。
分類的價值不在單獨一條,而在分布。同一類重複出現,指向的是流程上的系統性缺口。多個頁面都缺存取控制,代表授權檢查沒有集中在同一層處理,逐頁修補會漏掉下一個新做的頁面。過時元件類的發現一再出現,要回頭檢查有沒有相依套件清單與更新流程,否則下一季會再長出一批。
安全設定缺陷是相反的例子。這一類修補成本通常低,適合優先清掉,讓報告剩下的條目更容易聚焦在真正要花時間的地方。
6. 修補之後:複掃驗證與紀錄留存
修完不等於結案,要有複掃紀錄證明弱點確實消失。複掃時的範圍、工具與設定要與初掃一致,比對結果才有意義。換一套工具重掃,出來的是另一份報告,不是驗證。
複掃報告要能對回初掃的每一條編號,並標示四種狀態的其中一種:已修補、已緩解、風險接受、誤報。標為風險接受的項目,要寫下理由、核准人與下次複審日期,那是稽核員一定會追問的部分。
修補紀錄至少要留發現日期、修補內容、執行人、複掃日期與結果。這些東西在客戶資安問卷、ISO 27001 稽核、政府或大型企業的投標文件裡都會被要求,臨時要生很難生得出來。掃描頻率可以跟改版節奏綁在一起,例如每季一次,再加上重大改版或新增對外服務之後補掃一次。
7. 發包前該問廠商的幾個問題
報告品質的差距,多半在報價階段就決定了。下面幾個問題先問清楚,能避免拿到一份兩百頁、沒有人看得懂的工具原始輸出。對方回答含糊的地方,寫進合約或報價單裡。
發包前先問清楚這六件事
- 範圍怎麼算?以 URL、網域、IP 還是主機台數計價。子網域、對外介接的網址、測試環境算不算在內。
- 有沒有人工驗證?誤報會不會被標記並附上理由,還是直接把工具輸出交出來。
- 含不含複掃?幾次、期限多久、超過期限如何計費。
- 報告能不能給客戶或稽核單位看?有沒有可對外的摘要版本,內部 IP 與路徑這類細節怎麼處理。
- 這次買的是弱點掃描還是滲透測試?兩種服務的深度、時程與費用差距大,先確認清楚。
- 掃描會不會影響營運?時段怎麼安排,出狀況時的中止機制與聯絡窗口是誰。
報告的價值在後面的行動:挑出確實能被利用的項目,排進維運行程,修完留下複掃紀錄。分數是排序的參考之一,最後的判斷仍要靠你對自己資產的了解。第一次讀報告時,先把外網可觸及、修補成本又低的項目清掉,剩下的再排時程慢慢談。
常見問題
- CVSS 分數 7 分以上是不是一定要馬上修?
- 高分項目值得優先評估,但排序還要看暴露面。一個內網限定、需要先登入才能觸發的 7.5 分項目,急迫性可能低於對外開放的 5.3 分資訊洩漏。先確認能不能從外網打到、影響哪些資料,再決定時程。
- 弱點掃描報告可以直接交給客戶或稽核單位嗎?
- 可以,不少客戶資安問卷接受一年內的弱點掃描報告加複掃紀錄。對外版本通常會遮蔽內部 IP、路徑等敏感細節,發包時先確認廠商有沒有提供摘要版。若對方指名要滲透測試報告,弱點掃描報告無法替代。
- 報告上標「誤報」,我怎麼知道廠商不是為了讓數字好看隨便標的?
- 要求每一條誤報附上判定理由與佐證,例如該套件實際修補狀態的查詢結果、以及當下的連線紀錄。寫得出理由就能複核,也可以自行抽驗幾條,或請第二家做交叉確認。