这样的开源应用你相信它吗?

很多你在使用的软件都有着安全漏洞。

任何读过马修•加勒特作品的人都知道很多专门用来销售的软件是不靠谱的。一些Linux倡导者宣称开放自由而且免费的软件比封闭的专门用来谋利的软 件更安全,然而这里有一个公开的秘密,那就是大量受欢迎的Linux桌面应用软件有很多已知而且没被修复的漏洞。我很少听到有人讨论这个,就好像它不能被 讨论一样,可是它困扰了我很久。

通常漏洞是不会报告给用户的,因为没有人很在乎。

这里有一个很简单的游戏:选任何一款能使HTTP连接困在老版本WebKit的任何一版的应用程序,然后开始游戏,我们将看到下面基本的漏洞:

使用安全传输层协议失败,当连接时(注意:GNOME(开放源码的重要组成部分) Music,GNOME Weather;这些是唯一我在这里提到不用WebKit的应用)。这就意味着该应用没有安全。

执行安全传输层协议证书验证失败(Shotwell(是一款Linux下的相片管理软件)和Pantheon Photos(类似Shotwell))。这就意味着这个应用没有安全性保障来阻挡活跃的黑客。

在子资源上执行安全传输协议证书验证失败(Midori(跨平台的网页浏览器)和Xombrero,Liferea(三者类似)).因为这些站点 经常向子资源里发送JavaScript脚本,这也就意味着活跃的黑客能够在不会被发现的情况下通过改变脚本来完全掌控这个页面(纠正:使用 JavaScript脚本是可以的。).(遗憾的是,Epiphany在3.14.0版本之前通常也面临着这个问题。)

在发送HTTP头文件之前验证安全传输层协议证书失败(private Midori bug, Banshee(音乐播放器))。这泄露了应当受保护的cookies信息,通常会导致黑客在一个网站上能够很顺利的获取你的用户账户信息。另外,它还泄 露了你正在访问的那些HTTPS应该被保护的网站信息。(纠正:很遗憾,Epiphany prior 在3.14.0版本之前面临着这个问题。在WebKitGTK+里的WebKit2 API在2.6.6之前也面临着这个问题,漏洞: CVE-2015-2330。)

除特殊说明外,上面列出的所有软件的最新发布版在写这篇文章的时候,仍然能受到攻击,即使是在很久以前这些漏洞几乎被全部发布。除了 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.oschina.net]

时间: 2024-09-29 12:16:37

这样的开源应用你相信它吗?的相关文章

【资料合集】阿里巴巴开源技术汇总——内含115个软件与100+技术文档、PDF下载

开源是孵化新技术领域的容器,开源是技术演进的强大推动力.多年来,阿里巴巴集团一直积极拥抱开源事业,无论是开源软件的应用.回馈以至自研技术的开源都非常活跃. 为了更好地让开发者们深入了解阿里开源,本文对社区内发布过的开源技术精品内容做了一次大汇总,包括115个阿里巴巴开源技术.阿里巴巴73款开源产品全向图.首届阿里开源峰会PDF+活动视频回顾等等. 阿里巴巴73款开源产品全向图 2016阿里巴巴73款开源产品全向图(9月制)点击图片可下载大图. 2016阿里巴巴73款开源产品全向图详细介绍 "阿里

十款开源的数据库管理工具

任何Web软件和应用程序都需要强大的数据库来做后盾,目前,网上有无数个数据库管理工具,而开发者选择一款适合自己的尤为重要.本文给开发者介绍了10款免费的数据库管理工具,开发者可以使用它们进行SQL操作.多链接.多数据库引擎操作等等. 1.Open KeyVal Open KeyVal是一款开源免费的键值数据库管理工具,基于Web,并且基于PHP开发,其目标是用最简单的方法来管理Web应用程序数据.用户只需发送一个POST请求就可以存储任何类型的数据,它是以JSON的格式来响应请求的. 2.DBV

开源IT资产管理系统OCS Inventory NG服务端(win)安装

