开源软件安全吗?
2023-11-18 9 0
开源软件安全吗?
作为喜欢桌面计算机上的Linux并鼓励使用开源软件的人,您可能会期望标题中提出的问题得到肯定的答复。
然而,我并不打算仅限于讨论开源软件的优点。让我们一起探索更多的视角!
在这篇文章中,我打算分享一下我对开源软件是否安全,以及哪些事情与开源软件的安全相关的想法。
为什么要关心开源软件是否安全?
无论您使用Linux系统还是其他类型的操作系统,您都会在某种程度上(直接/间接)被开源软件包围。
例如,大多数专有软件工具依赖某种形式的开源库才能正常工作。
此外,包括Google、Microsoft和Facebook在内的各种规模的公司都依赖开源软件或以某种方式向开源社区贡献资源,这是有原因的。
因此,有必要了解开源软件的安全性。
关于开源软件安全的神话
虽然开源软件存在安全缺陷的原因有很多,但其中一些实际上是没有意义的。
任何人都可以查看并恶意利用开源软件代码
是的,任何人都可以访问开源软件代码。但仅仅因为您可以查看代码并不意味着您可以利用它。
不现实。
即使任何人都可以分叉(或复制)该软件,原始软件也无法轻易修改和使用。
通常,项目维护者(或维护团队)管理代码存储库并接受贡献者的提交。开源软件代码在接受之前会经过审查。没有人可以劫持代码。
无论是开源软件还是闭源软件,攻击者都需要努力利用软件中的代码漏洞或者添加恶意代码。
没有专门的团队,安全是不可能的
很多人认为,如果没有专门的开源软件人员或专门的团队,维护软件安全是很困难的。
相反,随着各类贡献者的加入和离开,开源软件得到了更多开发者的关注。
他们可能比专有软件雇用的少数开发人员更能够发现安全问题。
Mozilla等类似公司的一些项目都有自己的专门团队来有效处理安全问题。同样,大多数成功的开源项目都有大量资源专门用于安全性。
因此,开源软件的生态系统是一个安全的封装体。即使没有专门的团队,开源项目也可以得到各种贡献者的帮助,其中一些贡献者基本上是盈利的,这有助于他们投入更多的精力。
开源软件是安全的,原因如下
现在我们已经消除了有关开源软件安全的这些神话,让我重点展示开源软件如何处理安全问题。
换句话说,就是开源软件的安全优势。
不要忘记,开源软件的优势也是Linux优于Windows的一些原因。
更多关注开源软件代码
与专有软件不同,(开源软件)代码的访问并不限于少数开发人员。
一些开源项目甚至可能有数以万计的开发人员,他们可以查看代码、审查代码并标记和修复其中的安全问题。
这使得开源项目比闭源软件具有快速识别问题并尽快修复问题的能力。
除了拥有更多的开发人员之外,公司还经常参与他们使用的开源项目。当他们这样做时,他们还会查找代码并进行审查。
这为外部审查提供了另一种途径,可能有助于提高开源软件的安全性。
相反,在闭源软件的情况下,有限数量的开发人员可能无法发现各种安全问题。而且他们可能需要更长的时间才能一一解决他们发现的问题。
社区确定安全问题的优先级
闭源软件的开发人员可能对他们可以解决的问题和时间有一定的限制或优先级。
通过开源项目,贡献者社区可以决定自己的优先级并安排他们想要解决的问题并确定适当的修复方案。您无需依赖供应商的决定或按照他们的指示来解决安全问题。
在开源软件项目中,解决和修复安全问题的决策更加透明和灵活。因此,它可以被证明是更有效的,并为您带来以下三个好处:
透明度
不依赖供应商
更快的安全更新
开源软件并非刀枪不入,原因如下
虽然开源软件在某些情况下可能具有安全优势,但仍然存在影响它的因素。
承认这些问题的存在非常重要,这样公司和个人就可以就开源软件的安全性做出更好的决策。
没有足够的眼睛来审查代码和不确定性
尽管开源软件代码可供世界各地的开发人员免费访问,但该项目没有足够的贡献者/开发人员对其进行彻底审查开源代码的可能性仍然存在。
既然如此,我们就不能对开源软件的同行评审抱有高度的信心,因为它恰恰缺少这一点。
开源软件可能“声称”具有最高的安全性,因为它们是开源的。当没有足够的开发人员参与该项目时,这会产生误导。
同样,我们无法知道有多少开发人员正在查看/检查代码,或者代码被检查到什么程度。
例如,Heartbleed漏洞在被广泛使用的项目(OpenSSL)中引入两年后才被发现。
软件责任和问责制
对于个人用户来说这可能并不重要,但开源项目通常没有任何保证。
因此,如果公司使用该软件,则必须对因使用该软件而导致的任何数据丢失或损坏承担全部责任。
这告诉您没有什么是100%安全且没有漏洞的。无论有多少双眼睛关注代码或贡献者的技术多么熟练,总是存在某种形式的风险,无论是安全风险还是数据丢失。
这告诉我们一个现实:开源软件并不是刀枪不入的。
开源软件的优点是安全性更高,但是......
在安全方面没有赢家。无论是闭源还是开源,在涉及安全问题时都适用相同的原则。
有许多外部因素会影响软件安全,其中许多因素不依赖于源代码。
必须以某种形式对代码进行监控以确保安全。
是的,开源路径提供了闭源软件所没有的优势,但这并不意味着开源软件是无懈可击的。
您对开源软件安全状况有何看法?您认为开源软件比专有软件解决方案更好吗?
预先感谢您在下面的评论中提供的宝贵反馈。
通过:https://news.itsfoss.com/open-source-software-security/
作者:AnkushDas选题:lujun9972译者:CanYellow校对:wxy
本文由LCTT原创编译,LinuxChina自豪推出
本站文章均由用户上传或转载而来,该文章内容本站无法检测是否存在侵权,如果本文存在侵权,请联系邮箱:2287318951@qq.com告知,本站在7天内对其进行处理。