谈到安全性,人们通常关注的焦点始终围绕限制访问以防止未经授权的入侵。无论是锁住房屋的物理门还是密封组织的数字网络,安全始终专注于创建一个封闭的环境。然而,在过去几年中,这种封闭的安全方法受到了开源软件和硬件的挑战,组织依赖公开可用的代码在其网络中部署和构建应用程序。
开源的演进
开源涉及使用开放和免费可用代码的组织,如今它越来越流行,据Synopsys开源安全和风险分析报告的最新数据显示,如今代码库中 有78% 的代码是开源的。
在考虑开源的益处时,不仅代码可以免费使用,而且还为组织提供了更高的透明度,因为他们可以看到自己正在使用的源代码并评估其安全性。
他们还可以看到对代码所做的更改,并与开发人员合作对其进行改进。此外,由于许多组织都在使用相同的代码,因此通常可以更快地识别出错误和弱点,并且用户社区将提供专家建议来修复它们。这意味着有更多的人关注代码,他们的目的都是为了使代码尽可能地安全。
支持开源的最突出的组织之一是特斯拉,其首席执行官埃隆·马斯克 (Elon Musk) 早在 2018 年就选择开源其代码。马斯克意识到世界的未来将严重依赖电动汽车,但电动汽车要取得成功,人们需要投资于其安全性。作为回应,马斯克开源了特斯拉的软件,允许其他人在它的基础上制造汽车,并对它的安全性充满信心。
马斯克遵循着许多其他组织的脚步,包括 Facebook、微软和谷歌,他们都通过开源项目获益。这些技术领导者不仅通过漏洞赏金和安全评估向安全研究人员开放他们的网络,而且他们还资助开源项目并拥有致力于开源计划的团队。
例如, 数字安全设计 (DSbD) 计划将通过创建一个新的、更安全的硬件和软件生态系统,从根本上更新不安全的数字计算基础设施的基础。DSbD 计划 已经交付了 DSbD 技术的第一个片上系统 (SoC) 原型和开发板 Morello的硬件实现。Morello 开发板是由英国 Arm 公司基于剑桥大学计算机实验室的 CHERI 保护模型开发的 Morello 原型架构的真实测试平台。
CHERI 旨在提供实际可部署的性能和兼容性,只需要对现有软件和硬件进行最小的更改:重新编译现有的 C/C++,并进行轻微的自适应,可以保护具有功能的指针。这结合了硬件实现、完整的软件堆栈和适应广泛使用的开源软件,以提高安全性并鼓励测试。
开源思维是航空业多年来认可的一种思维方式。当航空事故发生时,航空公司不会逃避,取而代之的是整个航空业共同努力调查这一事件并建造更安全的飞机。这种团体精神使航空旅行成为当今最安全的交通方式。
然而,它肯定也是有风险的。
那么,主要风险是什么?如何克服这些风险?
开源风险
开源的最大风险之一是没有经常管理或更新,这可能会给用户带来风险。
虽然特斯拉开源软件的用户可以放心,其代码将得到彻底管理,但对于规模较小且缺乏经验的开发人员来说,情况并非总是如此,尤其是因为他们正在免费赠送一些东西。
如果代码没有更新并且没有人负责更新它,那么当出现问题时,没有人可以追究责任。最终,它只会被错误和漏洞所困扰,从而将其用户置于严重风险之中。事实上,最近 Synopsys OSSRA 报告显示,81% 的开源代码包含漏洞。
因此,当组织评估开源软件和硬件时,必须进行尽职调查并分析产品的质量,并在将产品引入组织架构之前了解其创建人。
找出谁负责修改和更新代码,并确保他们有资源、精力和时间来执行必要的安全更新;否则,未来无疑会出现风险。
这也是世界各国政府评估开源并考虑规范该行业的关键原因之一。拟议的法规将确保开源项目拥有所有者并负责更新。然而,这可能会阻碍市场,因为潜在的违规行为会导致希望进入开源领域的开发人员减少。
推动开源发展
开源通过汇集来自不同来源的专业知识来开发更好、更安全的产品,为组织提供了真正的安全优势。但是,组织必须在将开源代码部署到其网络之前进行研究。
对于组织来说,有一个内部管理人员来确保安全得到维护和迅速进行更新也是至关重要的。了解开源安全性以及如何管理开源组件的开发人员是管理内部开源项目的最佳人选。
那么,开源是实现安全的最佳途径吗?这一切都取决于项目本身,但如果做得好,它肯定会为企业带来许多无与伦比的安全优势。
原标题:Is Open Source the Greatest Path to Security?
作者:Darren Prehaye
链接:https://www.infosecurity-magazine.com/opinions/open-source-path-security/