OpenVPN审核团队OSTIF的采访

[ware_item id=33][/ware_item]

OSTIF正在审核OpenVPN的全部收益。


您刚刚完成了对OpenVPN的安全审核。两个人在这个项目上工作了将近两个月。这样的审核工作如何进行?

实际上,这是由三名研究人员进行的总共50天(约1000小时)的安全审查工作.

当我们计划审核某个软件时,围绕计划审核的时间,将由谁来进行工作以及我们将涵盖软件的哪些领域的工作量很大。.

对于OpenVPN,我们一直等到OpenVPN 2.4发行,该发行版进行了一些重大代码更改。然后,我们可以评估新功能以及许多潜在的变化.

包含重大代码更改的更新是评估软件的好时机,因为编码错误可能会通过测试,或者边缘特征的回归可能会贯穿裂缝.

OpenVPN是一款独特的软件,因为它是整体代码,具有许多功能,必须与旧版本兼容。确保旧版兼容性会减慢安全检查的过程。我们必须浏览一个复杂的函数网络,而不是在模块化设计中进行导航,在模块化设计中可以按块评估应用程序。 OpenVPN还依赖于两个不同的库(OpenSSL和PolarSSL)进行加密,这意味着存在两个完全不同的加密环境来增强安全性.

更进一步,还有OpenVPN 3.0,这是一个独特的版本,并非完全开源。 OpenVPN 3.0是由于Apple App Store的许可问题而创建的,阻止了该商店上的免费软件。 OpenVPN 3.0代码用于Android和iOS的OpenVPN Connect。如果我们要评估整个生态系统,则需要很多研究人员花费数月的时间来梳理OpenVPN的所有这些变体,然后他们仍然必须考虑这些各种应用程序可能面临的所有不同的网络和硬件配置。复杂性和成本将是巨大的.

我们咨询了专家,并与OpenVPN团队和QuarksLab一起确定了重点。决定适用于Windows和Linux的OpenVPN 2.4覆盖了最多的用户,并且将发挥最大的作用。由于其周围的许可证结构,大多数商业VPN提供商将OpenVPN 2.4代码用于其自定义VPN客户端.

我们还决定专注于由OpenVPN本身创建的任何加密技术,以及应用程序的安全性。这意味着寻找逻辑错误,内存分配错误,不正确的缓冲区处理或其他不正确的错误状态漏洞.

对OpenSSL的单独审核将使我们能够仔细评估OpenVPN加密本身,以确保加密和应用程序均正常。重要的是要创建一个安全且难以利用的应用程序,以便用户欣赏.

对于实际的审核过程,QuarksLab在记录评估软件时使用的过程和工具方面做得非常出色。我们的工作重点是计划审核范围和设定可实现的目标。然后,我们召集围绕开源事业的开源,安全和隐私社区来筹集资金以完成任务.

您的审核中是否有任何令人惊讶/值得注意的发现,您现在可以与我们分享?

我们正处于OpenVPN审核流程的停滞阶段,因此我将无法讨论可能会吸引人们参与结果的任何细节,但是它们很快就会公开发布。我们正在等待OpenVPN 2.4.2.

进行此类审核的依据是什么?您是否被告知潜在的安全漏洞,还是只是想仔细研究一下您经常依赖的软件?

我们作为组织的策略是涵盖安全性和隐私性的不同领域,并选择广泛使用的应用程序.

VeraCrypt是TrueCrypt的迫切需要,TrueCrypt是社区非常依赖的,但是运行该项目的人相对不为人所知,并且正在着手进行具有复杂代码的大型项目。将它作为我们的第一次审核是合乎逻辑的,因为我们可以评估TrueCrypt 7.1a中代码的更改并将其与VeraCrypt的当前版本进行比较。这种狭窄的范围使我们能够大大降低成本,并向人们表明组织可以有效地取得成果.

OpenVPN是我们对应用程序的首次“全面”审核。它需要更大的预算,但也有一个庞大的VPN提供商社区(他们自己是隐私权主义者)。 VPN提供商既对用户的隐私感兴趣,又对OpenVPN的安全性直接感兴趣,这使我们能够同时从OpenVPN商业利益和私人用户中筹集资金.

