




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
軟件代碼開源成分與安全檢測指南目 次前 言 II范圍 1規范性引用文件 1術語和定義 1概述 2檢測過程 3成分信息檢測 5漏洞信息檢測 7許可證信息檢測 10IPAGEPAGE13PAGEPAGE10軟件代碼開源成分與安全檢測指南范圍本標準適用于軟件開發者和管理者對軟件代碼中開源成分信息及其安全風險的檢測活動。本標準不涉及源代碼安全的傳統測試方案如靜態掃描、模糊測試、代碼審計;不涉及在開源代碼(成分)中挖掘新的安全漏洞;不涉及檢測標準的評價體系。規范性引用文件(包括所有的修改單適用于本文件。GB/T28452-2012信息安全技術-應用軟件系統通用安全技術要求GB/T30279-2013信息安全技術-安全漏洞等級劃分指南。術語和定義GB/T25069界定的以及下列術語和定義適用于本文件。Opensourcesoftware開源軟件是指那些源代碼公開,在符合許可證要求的前提下,可以被自由使用、復制、修改和再發布的一系列軟件的集合。Opensourcecomponents軟件代碼中引用了開源項目的源代碼、二進制文件或存在引用依賴關系的代碼成分。Opensourcelicense開源軟件的作者對用戶使用其開源軟件的法律許可。CloneKnowledgedatabase一種存儲特定領域數據的數據庫或數據表。概述檢測目的()(含軟硬件結合設備檢測場景。第三方檢測((。檢測工作應于項目驗收之前開展。由于第三方檢測涉及較多檢測人員檢測內容開展檢測首先需要制訂并遵循檢測條款(6、7、8章節。檢測條33339檢測方法檢測過程總體流程(回歸測試(對于暫時無法修復的風險問題,可采取其他方法進行風險規避或接受。開源成分與安全檢測流程1圖1開源檢測流程檢測準備簽署保密協議項目背景調研熟悉代碼通過與項目成員溝通和閱讀代碼,了解項目基礎結構、代碼規范、項目架構等。檢測條款制定6、7、8章節。檢測環境準備(內網環境檢測實施檢測入場信息調研工具檢測(又稱克隆檢測BlackDuck、FOSSID、棱鏡七彩開源安全檢測平臺等,宜選擇支持私有云部署或本地部署的檢測工具。人工核實檢測報告結果處置由項目成員對檢測出的問題組織召開評審會進行結果處置。對于可以修復的風險問題,成分信息檢測項目基本信息檢測檢測目的檢測內容項目基本信息檢測檢測輸出結果項目基本信息檢測輸出結果宜包括但不限于工程文件中所包含的文件類型格式(如.c/.java/.cpp/.dll/.txt/.php)及分布情況、文件的數量個數、文件的存儲容量、文件所使用的編程語言及分布情況、源代碼的行數統計等。檢測必要條件檢測工具宜具備文件系統掃描相關技術。檢測方法開源代碼成分檢測檢測目的通過開源代碼成分檢測,檢測識別軟件工程中的開源成分,為軟件代碼自主比率的測評檢測內容檢測輸出結果開源代碼成分檢測輸出結果宜包括但不限于:軟件工程中所有文件數量;軟件工程中被認定為開源成分的文件數量;開源成分占總文件數量的比例情況;與開源項目文本相似的文件信息。包括文件名稱,開源項目的文件名稱、兩文件彼此的相似度并高亮展示相似片段;與開源項目結構相似的文件信息。包括文件名稱,開源項目的文件名稱、兩文件彼此的相似度并高亮展示相似片段;與開源項目代碼片段相似的文件信息。包括文件名稱,開源項目的文件名稱、兩文件彼此的相似度并高亮展示相似片段。檢測必要條件檢測工具宜具備開源代碼知識庫并滿足以下要求:收錄主流國內外開源社區或網站;開源代碼知識庫宜經常保持更新,保證源代碼庫的時效性;宜包含目前主流編程語言。檢測方法檢測工具宜運用代碼相似度檢測技術,對如下情況具備檢測識別能力:對開源代碼修改函數名、變量名、頭文件等;對開源代碼,新增、刪除部分代碼片段;對開源代碼,擾亂了代碼片段或函數的文本順序;新增、刪除或者修改了大量代碼注釋;新增、刪除換行符、空格符等。代碼溯源信息檢測檢測目的檢測內容代碼溯源信息檢測宜對如下信息進行檢測:源代碼溯源信息:即在軟件工程的代碼文件中,有效檢測識別出項目中所包含的所有代碼格式為源代碼的開源項目的詳細信息;二進制組件溯源信息:即在軟件工程的代碼文件中,有效檢測識別出項目中所包含的所有代碼格式為二進制代碼的開源項目的詳細信息;引用依賴溯源信息:即在軟件工程的代碼文件中,有效檢測識別出項目中所引用依賴的開源項目的詳細信息。檢測輸出結果代碼溯源信息檢測宜包含如下檢測輸出結果:源代碼溯源信息:宜包括但不限于溯源項目名稱、創建時間、代碼托管地址、項目二進制組件溯源信息:宜包括但不限于二進制組件名稱、創建時間、組件描述、開源社區所屬國家、項目主要貢獻者及其國籍等;引用依賴溯源信息:宜包括但不限于項目中引用的開源項目的項目文件名稱、項目文件路徑、項目版本號、開源社區所屬國家、項目主要貢獻者及其國籍等。檢測必要條件檢測工具宜具備開源代碼知識庫并滿足以下要求:開源代碼知識庫數據:包含但不限于每個開源項目的項目名稱、創建時間、代碼托開源代碼知識庫宜具備開源二進制組件信息數據;其它開源代碼知識庫要求與【6.2.4】所述相同。檢測方法匹配檢測技術宜對如下情況具備檢測識別能力:可以文件為粒度進行匹配檢測;可以文件結構為粒度進行匹配檢測;可以代碼片段為粒度進行檢測;可以追溯代碼中引用依賴的開源項目。漏洞信息檢測源代碼漏洞檢測檢測目的源代碼漏洞檢測檢測目的如下:開源項目代碼是軟件代碼的一個重要組成部分,而開源項目代碼漏洞繁多,進行開源項目漏洞檢測是保障代碼安全的必需環節;通過對軟件工程中源代碼漏洞信息的檢測,與二進制組件漏洞檢測、引用依賴漏洞檢測互為補充,形成開源安全檢測的閉環。檢測內容源代碼漏洞信息檢測輸出結果源代碼漏洞檢測宜具備如下檢測輸出結果:宜包含軟件工程中存在漏洞的開源項目數量、名稱、代碼托管地址、項目描述、漏洞數量;宜包含但不限于匹配項目漏洞的危害等級、漏洞等級、發布時間、漏洞描述、參考鏈接、受影響產品、補丁參考鏈接、解決方案。檢測必要條件檢測工具宜具備開源項目漏洞知識庫并滿足以下要求:(CNVD/CNNVD/CVE/NVD)開源項目漏洞知識庫宜包含源代碼漏洞數據;開源項目漏洞知識庫宜經常更新,保證漏洞庫的時效性;宜包含目前主流開發語言的開源項目漏洞;宜包含但不限于項目級、版本級、文件級等多維度的漏洞數據;漏洞的分級分類和描述應符合國家標準。檢測方法根據漏洞數據字典匹配出開源項目/組件/源代碼漏洞檢測宜滿足如下要求:對漏洞數據進行分析整理,具有項目級、版本級、文件級、代碼級等多維度粒度的漏洞;支持在檢測出漏洞后,對漏洞提供驗證方案和解決方案。二進制組件漏洞檢測檢測目的二進制組件漏洞檢測檢測目的如下:開源項目二進制代碼是軟件代碼的一個重要組成部分,而二進制代碼漏洞繁多,進行二進制代碼漏洞檢測是保障企業代碼安全的必需環節;通過對軟件工程中二進制漏洞信息的檢測,與許可證風險檢測、源代碼漏洞檢測、引用依賴漏洞檢測互為補充,形成開源安全檢測的閉環。檢測內容二進制組件漏洞信息檢測輸出結果二進制組件漏洞檢測宜具備如下檢測輸出結果:宜包含軟件工程中存在漏洞的二進制組件數量、名稱、代碼托管地址、組件描述、漏洞數量;宜包含但不限于匹配組件漏洞的危害等級、漏洞等級、發布時間、漏洞描述、參考鏈接、受影響產品、補丁參考鏈接、解決方案。檢測必要條件檢測工具宜具備開源項目漏洞知識庫并滿足以下要求:(CNVD/CNNVD/CVE/NVD)開源項目漏洞知識庫宜包含二進制組件漏洞數據;開源項目漏洞知識庫宜經常更新,保證漏洞庫的時效性;宜包含目前主流開發語言的開源項目漏洞;漏洞的分級分類和描述應符合國家標準。檢測方法檢測工具宜滿足如下要求:對漏洞數據進行分析整理,歸納成完整漏洞信息;支持在檢測出漏洞后,對漏洞提供驗證方案和解決方案。引用依賴漏洞檢測檢測目的引用依賴漏洞檢測檢測目的如下:開源項目所引用依賴開源項目的代碼是軟件代碼的一個重要組成部分,而引用依賴開源項目的代碼漏洞繁多,進行引用依賴開源項目漏洞檢測是保障代碼安全的必需環節;通過對軟件工程中引用依賴開源項目漏洞信息的檢測,與源代碼漏洞檢測、二進制組件漏洞檢測互為補充,形成開源安全檢測的閉環。檢測內容引用依賴漏洞信息檢測輸出結果引用依賴漏洞檢測宜包含如下檢測輸出結果:宜包含軟件工程中存在漏洞的開源項目數量、名稱、代碼托管地址、項目描述、漏洞數量;宜包含但不限于匹配組件漏洞的危害等級、漏洞等級、發布時間、漏洞描述、參考鏈接、受影響產品、補丁參考鏈接、解決方案。檢測必要條件檢測工具宜具備開源項目漏洞知識庫并滿足以下要求:(CNVD/CNNVD/CVE/NVD)漏洞庫宜包含源代碼漏洞數據;開源項目漏洞知識庫宜經常自動更新,保證漏洞庫的時效性;宜包含目前主流開發語言的開源項目漏洞;宜包含但不限于項目級、版本級、文件級多級別的漏洞數據;漏洞的分級分類和描述應符合國家標準。檢測方法引用依賴漏洞檢測宜滿足如下要求:對漏洞數據進行分析整理,具有項目級、版本級等多維度粒度的漏洞;支持在檢測出漏洞后,對漏洞提供驗證方案和解決方案。許可證信息檢測開源許可證信息檢測檢測目的開源許可證信息檢測的目的如下:通過對開源許可證信息的檢測,為后續的許可證商用風險檢測提供基礎數據支撐;通過對開源許可證信息的檢測,為后續基于不同許可證信息對比分析的許可證兼容性檢測工作提供基礎數據;通過對開源許可證信息的檢測,使開發者對引入包含對應許可證的開源項目后的基本注意事項形成認識;通過對開源許可證信息的檢測,使開發者對相應許可證的義務要求形成認識;通過對開源許可證信息的檢測,使開發者對相應許可證的政策要求形成認識。檢測內容開源許可證信息檢測宜對如下信息進行檢測:源代碼許可證信息:即在軟件工程的代碼文件中,有效檢測出文件格式為源代碼的二進制許可證信息:即在軟件工程的代碼文件中,有效檢測出格式為二進制代碼的開源項目的開源許可證的信息;引用依賴許可證信息:即在軟件工程的代碼文件中,有效檢測出項目中所引用依賴的開源項目的開源許可證的信息。檢測輸出結果檢測必要條件檢測工具宜具備對應開源許可證知識庫,該知識庫宜滿足以下要求:宜包含目前主流許可證的許可證信息;宜包含但不限于許可證名稱、許可證類型、許可證所在文件路徑、條款、原文等信息;開源許可證庫宜經常更新,保證漏洞庫的時效性。檢測方法匹配檢測技術宜提取出項目中許可證名稱、許可證類型、許可證所在文件路徑、條款、原文等許可證相關信息。許可證兼容性檢測檢測目的許可證兼容性檢測的目的如下:部分許可證與其它部分許可證因其中的條款存在沖突而無法存在于同一個開源項目通過對軟件工程中開源許可證兼容性信息的檢測,與許可證商用風險檢測和開源項目漏洞檢測互為補充,形成開源安全檢測的閉環;部分許可證兼容性問題會導致許可證商用性問題,通過對軟件工程中開源許可證兼容性信息的檢測,為許可證商用風險檢測提供數據基礎。檢測內容許可證兼容性信息:許可證信息中關于一個許可證與其它許可證是否兼容相關的信息。檢測輸出結果許可證兼容性檢測輸出結果宜包含但不限于:開源項目中互相沖突的所有許可證的相應沖突條款/軟件工程中存在開源許可證兼容性問題的開源項目的項目數量、項目名稱、項目托管地址、許可證名稱。檢測必要條件檢測工具需具備對應開源許可證知識庫,該知識庫宜滿足以下要求:從廣泛的渠道挖掘開源許可證兼容性數據或自主進行許可證兼容性分析,于開源許其它開源許可證知識庫要求與【8.1.4】相同。檢測方法許可證商用風險檢測檢測目的許可證商用風險檢測的目的如下:部分許可證僅限于非商業項目用途或用于商業存在一定風險,為避免引入的部分開發階段即發現問題并解決,避免或減少不必要的損失;通過對軟件工程中開源許可證商用風險信息的檢測,與許可證兼容性檢測和開源項目漏洞
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《財務軟件應用》課件(共九個項目)
- 預防兒童腹瀉培訓課件
- 預防中暑安全課件
- 預備小學生課件
- 項目部稅務籌劃課件
- 項目性學習實驗說課課件
- 音樂課件與環境相關主題
- 鐵路工程培訓課件模板
- 健康飲食產業園項目人力資源管理方案(模板)
- 相關專業知識:健康教育的基本理論三
- 【公開課】發生在肺內的氣體交換課件-2024-2025學年人教版生物七年級下冊
- 小組互評活動方案
- 2025年四川省高考物理試卷真題(含答案)
- 《論語》導讀(復旦版)學習通超星期末考試答案章節答案2024年
- 糧油食材配送投標方案(大米食用油食材配送服務投標方案)(技術方案)
- 光伏發電工程建設標準工藝手冊(2023版)
- MAM6090空壓 機微電腦控制器說明書
- 2023北京市專職工會社會工作者招錄筆試歷年典型考題及考點剖析附答案帶詳解
- 中國地圖素材課件
- 護士注冊健康體檢表下載【可直接打印版本】
- 提花裝造工藝技術培訓課程
評論
0/150
提交評論