如果有一张海报小孩面临开放源安全的挑战,它可能是Werner Koch,德国开发人员,德国开发商在过去18岁上致为维持GNU隐私卫兵(GNUPG),这是开源软件生态系统的支柱。
自1999年首次生产发布以来,GNUPG已成为世界上使用最广泛的开源安全工具之一,保护每个人从政府官员到爱德华斯诺登的电子邮件沟通。
然而,Koch发现自己在近年来努力努力。自2001年以来,他平均收集了25,000美元的25,000美元,从2001年捐款不足以支持他的努力。如由Pro Publica报道,53岁的孩子们在Gnupg上扔在毛巾上爱德华斯诺登的NSA Revelations震惊了世界,令人信服笑到士兵。“我太理想了,”他说。
这个故事有一个幸福的结局。在Propublica故事破裂后,来自世界各地的捐助者赶紧支持Koch。他很容易超过他已经支持他的工作的137,000美元的筹款目标,使他能够聘请兼职开发人员。Koch被Linux基金会的核心基础设施倡议获得了60,000美元的一次性批准。Facebook和在线支付处理器条纹将每年抵押50,000美元到Koch的项目。
由于GNUPG直到最近,欠额外的项目,形成了庞大的开源生态系统的一部分,以规模前所未有。广泛的再利用开源代码燃料当今汹涌的技术开发,但该代码的纯粹量阻碍了安全审查。只有最近,我们才开始面临问题,经常在安全违规行为困扰行动的安全漏洞之外。
将为食物编码
离开koch高和干燥多年的条件并不罕见。
在Google研究员Neel Mehta未发现之后Heldbled.该软件社区在openssl的一个组件中进行了严重和远程可利用的漏洞,从而令人震惊地了解该项目的主要原因是Linux基金会执行董事的吉姆·泽林,称为“两个名叫史蒂夫的人”的责任。Stephen Henson博士和Steve Marquess兼职兼职,使代码保持最新,每年在自愿捐款中补偿几千美元。
依赖开源的技术供应商迅速迁至权力,并将OpenSSL项目设置为权利。向Gnupg创造者提供60,000美元的核心基础设施倡议,建立了60,000美元的拨款,以帮助为申办人民的工作和其他人的工作提供资金。根据硅谷巨头作为亚马逊,Adobe,Cisco,Facebook和谷歌提供的财政支持。
一千只眼睛眨眼
Heartbleed不是第一个杀手开源错误。例如,Apache Struts漏洞近一年,至少是严肃的。
但由于媒体狂热,Heartbleed可能已经永久信得不当埃里克·雷蒙德的着名格言对开源质量:“给予足够的眼球,所有的虫子都很浅。”大多数安全专业人士都说概念总是比描述性更有抱负。
“我从来没有喜欢过很多眼球的概念,”Joshua Corman说,CTO在坚实的陈文馆。“只是说有”许多眼球“并不意味着那些眼球有动力或有资格寻找安全漏洞。”
开源的“许多眼睛”的保证主要用于光泽在开源生态系统中的弱点,这意味着坚定的黑鸭软件开放源战略高级总监Bill Weinberg表示没有存在的恒定警惕的气氛。
“用shellshock,你没有很多眼睛,”Weinberg说,指的是发现的关键漏洞潜伏在2014年的Bash代码中。“那个代码被认为是好的审查,但事实证明,它没有很好的策划,因为每个人都假定它被审计得很好。”
虽然我们可能要假设开源代码的完整性很高,但来自SONATYPY的数据表明相反。CodeBase的开源组件公司的分析发现,开源组件中的已知漏洞仅在41%的时间内进行了修复,Corman在此中写道Usenix Journal;登录。对于修复的问题,平均修复它们的时间是390天的往往。
但甚至谈论除了商业,专有软件的“开源”,专有软件都是误导性的。虽然一条线可能已经分开开源和专有的软件项目,但大多数现代应用都是第三方软件组件的组装,其中许多打开来源,Corman说。
认真对待代码级安全性
什么是正确的回应?无论好坏,答案都在很大程度上是文化,公司Hackerone的首席政府官员称,Microsoft的前高级安全策略师凯蒂·穆斯索里斯表示。“我们需要建立一个安全性心态。这对每个软件项目 - 开源是重要的。“
Moussouris的公司为协调漏洞披露提供了基于Web的平台,包括通过Bug Bounty程序。她指出,Hackerone已经赞助了广泛的开源项目的Bug奖金,包括PHP,Ruby在Rails,Python和Openssl上,为漏洞报告提供补偿。
开源项目需要采取更严重和系统的安全方法,她说:“你必须至少尝试建立安全。”
SONATYPE的CORMAN倡导更严格的解决方案:一种供应链类似于制造商使用的供应链,可提供高质量和问责制。
使用福特生产线的类比,Corman注意到该公司知道进入其成品的每个部分的出处。问题可以追溯到特定的供应商,设施甚至生产运行。
但是,在现代软件开发组织中,没有这样的系统存在。几乎每个商业软件应用程序都利用第三方公司销售的开源和专有组件,但软件公司可能具有所有该代码的质量和起源的托纱概念。通常,漏洞的覆盖范围和影响只会在灾难罢工后被众所周知。
例如,在ShellShock的情况下,问题中的代码返回到1989年,并影响了各种应用程序 - 从基于CGI的Web服务器到Qmail电子邮件服务器到某些DHCP客户端。对漏洞的攻击开始在其披露的几个小时内。