5W2H分解漏洞掃描 - WHAT
WHAT什么是漏洞掃描?
首先什么是漏洞?
國內外各種規范和標準中關于漏洞(也稱脆弱性,英文對應Vulnerability)的定義很多,摘錄如下:互聯網工程任務組RFC4949[1]: 系統設計、部署、運營和管理中,可被利用于違反系統安全策略的缺陷或弱點。
中國國家標準 信息安全技術-網絡安全漏洞標識與描述規范 GB/T 28458-2020[2]:網絡安全漏洞是網絡產品和服務在需求分析、設計、實現、配置、測試、運行、維護等過程中,無意或有意產生的、有可能被利用的缺陷或薄弱點。
中國國家標準 信息安全技術-術語 GB/T 25069-2010[3]:脆弱性(Vulnerability)是資產中能被威脅所利用的弱點。
國家標準與技術研究所NIST[4]:信息系統、系統安全規程、內部控制或實施中可能被威脅源利用或觸發的弱點。
國際標準化組織-信息安全管理體系 ISO27000[5]:資產或控制中可能被一個或多個威脅利用的弱點。
國際標準化組織-漏洞披露 ISO29147[6]:違反默示或明示安全策略的產品或服務的功能性行為。
維基百科[7]:計算機安全中,漏洞是威脅可以利用的弱點,例如攻擊者可利用漏洞在計算機系統內跨越權限邊界。
百度百科[8]:漏洞是在硬件、軟件、協議的具體實現或系統安全策略上存在的缺陷,可以使攻擊者能夠在未授權的情況下訪問或破壞系統。
從各種定義中可以得到漏洞的一系列共性描述:系統的缺陷/弱點、可能被利用于違反安全策略、可能導致系統的安全性被破壞。漏洞會涉及管理、物理、技術多種類型,我們說的漏洞一般默認是指技術型的漏洞。
如何描述具體漏洞?
針對已公開披露的漏洞
通常以CVE編號進行描述。為了達成交流共識,更好的識別、定義和修復已知漏洞,由MITRE公司發起的公共漏洞枚舉CVE項目[9],可以為每個典型的軟硬件產品/公共組件的已知漏洞分配一個唯一的CVE編號,這一做法得到全球主流IT廠商/組織的支持(截止目前全球范圍內已有近200個CVE編號授權機構[10]),CVE已成為產業界的國際事實標準。
需補充的是,國家漏洞庫NVD[11]全面兼容了CVE并提供了若干增強信息:如漏洞的分類、影響等級、受影響的供應商產品版本列表等。CVE存在的價值在于支撐公共安全預警和協同修復,它一般不含漏洞利用信息。通俗一點的描述就是:通知!XX供應商的XX產品的XX版本上有XX已知漏洞,影響評分XX分,如果您使用了受影響的產品版本,請盡快修復!修復版本為XX!也正是基于這種正向的預警的屬性,CVE漏洞基本都已有較成熟的修復或緩解方案,以幫助受影響的用戶減少不必要的傷害。
此外中國國家信息安全漏洞庫CNNVD[12]也兼容CVE,但它使用的是CNNVD編號,精確到年月。例如:CNNVD編號CNNVD-202110-1568映射到CVE編號CVE-2021-22965,它們描述的是同一個漏洞 。
已公開披露的漏洞只是冰山一角,其主要涉及面向個人或企業的公共的商用軟硬件產品或開源軟件/組件。由于軟硬件的使用場景不同,有些已知漏洞只會受限披露甚至不會被披露。而由于軟硬件系統的復雜性與多樣性,未知的漏洞則會更多。業界安全研究人員、軟件廠商的測試部門每天都在持續不斷的發現著新漏洞,正如體檢中心每天都會發現新病人。
針對未公開披露的漏洞
通常會采用類型描述,而不會分配具體的CVE編號。MITRE公司的安全研究人員分析了大量已公開披露的CVE漏洞,抽象化并提取了公共缺陷枚舉CWE[13]用來對此類型的漏洞進行描述。當前CWE項目中的缺陷已有超過900個小類,其中與軟件開發相關的有400多個小類,40個大類。缺陷是漏洞的根因,因此每一個CVE編號都可以映射到一個或多個CWE編號。其他典型的可用作類型描述的還有針對Web應用系統的OWASP Top 10[14]。
比較典型的是基于具體業務的應用程序的漏洞似乎永遠不會被主動公開披露,只會悄悄被修復。這是為了避免企業商業形象受損,另外也因為業務應用一般不是標準產品,具有獨特性,不涉及協同修復的屬性(即便涉及,也在小范圍內)。除非漏洞已被利用,造成了公共損失,不得不進行披露,否則知道這種負面信息的人越少越好是共識。
最后回到什么是漏洞掃描?
大部分業界規范或標準中用到的相關概念是漏洞評估,并直接將漏洞掃描作為一種選擇和要求。
以國際標準ISO/IEC 27005[15]信息安全風險管理為例,在其附錄D2中給出相關描述:評估技術型漏洞的方法有哪些?給出的第一個建議就是“使用自動化漏洞掃描工具”,另外三條建議分別是: 安全測試評估、滲透測試、代碼審計。
在中國國標GB/T 28449的”附錄E等保測評方式及工作任務“的“E.4測試”部分中則明確指出:需要對服務器、數據庫管理系統、網絡設備、安全設備、應用系統等進行漏洞掃描。此外還需要對應用系統完整性、保密性進行協議分析;對系統進行內部和外部的滲透攻擊等等。
而在金融行業支付卡數據安全標準PCI DSS[16]針對漏洞掃描給出了兩個較為明確可操作的定義,如下面2圖。
對應用程序漏洞的安全評估
對系統從外部及內部的漏洞掃描
因此筆者認為漏洞掃描指的就是通過工具去掃描遠端或本地運行的系統的行為,以期達到快速識別系統中已知或未知漏洞的目的。它的關鍵是對漏洞的識別進行工具化,降低識別漏洞的人工參與和技術門檻。漏洞掃描是漏洞評估的一種方法。漏洞掃描通常是滲透測試過程中的一個前置步驟。
與漏洞掃描相關的工具通常有哪些呢?
在知名信息技術咨詢公司Gartner的定義中,按掃描結果類別的不同可以大致分為AST(Application Security Testing)應用安全測試類工具、SCA(Software Composition Analysis)軟件成分分析類工具、VA(Vulnerability Assessment)漏洞評估工具, AST工具用于測試發現應用程序未知的安全缺陷,SCA工具用于發現靜態軟件中引用的開源組件的已知漏洞,VA工具則通常用于發現動態運行的系統中是否存在已知的漏洞。
按掃描對象狀態的不同又可以劃分為靜態工具和動態工具,靜態工具掃描源代碼或二進制包,動態工具掃描運行的系統。靜態工具包括靜態Static-AST工具(SAST), 源碼SCA工具, 二進制SCA工具。 動態工具包括 交互式Interactive-AST工具(IAST)、動態Dynamic-AST工具(DAST)、模糊測試(Fuzzing)工具、漏洞評估(Vulnerability Assessment)工具。 在這其中,受到資源可獲得性的限制,在系統上線以后經常會被用到的漏洞掃描工具主要是: DAST工具和VA工具, 而這也正是PCI DSS實踐指南中列出的。
WHY為什么做漏洞掃描?
漏洞掃描能發現漏洞,掃描的結果能用來支撐漏洞評估、漏洞修補、風險評估相關工作,以降低系統安全性的風險。還有其他目的嗎? 且聽下回分解。
審核編輯 黃昊宇
-
信息安全
+關注
關注
5文章
655瀏覽量
38895 -
IT
+關注
關注
2文章
862瀏覽量
63501 -
漏洞
+關注
關注
0文章
204瀏覽量
15366
發布評論請先 登錄
相關推薦
評論