英文原文: Do you trust this application?
很多你在使用的软件都有着安全漏洞。
任何读过马修·加勒特作品的人都知道很多专门用来销售的软件是不靠谱的。一些 Linux 倡导者宣称开放自由而且免费的软件比封闭的专门用来谋利的软件更安全,然而这里有一个公开的秘密,那就是大量受欢迎的 Linux 桌面应用软件有很多已知而且没被修复的漏洞。我很少听到有人讨论这个,就好像它不能被讨论一样,可是它困扰了我很久。
通常漏洞是不会报告给用户的,因为没有人很在乎。
这里有一个很简单的游戏:选任何一款能使 HTTP 连接困在老版本 WebKit 的任何一版的应用程序,然后开始游戏,我们将看到下面基本的漏洞:
除特殊说明外,上面列出的所有软件的最新发布版在写这篇文章的时候,仍然能受到攻击,即使是在很久以前这些漏洞几乎被全部发布。除了 Shotwell,没有人修复这些漏洞。也许致力于这方面工作的人没有人在意去修复它,或者也许在这方面工作的人没有人有这个时间或者专业的知识去修复它,或者也许根本就没有人从事这方面的工作.这在开放免费自由的软件界很常见。
至于 Shotwell,在 git 里已经修复了这个问题,但是也许它永远不可能被发布了,因为不再有人为 Shotwell 继续工作了。三个月前我通过 GNOME 经销商列表找到了 Shotwell 的经销商并告诉了他们 Shotwell 的弱点。
我们正式机构和发布者交谈,并且建议他们更新一个 git 快照。大部分发布者根本不理会。这就是一个很典型的例子;据我所知,除了 Fedora 所有稳定发布的 Linux 版本仍然容易受到攻击。如果你想玩上面的游戏,通过检测那些流行的桌面软件你应该很容易在我的列表里
添加新的。最好的开端是去检测 Liferea (阅读器软件)或者 Xombrero (假设它是一个安全受关注的浏览器)是否在发送 HTTP 头文件前执行安全传输层协议证书验证,或者检测 Banshee 是否在子资源上执行验证,从原理上说,那些有缺陷的应用很可能有其他类似的缺陷或漏洞。(我没有检测过。)
在一份相关的记录上,很多应用使用不安全的依赖关系。很多流行的 GTK+ 应用都困在一个过时而且不宜用的 WebKitGTK+ 版本里,例如,很多流行的 KDE 应用使用 QtWebKit,然而它却过时而且不宜再被使用。这些不宜再被使用的 WebKit 版本往上追溯将会有远远超过 100 行的远程代码执行漏洞要修复,然而它们也许永远不会被修复。(100 是过低的估计;如果 QtWebKit 的漏洞数量很多很多我一点也不惊讶。)
我不是要宣扬那些封闭拿来卖钱的软件通常比免费开放的软件更安全,因为那绝对是不正确的。例如那些封闭软件开发商,包括那些你也许认为比较了解的有名的大公司,同样在 QtWebKit 的基础上进行大量的商业开发软件。(这是不道德的,但是大多数的封闭软件开发上不关系安全。)那不重要了,因为不管怎样封闭软件开发商很少提供全面的安全更新。(如果你的 Android 手机仍然能获得更新,猜猜看:他们很肤浅。)少量杰出的封闭软件开发商 是真的关系安全问题而且致力于保护他们的用户信息安全,但是他们是大多数中很少的例外,而不是普遍现象。
我们不能把免费开放的软件做得更好是我们的耻辱。
-
译文链接: http://www.codeceo.com/article/do-you-trust-this-application.html
翻译作者: 码农网 – 唐李川