OCS Inventory NG(Open Computer and Software Inventory Next Generation)是一款系统管理软件 主要功能: Relevant inventory 资产清单管理. Powerfull deployment system 强大的部署系统,代理程序软件部署方便宜用.. Web Administration Console 基于Web的管理控制界面. Multiple operating systems support,多操作系统支持 Mi

源代码-我在学习Android 的ZXing开源项目二维码时 有几个类 不清楚他具体的意义,功能。

问题描述 我在学习Android 的ZXing开源项目二维码时 有几个类 不清楚他具体的意义,功能. ①BitMatrix.java ②ByteMatrix.java ③MultiFormatWriter.java ④QRCodeWriter.java 这4个 我实在不懂 这功能,这里面哪个 是将输入字符串 变成那个0,1 那个的?用什么算法了...我这是Android工程. 谢谢了...

专访Dan Kohn:阡陌交迭,云原生布局开源生态构建及深度应用

嘉宾简介 Dan Kohn,CNCF执行董事.在加入CNCF之前,他曾是Skymoon Ventures(一个关注半导体和电信基础设施领域的种子期风险资本公司)的普通合伙人,并曾在医疗保健公司Spreemo及广告公司Shopbeam等创业公司担任CTO,还参与创建和启动了Linux基金会核心基础设施计划.此外,Dan曾帮助管理Craig McCaw旗下的大量电信公司,并以担任NetMarket(早期互联网公司之一)的创始人兼首席执行官开始了他的职业生涯.1994年,他率先发展起了网上音乐商店,并

【资料合集】首届阿里开源峰会回顾:讲义PDF+活动视频!

为了让大家更好地了解阿里开源项目最佳实践,我们将本次峰会的讲义PDF+活动视频整理出来,以供大家学习参考. 1. React 技术栈在蚂蚁金服的实践 演讲视频:https://yq.aliyun.com/edu/lesson/play/641 演讲整理文章:https://yq.aliyun.com/articles/72028 2. AliSQL功能特性详解 演讲视频:https://yq.aliyun.com/edu/lesson/play/640 PDF下载:https://yq.aliy

数据挖掘开源项目立项

项目背景 因为最近一直都在搞数据挖掘类的项目,且现在国内的大数据潮火热.在前几天与群里的几位兄弟聊天所以有了做一个开源项目的想法,以前也搞过一个开源的项目,当时只是想把权限集中化做一下,项目的名称和地址是: http://www.cnblogs.com/skyme/archive/2012/02/07/2341364.html 但是后期实在工作太忙,就搁置在那里了. 所以现在又搞了一个,目前方向已经大致明确,下边介绍一下思路. 仿今日头条 java+新闻等+仿今日头条+大数据分析和挖掘(分类器+

使用开源项目的正确姿势,都是血和泪的总结!

软件开发领域有一个流行的原则:DRY,Don't repeat yourself,我们翻译过来更形象通俗:不要重复造轮子.开源项目主要目的是共享,其实就是为了让大家不要重复造轮子,尤其是在互联网这样一个快速发展的领域,速度就是生命,引入开源项目,可以节省大量的人力和时间,大大加快业务的发展速度,何乐而不为呢?   然而现实往往没有那么美好,开源项目虽然节省了大量的人力和时间,但带来的问题也不少,相信绝大部分同学都踩过开源软件的坑,小的影响可能是宕机半小时,大的问题可能是丢失几十万数据,甚至灾难性

.NET操作Excel免费开源类库简介及比较

转自http://yuxnet.blog.163.com/blog/static/ 自从上次找到NPOI之后,根据园友提供的线索以及Google,又找到了一些开源免费的类库,所以都简单体验了一遍. 主要找到以下类库: MyXls(http://sourceforge.net/projects/myxls/) Koogra(http://sourceforge.net/projects/koogra/) ExcelLibrary(http://code.google.com/p/excellibr

开源Excel库

原文http://www.cnblogs.com/xiwang/archive/2012/04/01/2428874.html   一, 需要在Silverlight中导出Excel文件,累死了N个脑细胞,忙活了数天,终于是搞定了,哈哈. 很常见的方法就是,在Silverlight中提升浏览器的信任级别,直接调用COM+组件导出EXCEL文件. dynamic excel = AutomationFactory.CreateObject("Excel.Application"); dy