OpenSSL再次变得更大,但在它周围得到了业界的支持,因为OpenSSL代码(以及其他衍生自它的库)为前1,000,000个顶级网站中的70%提供了支持。这给了我们很多商业利益,我们可以要求资金来帮助评估OpenSSL 1.1.1,它将是第一个带有新TLS 1.3代码的OpenSSL版本。.

随着我们进一步深入到计划审核的应用程序列表中;筹集资金变得越来越困难。或者是因为周围的社区较小,或者是因为对应用程序的成功没有既得的商业利益.

我们希望,在一再获得成功之后,我们将能够获得较大的公司赞助商,这将使我们能够更有效地将资金直接用于这些项目,而不必完全依靠少量的公共捐款。这也将极大地帮助我们建立其他程序,其中包括与项目一起工作以使其应用程序更易于使用,改进测试方法和工具,以及为我们支持的隐私和安全软件创建易于遵循的指南。.

简而言之,现在,这是更大战略的全部内容,即从隐私和安全的每个主要领域支持一个应用程序,然后从那里扩展。我们的标准是软件的感知强度,结合广泛使用.

对于您的OpenVPN项目,您在很大程度上获得了VPN行业的支持。您是否期望得到更多支持?您对此支持的满意度如何?

在口耳相传和直接捐赠方面,我们也获得了社区的大量支持.

我们的目标很快就被惊人地超越了,因为我们最初认为分配给募集资金的1个月窗口是不够的。但是我们通过了目标,并在20天内筹集了超过计划的资金。这笔钱被留给了计划于夏季/秋季启动的漏洞赏金计划。.

我对社区的积极响应和对该项目的大力支持感到惊讶。真的很棒!我对社区对该项目的支持感到非常满意,但也感到惊讶的是,有许多大型组织没有响应我们的询问,也没有任何管理联系点.

但是,总的来说,好的远大于坏的,并且我们期待与我们的所有支持者一起开展OpenVPN计划以及其他工作!

您已从具有汇总资源的筹款模型转变为直接筹款模型,在该模型中,您分别为每个项目筹集资金。这对于OpenVPN项目似乎效果很好,VPN行业很乐意捐赠。您是否希望将来的项目也能获得类似的资助,以及这对于没有商业行业的软件项目(例如OTR)如何运作??

筹款模式的变化是由于社区对贴纸冲击的反馈。在第一轮筹款活动中,我们计划了一年的活动,然后尝试通过KickStarter筹集资金。这导致了财务上的障碍,例如提供捐赠奖励,KickStarter费用以及支付服务从捐赠中掠夺资金。此外,这8个计划中的项目将目标总额推向了数百万美元。作为一个没有记录的行业新手,涉及大量资金,并且在KickStarter发生了几次重大故障之后,它从一开始就注定要失败。.

我们在战略上的转变使间接费用和数字下降到了现实,并设定了更多可实现的目标,但每次筹款都需要大量工作。我们希望在树立起责任感和效率的声誉之后,我们将能够确保获得更大的捐助者,这将使我们更加专注于完成工作,而不是直接募捐。更大的捐款也将带来额外的好处,使我们能够资助那些商业上不太有趣的项目,例如OTR,Nginx,Tunnelblick等.

您如何看待隐私和安全增强技术的发展?特别是在手机和专有系统方面?

我们多次通过各种政府机构的泄密事件发现,如果信息周围的加密技术很好,那么他们就无法将其彻底破坏.

这一事实至少使过去几年中普遍存在的“监听所有人”形式的大规模监视无效。随着这些隐私工具的不断完善以及加密变得越来越难以破解和易于使用,我们将看到加大力度来攻击和破坏设备.

通过金雅拓大量盗窃SIM卡密钥,NSA泄漏中大量被盗RSA密钥,插入Cisco和Juniper系统的后门等等,可以证明这一点。.

