原創|行業資訊|編輯:李燕|2020-03-24 09:26:38.127|閱讀 1248 次
概述:軟件組成分析SCA何時能夠取代SAST和DAST?這個問題沒有看起來的這么簡單。為了節省你的時間,我建議做更多有意義的事情,比如運行靜態應用程序安全測試(Static Application Security Testing,SAST)和動態應用程序安全測試(Dynamic Application Security Testing,DAST),專注于強化代碼,而不是嘗試在應用程序中測試安全性。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Parasoft C++test幫助團隊寫出更好的代碼,實施更有效的測試,以及持續地監視以實現質量目標。 C++test 可以進行靜態分析,全面代碼審查,運行時錯誤檢測,并在單元測試和組件測試中集成覆蓋率分析。這些能夠在開發周期的開始階段,在開發桌面上自動完成。C++Test能夠在桌面的IDE環境或命令行的批處理下進行回歸測試,為監測和分析質量趨勢提供數據。此外, C++test 與 Parasoft 的 Concerto 結合在一起, 提供基于 Web 交互式的儀表板,具有細分能力的 Concerto 使團隊能夠通過 C++test 的結果以及其它關鍵進度指標來把握項目狀態和趨勢。
軟件組成分析SCA何時能夠取代SAST和DAST?這個問題沒有看起來的這么簡單。為了節省你的時間,我建議做更多有意義的事情,比如運行靜態應用程序安全測試(Static Application Security Testing,SAST)和動態應用程序安全測試(Dynamic Application Security Testing,DAST),專注于強化代碼,而不是嘗試在應用程序中測試安全性。
聽起來有點像標題黨?或許吧。但是每次出現新技術或者技術出現新發展的時候,都會有人認為技術迭代是必然的。因為軟件組成分析(Software Composition Analysis, SCA)能夠解決軟件安全問題,節省開發和測試時間,甚至可以消除世界上的饑餓感。好吧,我表現得越來越像在說個人脫口秀,其實我只是想夸張地表達新技術在部分人中眼里的作用。但因此說SCA最終就能取代SAST,本質上就像在說因為你查找了別人代碼中的bug,所以不再需要檢查自己代碼中的bug一樣。
從理論上講,軟件組成分析與軟件材料清單(software bill-of-materials,目前幾乎不存在的東西)緊密聯系,并持續跟蹤應用程序中使用的其他庫和組件。目前,這方面的工具大多只是掃描應用程序中的開源組件,而不一定會和材料清單一起使用。(注:部分工具還可以執行其他功能,例如從OOS項目中查找剪切片段,或者識別管理OOS許可證問題。雖然這兩者既有趣又重要,但是仍然不能完全替代SAST)檢查應用程序中的組件是否存在已知bug是SCA的一項主要功能。其重要的地方在于你可以因此避免0DAY漏洞,也可以解決因為某些組件找不到源而無法使用SAST技術分析的問題。
首先我必須強調,SCA是工具包中用于保護軟件安全系統的重要部分。開放Web應用安全項目(the Open Web Application Security Project,OWASP)——一個主流的實用的安全組織,甚至將這一概念加入到當今流行的OWASP十大最重要安全隱患的名單之中。這個項目就是A9-使用有已知漏洞的組件。當然如果你沒有接觸過OWASP,我仍然建議你使用SCA。如果你還沒有針對CVE和NVD數據庫檢查應用程序是否存在已知漏洞,同樣建議你使用SCA。這種技術可以跟蹤實際發生的攻擊以及可用的補救程序和其他補救措施。
OWASP甚至出了一個叫OWASP Dependency Check的工具,可以為你完成這項工作。跟OWASP提供的所有工具一樣,這個工具也是免費的。Dependency-Check是一款分析軟件組成的應用程序,可以識別項目依賴并檢查是否存在已知的、已公布的漏洞。
不可否認,直到不久之前,軟件供應鏈一直是人們忽略的主題。而現在,一些關鍵人物(其中部分來自軟件和供應鏈保障論壇(Software and Supply Chain Assurance Forum,SSCA))呼吁大家關注應用程序安全領域的這一弱點,希望大家不僅專注于代碼,也要關注供應鏈。實際上,由美國國防部(DoD)、國土安全部(DHS)、總務管理局(GSA)和美國國家標準與技術研究院(NIST)主辦的SSCA論壇以前稱為軟件保障論壇(SwA),為了提高對供應鏈的關注,他們更改了論壇名稱。不過他們的目的是提高大家對供應鏈的關注度,而并不是將對自己代碼的關注轉移到他人的代碼上。
這個軟件和供應鏈保障論壇(SSCA)為政府、行業以及來自世界各地的學者提供了平臺。人們可以在論壇上分享他們相關的知識和經驗,內容包括軟件和工具鏈風險、高效實踐和減災戰略、工具和技術以及任何關于別人不知道的相關人員、流程或技術方面的主題。
實際上,SCA是一項測試實踐——確保能夠根據表單(例如已知的像NVD這樣的漏洞)檢查你的應用程序,并確保修改通過。與之相對,SAST主要關注的不是測試功能,而是工程功能。SAST最基本的價值在于進行事前測試之前發現缺陷或者漏洞。而它最大的價值在于從一開始引導你提高代碼的質量,構建沒有泄露問題的代碼。這是目前在應用程序安全領域提前檢測出代碼質量缺陷的唯一方法。如果想做得更完美,你仍然需要SCA,因為你依舊會遇到關于應用程序中所有組件以及與其他程序交互相關或者操作系統本身的問題。即使你SCA實踐得不錯,你依然需要SAST。因為如果你只應用了SCA,你可能只解決了別人代碼中的問題,但是沒有對自己的代碼做任何事情。SCA與SAST的目的是相輔相成,不能互相替的。
總而言之,SCA技術非常棒,我們確實需要它。我很高興它受到越來越多的關注。但是說它將代替DAST或者SAST,就好比說你有個錘子,就不需要螺絲或者起子了一樣。
Parasoft C / C ++ test 10.4.3版本發布!更強的單元測試框架
功能安全標準支持者Parasoft助您實現合規性,消除開發安全漏洞
靜態分析和編碼標準合規性助力自動駕駛汽車ISO 26262認證成功
Parasoft加入汽車工業軟件可靠性協會,共同開發集成MISRA / AUTOSAR編碼準則
想要了解Parasoft、Parasoft SOAtest、Parasoft Virtualize更多信息或資源的朋友,請
與聯系,以了解如何在組織中部署Parasoft的自動化軟件測試解決方案。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn