说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

不要责怪开源技术 它是无辜的

HTML文档下载 WORD文档下载 PDF文档下载
当安全漏洞出现时,我们经常会把责任推到开源软件上。但放弃开源并不是解决问题答案——开源是很重要的方向。相反,我们需要采取一些关键的步骤,以保证整个开发过程中组件的安全性。

Sonatype的首席安全官Ryan Berg在Gigaom上撰文称,我们不应该把安全性问题归咎于开源本身,事实上,专用软件也会出现这样的问题。应对安全问题真正的做法应该是注重产品生命周期内的每个环节,采取措施提高软件开发中每个方面的安全性。

以下为文章全文:

上个月,由于受到黑客攻击, OnRamp免费广告服务被迫关闭,对数百万的网站造成严重影响。OnRamp的母公司 OpenX在其在论坛上发布了一份官方声明,质疑了开源技术的安全性。

对此,表示,这不是一个开源的问题,并且我们不应该把责任推给开源用户和生产厂商。开源的经济和生产效率使得它几乎是任何现代软件应用程序的强制组件。我们在开源上都获得了巨大的好处——发展快速,重复利用经过验证的组件,让用户能在专有领域的软件特色上集中更多的时间。

这不仅仅证明了开源的好处,更表明它是必要的。这也是为什么超过7万个企业在去年于Central Repository上为开源组件处理了接近80亿请求,覆盖了所有主要类别的应用程序,包括网络、云、移动和关键基础设施。

不争的事实是今天一个典型的软件应用程序中有超过80%的组装是用现有的组件进行组装的,并且其中的绝大多数都是开源的,来自数十个,或数百个单独项目。所有的垂直行业,无论是监管和非监管,都在内部和面向用户的应用程序中使用大量的开源组件。

开源是必要的

你可以把今天的软件开发组织想象成汽车制造商,开发人员使用现有的部件或零件“组装”应用程序,而不是从头编写应用程序。但与制造业不同,软件行业缺少必要的工具对一个复杂的分布式软件供应链的复杂性和风险性进行管理。

基于组件的开发需要管理,当监督不完整时,安全问题就会出现。简单地说,一个有缺陷的软件供应链意味着有缺陷的应用程序。我们的研究表明,至少71%的应用程序包含组件有已知的被列为严重或关键的安全漏洞。

Digital Forensics Association 发布的《 The Leaking Vault 2011》称,在短短的时间里,有超过1560亿美元的直接损失可以归因于数据泄露。由Forrester和Veracode对 应用风险管理进行的一项的商业调查发现,62%的受访机构表示,由于他们关键应用中的缺陷,他们曾在过去一年里发现漏洞。

减少不可避免的风险

现在,问题就变成了如何在降低风险与部件消耗的同时,实现开源的好处。当然,对开源软件来说,有不断的和复杂的威胁,专有软件同样存在这样的威胁。我们知道其中的危险来自于使用已发现漏洞的过时组件,来自于没有一个可强制执行的开源政策,并且开源软件没有与管理组件执照或许可证的依赖关系。

重要的是要明白,这是一个供应链的问题:你需要在软件开发生命周期(消费、发展、集成和生产的过程)内的每个阶段管理组件。

降低安全风险

要降低安全风险,我们要在组件层上加强整个对软件开发生命周期的保护措施,提高整个软件供应链的完整性。想象一下,如果一个流行的开源组件中存在漏洞风险,并且由于组件被许多应用程序所使用,那么这个组件就会成为黑客眼中的一个香馍馍。

下面是减少风险的一些关键:

  • 研究一个开源的政策,如果你的组织还没有的话。如果你有,则经常检查它。确保它对开发团队来说是明确的,并对安全管理的过程负责,让它得到每个人的支持。
  • 确保你的政策为组件安全、许可和质量属性提供关键指南。除此之外,开源的策略需包罗万象,概述组织的标准和价值观,创建更多的指导方针来驱动使用决策。
  • 确保你的政策是可强制执行的。如果没有执行能力,那么还有什么意义?纸上谈兵的政策将被忽略,所以要寻找方法将执行整合到软件开发过程本身。
  • 为开发人员提供所需要的信息,以便他们做出正确的选择。你的开发人员处于第一线,所以要给他们战斗能力。让他们能够在初期检测到缺陷或不符合规定的地方,尽早节省时间和资金。
  • 理清生产、库存组件和它们之间的依赖关系。在进行故障排查的过程中了解你的应用程序的构成是成功的一半。
  • 密切关注新发现的缺陷。新的漏洞可能会在任何时间出现,当一个新的漏洞出现时,你要第一时间发现,并知道哪个组件正在使用。
  • 要有一个补救措施。不管发生在生命周期里的哪个环节,都要知道如何进行解决。修复缺陷并不总是容易的,所以我们需要拥有一个计划。

无论是使用开源软件或专有软件,免费软件或付费软件,都请记住这一点:如果我们能通过建立良好的组件方法来维护组件层,那么对产品的整个生命周期都是有好处的。 (王旭东/编译 仲浩/审校)

本文来自: Gigaom

第五届中国云计算大会 ”将于2013年6月5-7日在北京国家会议中心隆重举行。猛击报名!

如果您有丰富的实践经验、有创意性的议题并乐于与人分享成果,欢迎 毛遂自荐或推荐讲师 ;相关问题及建议请 @CSDN云计算 或者加入147015990(QQ群:中国云计算) 参与讨论。

大会官网:第五届中国云计算大会

英语对于软件开发者来说到底有多重要? SDCC 2013中国软件开发者大会成功落幕 新浪微博宋琦:PHP在微博优化中的“大显身手” 8月份浏览器份额:IE浏览器PC端出现反弹 移动端跌出前五 如何让Ruby项目速度提升10倍 跨平台进行到底:Facebook发布Unity SDK 云薪资管理初创公司ZenPayroll:年处理薪资超1亿美元,获多位知名CEO力挺 Twitter开源Summingbird:近原生编码下整合批处理与流处理 亚马逊推Matchbook 欲将顽固纸质书读者拉向电子书 Broadcom为可穿戴设备推新开发平台WICED 再战江湖 New Kodak还牛不牛? 郭理靖:公、私有云架构异同点与难点 美化代码的15个代码语法高亮工具 你所不知道的虚拟化和云计算 [开源推荐]Effeckt.css项目:CSS交互动画应用集锦 针对Google Glass应用的四大UX设计原则及典型应用 Google收了摩托罗拉,微软收了诺记,黑莓又将花落谁家? 十亿月PV网站秘诀:Reddit自失败中总结的25条经验 粉碎5个NoSQL流言:各司其职,NoSQL的出现比关系型更早 豌豆荚发力移动游戏平台,推出SDK 2.0 BlackBerry Jam Asia 2013即将在香港隆重召开,免费门票限量提供 小米发布会高潮迭起:米3、电视、Hugo大牛 谷歌放在Windows上的特洛伊木马:Chrome Apps应用平台 解析:Google基于数据驱动的招聘面试程序 决战“缓存”之巅:微软 vs. 亚马逊 雪中送炭:十大前沿移动应用开发工具 高通智能手表Toq都用到了哪些技术? 研发周报:修改一行SQL代码 性能提升了100倍 2013年NoSQL就业趋势分析 鲜为人知的静态、命令式编程语言——Nimrod 高性能Web应用打造攻略:扩展过程中20个最大的绊脚石 女孩的心愿―――仅以此文道出父母离异的孩子的心声 【我贴我灌】 中国十把名刀 可否对多个xml文档进行检索? 浮点数问题,请各位大哥抽点时间帮小弟看看。谢谢 标题:煤矿矿主:“矿难难道都是我的错!?” (转贴) 如何在ORACLE8中把字段中的值填入数据库中,请各位多多指教!急!十分急!!! Delphi有没有象C++的this指针? 存储过程的条件判断如何写 我讨厌csdn首页的弹出窗口广告!!!! 这里关于前途的悲观论调的文章太多,难道程序员的抗挫折能力就那么差吗? 高分求救,有关非模式对话框隐藏的问题 襄儿妹妹,大哥给你的见面礼,请接受~~~ 求救!为什么以前做的程序,下次打开就不能运行了呢????? 为什么我显示的图象总被遮掉 上两个星期刚扫描好的最新ip地址库 进程出错,如何对系统的出错信息进行处理 谁有色带的型号和牌子的网址啊,推荐啊。。 完成端口中如何在接收状态下发送数据? 那位大哥能帮忙从sourceforge上下个工程,高分相送,分可以再加(急) (急)如何替换文本中的“+” 请问怎么看到DevC++运行后的结果啊。屏幕一闪就过去了 关于控件制作的两个问题 那位大哥能帮忙从sourceforge上下个工程,高分相送,分可以再加(急) 如何才能在Edit控件中显示大量的数据?? smoke,你好,很高兴能认识你! 大虾们给点意见:这么编写W77E58的软件看门狗是否妥当? 请问怎么用MAPI控件发送HTML格式的邮件啊 小问题,好郁闷!! 父窗口弹出一个子窗口,如果在子窗口点击鼠标,消息是怎么在父子窗口之间折腾的呢? 如何在接受到两个消息后才执行一段代码呢? 怎么定义一个三维数组 那位大哥能告诉我75,000日圆值多少人民币啊???? 安装了DirectX 9b之后Media Player 9.0总是出问题。 局域网怎么装打印机? 为什么控制面板中的“添加删除程序”不能用了?在线等待,请各位帮忙。 请问高手如何设置绘图背景为黑色,并且哪种绘制模式不影响画图的画笔颜色 《程序员》的文章错字太多!!!!!!!!!!!! 关于指纹采集识别 高分求《j2EE服务器端高级编程》这本书的源码 MAKEWORD宏从哪里找到中文解释。 为何在重载CreateParams后指定Form的Height值小于某个值后就不会再小? 开发一个基于WEB的ASP仓库管理,用什么技术比较好。 怎样让弹出对话框居中显示 我用Server.Transfer来做两个页面之间传值,我怎么让页面成为新窗口打开呀,100分 高分请教XML高手 在InterDev中,我什么说我不能连接web server 请问 怎么响应一个按钮打开一个新页面,同时关闭旧页面 各位PM进来谈谈自己的经历和经验教训。 picturebox控件问题 jdbc的奇怪限制,不能reread row data UNIX支持中文否,请推荐UNIX好书 已知直线l x=m(m<-2)与x轴交与点A,动圆M与直线l相切,并且与圆O;X²+Y²=4外切.已知直线l x=m(m<-2)与x轴交与点A,动圆M与直线l相切,并且与圆O;X²+Y²=4外切.求动圆的圆心M的轨迹C 请问钥匙怎么分公钥匙、母钥匙、子钥匙,以及怎样设置每把钥匙的权限及他只能打开的房门? 某人有3把钥匙,其中只有1把房门钥匙可以打开家门,此人随机从口袋中摸出一把钥匙试开门(1)开不了门扔掉放回口袋继续摸钥匙开门的概率为什么是2/9?(2)开不了门就扔掉,再继续摸钥匙开门 右边钟面的分针长8厘米.现在正好9时.从9时到10时,分针尖走过了多少厘米?从10时到11时,分针扫过的面积是多少平方厘米 钥匙插到房门里面了,外面还有钥匙怎么可以打开啊?开锁的也没办法,只能毁锁才能开!结果我是叫做门窗的来的,把玻璃砸了进去开的!划算不费事! 菱形ABCD与△ABE部分重合,其中D在BE上,若AB=17,BD=16,AE=25,求DE的长度 数学概率题某人有4把钥匙,其中有2把能打开门,现随机的取出1把钥匙开门,不能打开的扔掉,问如果第二次才能打开的概率是多少?那如果不扔掉,又是多少 某人有5把钥匙,其中2把能打开门,现随机地取1把钥匙试着开门,不能开门的就扔掉,问第三次才能打开门的概率是多少?如果试过的钥匙不扔掉,这个概率又是多少?还有计算的步骤. 某人有4把钥匙,其中2把能打开门.现随机地取1把钥匙试着开门,不能开门的就扔掉,问第二次能打开门的概率 某人有四把钥匙其中两把能把门打开现随机的取一把钥匙试着开门不能开门的就扔掉第二次打开门的概率是多少 一只挂钟的分针长3.5厘米,从今天早上8时到明天早上8时,针尖走过了( )厘米,一只挂钟的分针长3.5厘米,从今天早上8时到明天早上8时,针尖走过了( )厘米,分针在钟面上扫过的范围是( )平 内蒙古国贫旗现豪华接待中心 回应称为25省区市前三季度GDP之和超全国总专家称当代难谈“汉字危机” 呼吁重视“今日中国”艺术周系列活动在泰国举行西班牙煤矿瓦斯泄漏致6人死亡印度央行下调经济增长预期企业被强拆讨说法遭踢皮球 对方扬言:美国在罗马尼亚反导基地开工建设孟全国大罢工第二天又有4人死亡长兴废旧铅蓄电池“涅槃重生” 废水处粤高院判美IDC公司构成垄断 赔偿华粤海铁路开通8条零担快运专线美国:反垄断案例影响深远辽宁发生63年来最重旱情 厄尔尼诺是京杭大运河装215吨浓硫酸沉船已打捞徐州站学生客流升温 青奥会延缓南京学辽宁发生63年来最重旱情 厄尔尼诺是粤海铁路开通8条零担快运专线七旬老人坚持婚后管钱致六旬未婚妻悔婚首届中国国际健身气功交流比赛大会在九美国:反垄断案例影响深远男子无驾照私自练车 出事故致一死一伤
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