跳转到主要内容
Chinese, Simplified

使用开源组件可节省开发人员的时间和公司资金。 换句话说,它就在这里。 下面介绍一下如何提高开源安全性。

OSS

今年的Equifax漏洞提醒人们,开源软件和组件虽然有很多好处,但对企业安全构成巨大风险,尤其是在维护不当的情况下。

今年4月,Flashpoint Intelligence的研究人员表示,犯罪分子正在对流行的开源Magento电子商务平台使用暴力密码攻击,利用受损的访问来刮取信用卡记录并安装专注于加密货币挖掘的恶意软件。

[了解如何在企业中跟踪和保护开源。 |通过注册我们的新闻通讯获取CSO的最新消息。 ]
研究人员发现至少有1000个受到攻击的Magento管理员小组,并表示自2016年以来对深度网络和黑暗网络平台的兴趣持续不减。此外,人们还对Powerfront CMS和OpenCart表现出了浓厚的兴趣。

 
多年来,开源代码越来越受欢迎,并被各种规模的公司用于所有垂直行业。

除了市场上广为人知的开源操作系统之外,企业用户还利用开源生产力软件,管理员和开发人员的工具以及用于构建自己的软件的各种代码库。甚至商业软件通常建立在开源代码的基础之上。

“我看到企业更广泛地采用开源软件,”Kudelski Security首席技术官Andrew Howard说。 “随着企业转向敏捷方法,开源变得更有价值,并且有更多可用的工具。如果你看看今天进入市场的新软件开发人员,他们接受了开放源代码技术的培训。”

开源安全优势


霍华德表示,开发人员严重依赖开源软件,公司对主要开源项目特别感兴趣,这些项目由大型团队维护。此外,还有“多视角”的安全方法。 “这是使用开源软件的主要优势 - 除了降低成本外,”他说。 “理论上你有更多的眼睛看着它。” (虽然他补充说这不适用于较小的项目或代码库。“有些软件没有任何社区,”他说。)

[准备通过PluralSight的综合在线课程成为认证信息安全系统专业人员。现在提供10天免费试用! ]
开源代码的另一个安全优势是,如果出现问题,公司可以打开它并立即修复它。 “如果代码根据专有协议获得许可,他们通常必须等待供应商做出响应,”Synopsys公司的开源解决方案经理Mel Llaguno说。

为什么开源软件会带来安全威胁


Synopsys管理Coverity Scan,这是一项免费服务,可扫描开源代码中的缺陷。 “整体而言,开源软件的质量一直在提高,”Llaguno说。 “我们有大约7.5亿行开源代码参与我们的扫描项目,并确定了110万个缺陷 - 已经解决了650,000个缺陷。”他补充说,许多项目,特别是较小的项目,不会扫描他们的代码以寻找潜在的安全漏洞。

例如,Black Duck Software,Inc。在超过550,000个项目中跟踪超过100亿行开源代码。即使这不是一个完整的图片。 Linux基金会报告称已有310亿行代码提交给开源存储库。

谁在使用所有开源代码?每个人。根据最新的Black Duck报告,96%的商业应用中都有开源组件。普通应用程序有147个不同的开源组件 -  67%的应用程序使用具有已知漏洞的组件。

美国政府赞助了Common Vulnerability Enumeration列表和National Vulnerability Database。 2017年,超过8,000个新漏洞被添加到CVE列表中,创历史新高。

那么为什么公司使用开源软件呢? “在普通应用程序中,超过三分之一的代码库是开源的,”Synopsys公司黑鸭安全策略师Mike Pittenger表示,“为了取代代码库的三分之一,你将不得不增加您的开发团队或开发时间减少了50% - 我认为这些在当今世界并不可行。“

以伦敦的Skyscanner Ltd.为例,该公司是一家旅游搜索引擎。该公司曾经在.NET等专有的封闭平台上运行。 Skyscanner的安全工程师Alex Harriss表示,在过去的几年里,它已经迁移到更广泛的语言和技术,包括开源。 “这意味着我们的工程师现在能够从多个来源获取依赖关系并在几分钟内部署他们的代码,”他说。

哈里斯说,这也带来了安全挑战。他说:“我认为存在一种误导性的依赖,即作为开放源代码,这些图书馆正在接受社区安全漏洞的审查。” “实际上,情况似乎并非如此。”

他说,许多最常见的图书馆都有充分记录的漏洞。由于工程师只是从这些库中提取代码并进行部署,因此产生了可见性问题。 “我们根本不知道我们产品中的依赖数量,”他说。

需要对开源软件安全性进行更多尽职调查


Skyscanner并不孤单。根据最新的Veracode报告,只有28%的组织进行任何类型的定期分析,以找出其应用程序中内置的组件。随着开源代码的使用增长,这种风险表面也在扩大。

在开源代码中不断发现新的漏洞,许多项目没有用于查找和修复问题的机制。根据Snyk最近对开源维护者的调查,44%的人从未接受过安全审计,只有17%的人表示他们拥有高水平的安全知识。

还没有标准的方法来记录开源项目的安全性。在GitHub上的前400,000个公共存储库中,只有2.4%有安全文档。

然后,如果问题得到解决,通常无法找到并通知旧代码的所有用户。 “开源社区不知道谁在使用他们的组件,”Black Duck的Pittenger说。

根据Snyk的调查,88%的开源代码维护者在发布说明中添加了与安全相关的公告,34%的人表示他们弃用旧的不安全版本。百分之二十五的受访者表示他们根本没有努力通知用户漏洞,只有10%的人提交了CVE。

Snyk Ltd.首席执行官兼联合创始人Guy Podjarny表示,很多人都不知道CVE流程是如何运作的,或者没有时间通过​​它。“例如,在Javascript中,只有13%的漏洞我们跟踪有一个CVE编号,“他说。 “其余的只是记录为错误。”

Snyk有一个安全研究团队,通过寻找发布说明,GitHub和Apache问题跟踪系统等地方的线索,在开源库中寻找安全问题的迹象。结果发布在其漏洞数据库中,如果可能,Snyk还会将它们提交到CVE列表。

但是,获得CVE可能是一个复杂的过程,需要委员会就CVE细节达成一致,以及项目所有者的同意。 “这种方法目前的工作方式并不适用,”Podjarny说。

最后,如果发现并修补了漏洞,并且广泛宣传了补丁,那么使用该代码的企业可能不会意识到他们拥有该漏洞或者可能在查找所有实例时遇到问题。例如,今年巨大的Equifax漏洞涉及Apache Struts开源软件中的一个漏洞。这个补丁在漏洞发生前几个月就出现了,Equifax知道补丁,但仍然无法及时修复。

另一个问题是某些公司正在运行旧版本的代码,并且由于兼容性问题,合规性或其他原因而无法迁移到最新版本。根据Snyk的说法,只有16%的漏洞修复程序被反向移植到其他版本。

查找并修复


在理想的世界中,应用程序将在安全补丁可用的瞬间更新,无需任何干预。然而,在实践中,这并非总是可行的。

相反,企业需要有办法在其环境中查找所有开源代码实例,不断更新此列表,引导开发人员远离旧的,不安全的库,最后在发现新漏洞时出去部署补丁。

Skyscanner的Harriss表示,“只有当你知道它们的位置时才能从你的产品中删除易受攻击的库,并且在生命周期中越早做它就越便宜。”

许多公司求助于Snyk,Black Duck和Veracode等供应商。这也是Skyscanner所做的。 “Snyk让我们看到了哪些软件包在哪些项目中被使用,它们包含的漏洞以及它们如何被引入到我们的代码中,”Harriss说。此外,Snyk会在编写代码时立即向开发人员标记漏洞,以便在代码投入生产之前解决问题,他说。

将开源漏洞扫描集成到开发过程中对于大型企业尤为重要,因为很难跟踪所有正在使用的代码。 “我们处理的大多数公司都不知道他们拥有的应用程序的完整库存,这有点可怕,”Veracode研究副总裁Chris Eng说。

当Veracode进行漏洞扫描时,公司会上传他们的二进制代码,Veracode会根据国家漏洞数据库对其进行检查。为了帮助公司发现他们可能不知道的运行的应用程序,Veracode还可以扫描公司的外围。 “它不会发现其他没有曝光的内部应用程序,但是由于暴露,这些风险将会降低,”Eng说。

他补充说,还有一些网络工具可供公司用来查明内部运行的内容,但如果网络被细分,可能会出现盲点。公司还可以在端点设备上安装代理以跟踪正在运行的内容。 “如果你没有在任何地方安装代理,你可能仍会有一些盲点,”Eng说。 “没有一种方法可以实现这一切,这就是为什么这是一个如此困难的问题。”

对于Equifax来说,这当然是一个难题。去年十月,前首席执行官理查德史密斯告诉国会,该公司的信息安全部门进行扫描,寻找最终导致违规的Apache Struts漏洞。扫描“没有发现任何受此漏洞影响的Apache Struts版本,并且该漏洞仍然存在于Equifax Web应用程序中的时间比应有的长得多,”他说。

“你必须确保你知道环境中的每台服务器都要使用这个工具进行扫描,”Black Duck的Pittenger说道。即使扫描完整且准确,它们也会为组织带来大量的管理开销。如果没有在开发过程中内置安全检查,则必须连续运行这些扫描,并单独检查和重新检查应用程序是否存在漏洞。

开发人员不仅会在更新应用程序时将新的易受攻击的库引入其应用程序,而且在以前认为安全的旧库中会发现新的漏洞。 “软件并不像葡萄酒那样老化,”Eng说。 “它像牛奶一样老化。”

Eng表示,开发人员很少回头查看他们在旧项目中使用的库。 “我今天下载的是当前版本的任何版本,将其整合到我的应用程序中,并且再也不会考虑它,”他说。

为了说明这个话题现在有多重要,本月Synopsys公司以超过5亿美元的价格收购了Black Duck。 “我认为,这是一个很大的市场验证,”牛仔集团有限公司负责人约翰迪克森说,他对交易规模感到惊讶。 “我认为这是一个热门的空间,但我认为它不是那么热。这次收购变成了很多头。”

 

原文:https://www.csoonline.com/article/3157377/open-source-software-security-challenges-persist.html

本文:https://jiagoushi.pro/open-source-software-security-challenges-persist

讨论:请加入知识星球或者小红圈【首席架构师圈】

 

Article
知识星球
 
微信公众号
 
视频号