之前的文章《Web安全之SAST和DAST(靜態(tài)和動態(tài)應(yīng)用程序安全測試)詳解》講解了SAST和DAST,《Web安全之IAST(交互式應(yīng)用程序安全測試)詳解》講解了IAST,本文再講解一個安全測試技術(shù)SCA。
什么是SCA?
SCA(Software Composition Analysis),軟件成分分析,是一種用于測試軟件組件的質(zhì)量和可靠性的方法。通過對軟件組件進(jìn)行詳細(xì)的分析,找出其中的缺陷和問題,以便在軟件發(fā)布之前進(jìn)行修復(fù)。
當(dāng)下軟件開發(fā)中,需要依賴大量的三方庫、組件,也會使用大量的開源代碼片段。例如容器化會使用開源的基礎(chǔ)鏡像或者商業(yè)公司維護(hù)的免費鏡像,數(shù)據(jù)庫可能會使用開源的MySQL、MongoDB、PostgreSQL等,代碼中會使用大量的三方包等等。所以依賴的三方庫和組件的安全威脅越來越大,這些安全威脅也被越來越多的企業(yè)所重視。使用SCA技術(shù)對應(yīng)用程序進(jìn)行安全檢測,是實現(xiàn)安全管理的方法之一。
SCA原理
SCA是一種通用的分析方法,可以對任何語言程開發(fā)的應(yīng)用序進(jìn)行分析。SCA分析過程一般是先對目標(biāo)源代碼或二進(jìn)制文件進(jìn)行解壓,從解壓后的文件中提取特征并對特征進(jìn)行識別和分析,獲取各個部分之間的關(guān)系,從而獲得應(yīng)用程序的畫像(組件名稱、版本號、開發(fā)語言等),進(jìn)而關(guān)聯(lián)出存在的已知漏洞。
小結(jié)
如果開發(fā)的應(yīng)用程序中依賴了大量的三方庫和組件,使用SCA技術(shù)對應(yīng)用程序進(jìn)行安全檢測是最合適不過的。一般在軟件開發(fā)生命周期的早期階段做SCA,可以以較低成本發(fā)現(xiàn)和修復(fù)安全漏洞。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。