长期以来,安全社区一直在呼吁围绕拥有我们最私人信息的设备的“完整堆栈”开源代码。目前最大的障碍是资助和组织支持以实际开展工作.

一些公司似乎在专有方面做得很好,但是我们反复了解到我们不能相信代码的黑匣子。看到这个月在iOS中的堆溢出:https://googleprojectzero.blogspot.com/2017/04/exception-oriented-exploitation-on-ios.html

Android存在许多与生态系统相关的问题,这些问题与更新滞后有关,从而造成数百万个易受攻击的设备。或者公司一旦销售停止就疏忽地停止更新手机。然后还有更深层的问题,例如易受攻击的Broadcom无线电固件,这些问题将永远不会得到解决,正如Project 0最近所证明.

真正的开源手机是一个很大的问题,但是我们当然可以尝试通过独立开发难题来朝着正确的方向推动开源社区。我真的希望我们能到达那里,因为目前的局势一团糟。令我感到震惊的是,还没有基于智能手机的Mirai通过数据洪灾摧毁世界各地的手机信号塔.

苹果公司的专有系统在安全性和隐私性方面取得了很多积极的消息。您认为开源项目将在尊重用户权利的同时将可用技术推向大众的方式?

苹果公司已投入大量资源来建立专注于安全性的电话生态系统。问题是Apple并未开源该技术,因此我们正在处理与Windows等商业软件相同的问题.

我们有一个黑匣子,上面有数百万行质量未知的代码行,它们以已知方式相互影响。苹果依靠恶意软件制造商和安全研究人员无法对他们的代码进行反向工程来发现缺陷。这种动机的一部分是将软件锁定在手机上,以便iOS只能安装在正版Apple硬件上。另一个动机是将手机锁定在软件上,因此您无法购买iPhone并在其上安装其他操作系统,从而保持了他们通过吸引受众的方式在应用商店中筹款的能力。.

需要明确的是,就目前的安全性而言,目前他们在客观上要优于Google。问题在于此黑匣子不可信任。就像所有软件一样,它具有错误-成千上万的错误。由于该软件是专有软件并且无法找到源,因此这些错误在于等待Apple安全团队或世界上最早发现它们的任何人的发现。.

可以查看开源软件。它消除了“完全信任我”的要求,即没有任何隐私感兴趣的人可以客观地接受.

我希望Google朝着苹果的方向发展,因为无论供应商如何,所有设备都将强制进行更新,并且必须严格执行硬件要求才能做到这一点。我也希望我们可以开源关闭Google固件及其相关驱动程序的当前关闭部分,以便我们可以信任手机所依赖的全部堆栈以确保安全。这将使一个开放的解决方案能够以良好的安全性和隐私惯例来领导市场。.

您经常看别人的代码。您会观察到哪些常见错误?哪种错误最常见?

实际上,我自己不进行安全检查,而是留给签约的审核员。但是最常见的问题是内存管理问题,以及在不再使用安全性相关数据时正确删除它们.

另一个大错误是试图编写自己的密码。它非常复杂,并且有几十种方法可以击败过去几十年来发明的加密技术。您必须仔细考虑它们,并遵循许多标准来创建强大的加密技术。使用已经合规的库可完全避免此安全雷区.

您有什么建议可以与阅读此书的许多编码器分享吗??

支持开源安全性或隐私权倡议。自愿花费您的时间和知识作为编码员是非常宝贵的,即使您每月仅对一个有价值的项目进行一次提交.

社区能力和时间的总和等于可以使互联网和世界变得更好的应用程序。如果您没有安全背景,请向组织提供少量经常性捐款,以帮助构建和改进这些工具和库。我不仅在谈论OSTIF,在谈论Free Software Foundation,或者在下载一件开源软件时看到的任何捐赠按钮.

您会惊讶地花了几美元可以帮助小型项目发挥作用并改善。小小的贡献为我们所有人创造了一个更好的数字世界.

OpenVPN审核团队OSTIF的采访
admin Author
Sorry! The Author has not filled his profile.