全国
动态 新闻 政策 课程 介绍 综合 问答

收起

直播回放 周幸:开源治理实践如何实现自动化和智能化落地(五)

中国教育在线  |  2022-05-31 首页-课程-课程安排

直播回放 | 周幸:开源治理实践如何实现自动化和智能化落地

至于开源治理工具,应该要继承应用安全缺陷检测等核心能力。

第一点要求是要有丰富的语言支持和海量的知识库支撑。每一个企业都会用到很多语言,除了前端和后端,还包括随着市场需求变化引入的新技术和新框架。这就要求工具的检测能力要有非常大的覆盖面。知识库包括组件库、许可证库和特征库等,有大量的知识库支撑才能使分析结果比较完善。

第二点,要具备组件依赖解析和可视化SBOM分析的能力。从组件定位到相关部门和企业,从相关组件的漏洞定位到受影响的组件,这实际上是多维度关联分析。同时通过工具化的方式,生成可视化的SBOM清单去帮助企业快速梳理内部的资产。

第三点,要具备许可证分析能力。要能够做到对主流许可证的检出以及对合规性和兼容性的检测。

第四点,拥有企业级的核心引擎。整个引擎能够独立出来,那么基于海量的知识库,对特殊的特征文件能进行精准识别,提高组件的检出率。如果知识库的体量不够大,不是企业级的检测和分析引擎,检出的结果一般是比较差的,误报率会比较高,同时给出的修复建议和方案也不能够满足企业需求。

因为技术是在不断演进的,所以在介绍完基础的工具能力之后,给大家简单补充能力提升的一些方向。比如在静态分析的情态下,除了基于依赖关系分析、基于文件级别的分析、基于代码片段的分析,还有动态组件的实时分析。它是在测试环境,依赖IAST插桩技术原理,在用户进行功能测试和性能测试的同时,发现运行中相应组件的信息。这就能够避免数量巨大的误报和检出无法应用的漏洞,因为在静态分析中,有一些实际上未被使用的组件,如果都通报,对于开发人员来说,修复难度是比较大的。

开源治理工具还要与开源治理方案的三个阶段也就是安全开发、安全测试和安全管理相结合。

在安全开发阶段,首先,工具需要结合企业的IDE,做到安全前置,帮助开发者快速定位漏洞并提供修复方案。其次,工具具备的企业级核心引擎要支持二次开发,因为每家企业的情况是不一样的,需要对接不同的工具和平台。第三,工具对于开发人员要友好,不能增加他们的工作量,还要给他们带来文化和价值的赋能,提升他们相应的能力。

在安全测试阶段,工具要具备对产品第三方开源组件的安全性测试功能和系统上线前开源组件的安全审查功能,帮助提高软件产品的安全性,防止应用带“病”上线。

在安全管理阶段,第一点是对第三方组件和供应商软件的安全准入,一定要制定相应的准入标准和评估体系,这与软件供应链安全也是相关的。第二点是在企业内部建立安全组件库,比如maven私服库等,好处在于有一个统一管理的组件引入来源。第三点是软件和组件的可视化清单分析。有了这样一个清单,就能够及时地进行相应的定位。最后一点就是要助力安全部门的合规审查及相关开源治理工作。我们会发现安全合规以及法律部门的介入,都在慢慢推进整个开源治理体系的建设。

相关推荐

收起

网络安全报名

网络安全条件

网络安全考试

网络安全科目

网络安全问答