OWASP十大开源软件风险总结

01已知漏洞

已知漏洞通常是由软件开发人员和维护人员在无意中引入的,然后再由社区中的安全研究人员公开披露。组织可以采取行动来降低"具有已知漏洞的OSS组件"的风险,例如扫描他们所有OSS组件中的漏洞,根据已知利用率、利用概率、可达性分析等方法对发现结果进行优先排序。

02合法包妥协

恶意行为者发现,从合法包上下手,可以影响到下游消费者的价值,其无论是对组织,还是对个人都能造成极大的影响。恶意行为者可以使用多种方法来完成此类攻击,例如劫持项目维护人员的帐户或利用存储库中的漏洞。当然,恶意行为者也可以自愿变成维护者,一如XZ Utils事件中所发生的情况,即有人在很长一段时间内冒充合法贡献者,然后在不被他人怀疑的情况下,这些不法者从代码中嵌入了后门。那该如何预防呢?我们可以使用新兴的资源和指导,比如使用微软的安全供应链消费框架(S2C2F)等。

03名称混淆攻击

攻击者会创建名称和合法OSS包一样的恶意组件,而这些组件会在无意中被受害者下载。此类攻击也出现在了CNCF软件供应链攻击目录中,包括打字错误和品牌劫持。当这些"做过手脚"的软件包被带到组织的IT环境中,它们可能会影响系统和数据的机密性、完整性和可用性(CIA)。

04不可维护的软件

与专有软件不同,开放源码软件通常没有"供应商",因此OSS维护人员按原样提供软件,这意味着不能保证软件会得到维护、更新或持续使用。Synopsys的OSS报告等报告表明,85%代码库中的OSS组件已经过时四年多,而且两年内没有任何新的迭代。而根据年度NVD指标,考虑到软件老化迅速,新的漏洞正在不断冒出,这对使用"不常更新OSS组件的现代应用程序"来说不是好兆头。OSS主要由无偿志愿者所提供,因此软件组件可能没有被积极开发或维护,以至于缺陷修复等环节是相对缺失的。此外,造成OSS无法维护的另一个关键因素是,几乎25%的OSS项目只有一个开发者贡献代码,94%的项目由10个或更少的开发者在维护。显然,如果一个项目只有一个维护人员,风险是显而易见的。考虑到60-80%的现代代码库是由OSS组成的,因此可以说,我们最关键的系统,都是在维护程度最低的软件上运行,这意味着我们随时可能面临重大的系统风险。应对该风险的建议包括检查项目的活跃性和健康状况,如维护者和贡献者的数量、发布频率,以及补救(MTTR)漏洞的时间等。

相关推荐
grrrr_13 小时前
【工具类】Nuclei YAML POC 编写以及批量检测
网络·安全·web安全
中新赛克5 小时前
双引擎驱动!中新赛克AI安全方案入选网安创新大赛优胜榜单
人工智能·安全
Suckerbin7 小时前
digitalworld.local: TORMENT
笔记·安全·web安全·网络安全
普通网友8 小时前
前端安全攻防:XSS, CSRF 等防范与检测
前端·安全·xss
CYRUS_STUDIO9 小时前
如何防止 so 文件被轻松逆向?精准控制符号导出 + JNI 动态注册
android·c++·安全
CYRUS_STUDIO9 小时前
C&C++ 代码安全再升级:用 OLLVM 给 so 加上字符串加密保护
c++·安全·llvm
lingggggaaaa9 小时前
小迪安全v2023学习笔记(八十讲)—— 中间件安全&WPS分析&Weblogic&Jenkins&Jetty&CVE
笔记·学习·安全·web安全·网络安全·中间件·wps
北极光SD-WAN组网10 小时前
基于智能组网设备的港口网络安全闭环管控方案设计与实践
网络·安全·web安全
FreeBuf_13 小时前
Salesloft Drift网络攻击事件溯源:GitHub账户失陷与OAuth令牌窃取
安全·github
乐迪信息14 小时前
乐迪信息:AI摄像机在智慧煤矿人员安全与行为识别中的技术应用
大数据·人工智能·算法·安全·视觉检测