開(kāi)源代碼帶來(lái)的10大安全和運(yùn)營(yíng)風(fēng)險(xiǎn)
Endor Labs 引入了OWASP風(fēng)格的清單,列出了使用開(kāi)源軟件 (OSS) 中固有的最重要或影響最大的風(fēng)險(xiǎn)。
OSS 的使用實(shí)際上是免費(fèi)的,而且隨時(shí)可用——它滿(mǎn)足了軟件開(kāi)發(fā)中對(duì)速度和低成本的商業(yè)需求。超過(guò) 80% 的現(xiàn)代應(yīng)用程序代碼來(lái)自 OSS 的情況并不少見(jiàn),因此它會(huì)一直存在(至少在某些新技術(shù)可以提供更快但仍然便宜的軟件開(kāi)發(fā)之前)。
這里的問(wèn)題是我們對(duì)我們使用的開(kāi)源的來(lái)源知之甚少。它沒(méi)有保證或 SLA;我們通常不知道這個(gè)開(kāi)發(fā)工具的開(kāi)發(fā)者;它可以在我們不知情的情況下引入重大安全風(fēng)險(xiǎn)(想想Log4J)。
Endor Labs 是一家總部位于加利福尼亞州帕洛阿爾托的初創(chuàng)公司,由 Dimitri Stiliadis(首席技術(shù)官)和 Varun Badhwar(首席執(zhí)行官)于 2021 年創(chuàng)立,是一家專(zhuān)注于在商業(yè)應(yīng)用程序開(kāi)發(fā)中越來(lái)越多地使用 OSS 所包含的復(fù)雜性和威脅的公司。
其 Station 9 研究團(tuán)隊(duì)現(xiàn)已開(kāi)發(fā)并發(fā)布了一份關(guān)于十大開(kāi)源軟件風(fēng)險(xiǎn)的報(bào)告。希望是為 OSS 效仿OWASP Top Ten 為 Web 應(yīng)用程序安全提供的內(nèi)容。它按嚴(yán)重程度列出了十個(gè)最重要的風(fēng)險(xiǎn)(安全和/或操作),提供了描述、示例、補(bǔ)救措施和進(jìn)一步的參考來(lái)源。與 OWASP 列表一樣,它將隨著個(gè)別風(fēng)險(xiǎn)的變化或嚴(yán)重程度被新風(fēng)險(xiǎn)取代而得到維護(hù)。
不出所料,當(dāng)前排名第一的風(fēng)險(xiǎn)是“已知漏洞”。Endor 描述指出,“組件版本可能包含易受攻擊的代碼,由其開(kāi)發(fā)人員意外引入。漏洞詳細(xì)信息已公開(kāi),例如通過(guò) CVE。漏洞利用和補(bǔ)丁可能可用也可能不可用?!?nbsp;這里值得注意的是 Rapid7 的研究指出,56% 的 CVE 漏洞在公開(kāi)披露后的 7 天內(nèi)被利用。
其余九種風(fēng)險(xiǎn)是:
- 合法包的妥協(xié),例如,攻擊者可能會(huì)注入惡意代碼以利用供應(yīng)鏈攻擊該代碼的用戶(hù)
- 名稱(chēng)混淆攻擊,類(lèi)似于基于 Web 的攻擊中的拼寫(xiě)錯(cuò)誤搶注
- 未維護(hù)的軟件,其中的組件可能在不知不覺(jué)中不再得到維護(hù)或支持
- 過(guò)時(shí)的軟件,即使可能有更新的版本,但仍在使用舊版本,
- 未跟蹤的依賴(lài)項(xiàng),可能是因?yàn)樗皇巧嫌?SBOM 的一部分
- 許可證和監(jiān)管風(fēng)險(xiǎn),例如,許可證可能與下游消費(fèi)者的預(yù)期用途不相容
- 不成熟的軟件,OSS項(xiàng)目開(kāi)發(fā)可能不符合開(kāi)發(fā)最佳實(shí)踐
- 未經(jīng)批準(zhǔn)的更改,組件可能在開(kāi)發(fā)人員不知情的情況下更改
- 依賴(lài)性過(guò)小或過(guò)大,在后一種情況下,組件可能會(huì)提供很多功能,但只能使用其中的一小部分
當(dāng)然,OSS 風(fēng)險(xiǎn)遠(yuǎn)不止十種?!叭绻闆r發(fā)生變化,我們可能至少每年都會(huì)更新這份名單。幾年,什么都不會(huì)改變;幾年之后,”Badhwar 告訴SecurityWeek。
您可能認(rèn)為引入 SBOM 是為了為應(yīng)用程序開(kāi)發(fā)人員解決這些問(wèn)題,但 SBOM 幾乎是獨(dú)一無(wú)二的,它是一項(xiàng)領(lǐng)先于行業(yè)實(shí)踐而不是落后于行業(yè)實(shí)踐的法規(guī)?!皹I(yè)界還沒(méi)有為 SBOM 做好準(zhǔn)備,”Badwahr 說(shuō)。自動(dòng)生成通常不準(zhǔn)確且不完整。“如果我們要轉(zhuǎn)向使用 SBOM 作為我們風(fēng)險(xiǎn)分析的無(wú)可爭(zhēng)議的事實(shí)來(lái)源,我們需要解決這些問(wèn)題。今天情況并非如此?!?/p>
盡管 OSS 生態(tài)圈對(duì)許多正在使用的商業(yè)應(yīng)用程序很重要,但它的脆弱性也值得考慮。Badwahr 指向 Core-JS?!癈ore-JS 是互聯(lián)網(wǎng)的基石。選擇任何互聯(lián)網(wǎng)應(yīng)用程序,你都可以確定它使用了 Core-JS?!?/p>
但是 Core-JS 由俄羅斯的 Denis Pushkarev 維護(hù)。他靠它過(guò)著相對(duì)微薄的生活——直到現(xiàn)在。西方對(duì)俄羅斯的財(cái)政捐助受到了西方貨幣制裁的打擊。根據(jù) The Stack 的一份報(bào)告,他被迫考慮替代方案,包括將其封閉源代碼和商業(yè)化。
事實(shí)上,OSS 生態(tài)圈的可持續(xù)性取決于其貢獻(xiàn)者的可持續(xù)性,而這與地緣政治的未來(lái)一樣難以預(yù)測(cè)。Endor 希望對(duì)主要 OSS 風(fēng)險(xiǎn)的列舉能夠幫助應(yīng)用程序開(kāi)發(fā)人員將注意力集中在使用開(kāi)源軟件所涉及的風(fēng)險(xiǎn)上——包括突然無(wú)人維護(hù)的軟件(風(fēng)險(xiǎn) #4)。