开源审计的最佳时机是什么时候?

    技术2024-12-02  16

     聚焦源代码安全,网罗国内外最新资讯!

    编译:奇安信代码卫士团队

    你对自己所使用开源组件的情况了解多少?你能说出自己正在使用那些开源组件吗?正在使用的许可证是什么?它们是否合规?了解代码库中存在多少开源安全漏洞吗?知道如何修复这些漏洞吗?

    你可能和多数组织机构一样,无法回答所有这些问题。在当代应用的代码库中,开源组件占80%甚至更多比例。不清楚开源组件的使用情况是重大工作遗漏,甚至是不必要的且可避免的风险。

    那么,如何才能获得对开源组件使用的可见性和控制?答案就是开展开源安全审计。

    开源审计简介

    开源审计 (Open Source Audit) 是由通过认证的审计机构对开源组件开展的全面调查活动。它具有三大关键元素:开源软件资产梳理、许可证合规分析以及开源漏洞评估。结合在一起,就是对开源组件的使用进行风险分析并提供可行的见解。

    开源审计的第一步是识别所有的开源库,包括直接或可传递依赖关系。

    列出开源清单后,需要确保开源许可证互相兼容并符合公司策略。不同于在单一许可证下运行的库如 Microsoft Public License,很多开源库中的依赖关系具有不同的许可证。其中某些许可证的权限可能更多如 Apache 和 BSD,而有些可能是限制性更强的著佐权如 GPL。理解许可证之间如何关联以确保它们的兼容性至关重要。

    开源审计还会深挖安全漏洞,全面扫描开源组件,找到任何潜在的安全威胁或过时组件,而修复方案或升级路径也应成为这个过程的一部分。

    什么时候必须进行?

    尽管总是对开源组件的使用具有可见性的理念很好,不过在这些情况下,必须开展开源组件审计:

    分发软件。当分发包含开源库的软件时,开源审计能确保你满足所有的许可证要求,以免因未披露多个版权声明而面临法律诉讼。

    季度报告。上市公司必须在季度报告中披露开源组件的使用情况。

    并购和 IPO阶段。潜在买家或投资人需要获得关于目标代码库中所有开源组件的记录以及许可证,以识别版权侵犯问题。开源审计缩短了并购尽职调查的工期,且多项研究表明尽职调查过程持续时间越长,交易未达成的概率越高或者价值被严重降低。

    OEM 协议。和分发软件的情况类似,你必须在将软件出售给其它厂商以便他们用于自身产品时,如根据 OEM 协议,必须公开披露开源组件的使用情况。

    开源代码尽职调查在整个软件尽职调查中起着至关重要的作用。积极开展开源组件审计可减少公司的暴露且交易通常会成功。

    列出每个项目的所有许可证,包含任何时候可获得的许可证文本和版权信息。

    兼容性风险报告。该报告中包含过时或多版本的库列表,还包括如何更新这些开源库的建议。

    审计报告演练。这一过程通常是动手练习,审计人员引导客户了解审计的重大发现结果。它突出强调客户面临的最大开源安全风险方面并给出修复建议。

    审计结束后

    开源审计完成后,通常需要修复安全漏洞并确保许可证和所有使用的开源组件合规。虽然审计流程较为繁琐,但好过不了解它。

    坦白说,企业并非为了开源审计而审计,他们这样做或是法律的要求,或是开展尽职调查的一部分,目标是协助达成交易。通过开源审计理解开源风险是实现合规性和更高安全性的第一步,更不用说让你高枕无忧了。

    那么,什么时候是开展开源审计的最佳时机?现在。毫无疑问,就是现在。

     

    推荐阅读

    奇安信开源组件安全治理解决方案——开源卫士

    奇安信开源卫士率先通过可信开源治理工具评估

    谷歌开源文件访问漏洞审计工具 PathAuditor(详解)

    Facebook内容审核软件有bug 审核员或因此招来杀身之祸

    正则表达式基础库源码审计与漏洞分析

    原文链接

    https://resources.whitesourcesoftware.com/blog-whitesource/when-s-the-right-time-for-an-open-source-audit

    题图:Pixabay License

    本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 www.codesafe.cn”。

    奇安信代码卫士 (codesafe)

    国内首个专注于软件开发安全的

    产品线。

        点个 “在看” ,加油鸭~

    Processed: 0.046, SQL: 9