資安檢測報告怎麼看?CVSS 分數與修補優先序
一份掃描報告動輒幾十頁,翻開是滿滿的紅色高風險標記,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. 誤報怎麼看,為什麼需要人工驗證
自動化掃描靠特徵比對與版本判斷,會出現兩種偏差:誤報(把不存在的問題報出來)與漏報(存在的問題沒抓到)。最常見的誤報來源是版本判讀,例如 Linux 發行版已經用回溯修補(backport)補好套件、版本號卻沒變,掃描器仍會把它算成有洞。人工驗證的工作,就是逐條確認哪些成立、哪些標記為誤報並寫下判定理由。
自我檢查
- 檢查每一條發現有沒有附驗證證據:請求與回應片段、截圖、可重現的步驟。只有一行工具訊息的項目,可以要求說明。
- 常見誤報類型:backport 造成的版本誤判、對客製化錯誤頁的錯誤解讀、已被 CDN 或 WAF 擋下卻仍列為存在。
- 誤報標記要留下理由與判定日期,下次複掃才不會重複爭論同一條。
- 弱點掃描比對的是已知弱點資料庫。改個參數就能看到別人訂單這類商業邏輯問題,需要滲透測試或人工測試才容易被發現。
5. OWASP Top 10 的分類在報告裡怎麼讀
Web 弱點掃描報告常把每一條發現對應到 OWASP Top 10 的分類,例如存取控制失效、加密機制失效、注入、安全設定缺陷、使用有漏洞或過時的元件。分類代號與名稱會隨版本調整,看報告時先確認採用哪一年的版本。分類的價值在於看分布:同一類重複出現,指向的是流程上的系統性缺口。
自我檢查
- 多個頁面都缺存取控制,代表授權檢查沒有集中在同一層處理,逐頁修補會漏掉下一個新頁面。
- 安全設定缺陷這一類的項目,修補成本通常低,適合優先清掉,讓報告剩下的條目更容易聚焦。
- 過時元件類的發現,要回頭檢查有沒有相依套件清單與更新流程,否則下一季會再長出一批。
- OWASP Top 10 是風險分類框架,不能當成完整檢查表。報告沒列到的類別,代表這次掃描沒有發現,不代表該類別安全。
6. 修補之後:複掃驗證與紀錄留存
修完不等於結案,要有複掃紀錄證明弱點確實消失。複掃時的範圍、工具與設定要與初掃一致,比對結果才有意義。這些紀錄在客戶資安問卷、ISO 27001 稽核、政府或大型企業投標文件裡都會被要求,臨時要生很難生得出來。
自我檢查
- 複掃報告要能對回初掃的每一條編號,標示已修補、已緩解、風險接受、誤報四種狀態。
- 標為風險接受的項目,寫下理由、核准人與下次複審日期。這是稽核員會追問的部分。
- 修補紀錄至少保留:發現日期、修補內容、執行人、複掃日期與結果。
- 掃描頻率可以跟改版節奏綁在一起,例如每季一次,加上重大改版或新增對外服務之後補掃一次。
7. 發包前該問廠商的幾個問題
報告品質的差距,多半在報價階段就決定了。以下問題先問清楚,能避免拿到一份兩百頁、沒有人看得懂的工具原始輸出。回答含糊的地方,寫進合約或報價單裡。
自我檢查
- 範圍怎麼算?以 URL、網域、IP 還是主機台數計價?子網域、API 端點、測試環境算不算在內?
- 有沒有人工驗證?誤報會不會被標記並附理由,還是直接把工具輸出交出來?
- 含不含複掃?幾次、期限多久、超過期限如何計費?
- 報告能不能給客戶或稽核單位看?有沒有可對外的摘要版本,內部 IP 與路徑這類細節怎麼處理?
- 這次買的是弱點掃描還是滲透測試?兩者的深度、時程與費用差距大,先確認清楚。
- 掃描會不會影響營運?時段怎麼安排,出狀況時的中止機制與聯絡窗口是誰。
報告的價值在後面的行動:挑出確實能被利用的項目,排進維運行程,修完留下複掃紀錄。分數是排序的參考之一,最後的判斷仍要靠你對自己資產的了解。第一次讀報告時,先把外網可觸及、修補成本又低的項目清掉,剩下的再排時程慢慢談。
常見問題
- CVSS 分數 7 分以上是不是一定要馬上修?
- 高分項目值得優先評估,但排序還要看暴露面。一個內網限定、需要先登入才能觸發的 7.5 分項目,急迫性可能低於對外開放的 5.3 分資訊洩漏。先確認能不能從外網打到、影響哪些資料,再決定時程。
- 弱點掃描報告可以直接交給客戶或稽核單位嗎?
- 可以,不少客戶資安問卷接受一年內的弱點掃描報告加複掃紀錄。對外版本通常會遮蔽內部 IP、路徑等敏感細節,發包時先確認廠商有沒有提供摘要版。若對方指名要滲透測試報告,弱點掃描報告無法替代。
- 報告上標「誤報」,我怎麼知道廠商不是為了讓數字好看隨便標的?
- 要求每一條誤報附上判定理由與佐證,例如套件 backport 的查詢結果、實際的請求與回應內容。寫得出理由就能複核,也可以自行抽驗幾條,或請第二家做交叉確認。