Google日前發(fā)布了最新的開源安全工具Scorecard v2版,以實現(xiàn)讓開源安全檢查變得更容易。此版本包括了新的安全檢查、擴(kuò)大被評分的項目數(shù)量等功能,這使得數(shù)據(jù)更易于被訪問和分析。
對于開發(fā)人員而言,Scordcard有助于減少在維護(hù)項目供應(yīng)鏈時不斷評估持續(xù)變化的數(shù)據(jù)包所需的工作量。用戶可以自動訪問風(fēng)險以做出有關(guān)接受程序的明智決定,尋找替代解決方案或與維護(hù)人員合作進(jìn)行改進(jìn)。
新功能如下:
識別風(fēng)險:自去年以來,記分卡的覆蓋范圍有所擴(kuò)大。該項目在Google的Know、Prevent、Fix框架之后添加了幾項新檢查。
發(fā)現(xiàn)惡意攻擊者:具有惡意意圖或被盜帳戶的攻擊者可能會在代碼中引入潛在的后門。代碼審查有助于減輕此類攻擊。使用新的分支保護(hù)檢查,開發(fā)人員可以在提交代碼之前驗證該項目是否強(qiáng)制執(zhí)行其他開發(fā)人員的代碼審查。目前,由于GitHub API限制,此檢查只能由存儲庫管理員運(yùn)行。對于第三方存儲庫,請改用信息較少的代碼審查檢查。
易受攻擊的代碼:盡管開發(fā)人員和同行評審已經(jīng)做了最大努力,惡意代碼仍然可以進(jìn)入代碼庫且不被發(fā)現(xiàn),這也是啟用持續(xù)模糊測試和靜態(tài)代碼測試在開發(fā)生命周期的早期捕獲錯誤的重要原因。啟用上述兩項測試后,就可以檢查攻擊者是否使用了模糊測試和SAST工具持續(xù)集成、部署了(CI/CD)管道。
開發(fā)系統(tǒng)入侵:GitHub項目使用的常見CI/CD解決方案是GitHub Actions。這一方案的缺點在于GitHub Actions可能會處理不受信任的用戶輸入,即攻擊者可以制作惡意pull request請求以獲得對特權(quán)GitHub令牌的訪問權(quán)限,并借此將惡意代碼推送到存儲庫而無需審查。為了降低這種風(fēng)險,記分卡的令牌權(quán)限預(yù)防檢查現(xiàn)在通過將GitHub令牌設(shè)置為默認(rèn)只讀來驗證GitHub工作流程是否遵循最小權(quán)限原則。
不良依賴:顯而易見,程序的安全性取決于其最弱的依賴項。但是了解依賴項的第一步就是聲明它們,并且讓用戶的依賴項也聲明它們。有了這些來源信息,用戶就可以評估并降低程序的風(fēng)險。