漏洞之辨

   

       来源:中国计算机报 

  如今,漏洞已经成为IT领域的严重威胁,时不时曝出的安全漏洞再加上某些媒体的推波助澜,让用户无所适从甚至产生恐慌。实际上,任何IT系统都有存在漏洞的可能。那么我们应该如何看待、如何应对这些漏洞呢?漏洞的可怕之处在哪里,我们应该如何防范?

  几个月前,OpenSSL的“心脏出血”漏洞闹得沸沸扬扬。这个漏洞就好像是我们忽然发现大家使用的锁存在安全问题,可以被攻击者轻易攻破。如果世界上所有的锁都形同虚设,不知道会引起多大的恐慌。

  北京时间8月7日凌晨,著名的“2014黑帽大会”在美国拉斯维加斯召开。会上又有很多的安全漏洞被曝光出来:比如USB存在漏洞可以让攻击者修改USB主控固件,将各种USB设备(不仅是U盘,而是各种带有USB接口的设备)改装为攻击工具;高通骁龙处理器存在漏洞可能导致几乎所有采用该处理器的手机存在信息泄露的风险;某些飞机通信设备的固件存在漏洞,可能导致攻击者利用飞机上的Wi-Fi网络或机载娱乐信息系统入侵飞机航空电子设备,中断或修改卫星通信,干扰飞机的导航和安全系统……

  这些漏洞的出现更加骇人听闻。面对这些层出不穷的漏洞,我们不禁要问,我们应该如何看待这些安全漏洞?为了安全,是不是抛弃所有的电子设备和系统回到“原始社会”才是最好的选择?

  事实上,漏洞是任何IT系统都有可能存在的。人类并不完美,人类所造就的IT系统同样并不完美,但显然我们早已离不开这些“不完美”的系统,这些“不完美”的系统推动了人类社会大步前进。我们不应该谈漏洞色变,但是我们应该冷静地观察,认识安全漏洞的成因找到关于漏洞的解决方法,才能做到处变不惊。

  平衡被打破

  安全漏洞有些看似离我们很远,实则离我们很近。可能很多人不知道,在我们每天使用的桌面操作系统上,就时刻上演着针对系统漏洞的攻防战。

  4个月之前,微软Windows XP停止服务事件在国内信息安全领域掀起一场轩然大波。说到底,Windows XP停止服务事件就是一个典型的关于漏洞防护的事件。众所周知,微软会定期发布补丁(Patch)对其软件,特别是操作系统上存在的安全漏洞和功能上的不足进行持续性的修补。而Windows XP停止服务,就是微软宣布终止对已经服役了十余年的操作系统Windows XP进行修补,不再发布关于Windows XP的补丁。

  奇虎360资深安全研究员张聪告诉《中国计算机报》记者,由于微软Windows操作系统在PC端的广泛应用,世界各地都存在一些黑色的利益链条,他们不断地挖掘Windows系统上的安全漏洞,然后利用这些安全漏洞攻击用户并获得非法利益;另一方面,很多安全厂商和白帽子也在挖掘Windows系统上的安全漏洞,发现后立刻报告给微软让微软进行修补,这也正是微软安全补丁的由来。

  “一直以来,黑色利益链条对Windows XP安全漏洞的挖掘和利用与微软对安全漏洞的修补保持着动态的平衡。然而,微软停止对Windows XP提供服务事件打破了Windows XP系统上安全漏洞挖掘与修补的平衡。也就是说,由于仍然有众多的用户使用Windows XP,黑色利益链条对Windows XP安全漏洞的挖掘和利用不会停止,而另一方,微软却停止了对Windows XP的安全漏洞的修补,这就让Windows XP用户所面临的威胁放大,防范Windows XP的安全威胁显得更加重要。”张聪说。

  以快制胜

  事实上,“零日攻击”也是近年来在信息安全领域可以经常听到的词之一。很多安全厂商都认为,对零日攻击的防范是如今网络攻击防范的重点和难点。所谓零日攻击,就是攻击者利用零日漏洞所发起的攻击。而零日漏洞并非特指某一个安全漏洞,而是指攻击者在发现了某个安全漏洞后随即利用这个漏洞实施攻击,抢在用户系统中的漏洞修复之前,甚至厂商发布漏洞的补丁之前,攻击即已得手。

  可见,对于漏洞的防范,响应时间非常重要。利用零日漏洞形成的零日攻击,正是攻击者利用时间差,进行快速攻击的结果。

  北信源安全专家李鹏告诉记者,后XP时代的用户面临一系列安全问题。第一是黑客可能囤积的零日漏洞。Windows XP停止服务以后,Windows XP将永远遭受零日漏洞的困扰。微软官方数据显示,Windows XP系统用户遭受黑客入侵的风险是Windows 8系统用户的6倍。第二是系统漏洞对个人的隐私和企业机密带来安全威胁。第三是APT攻击。第四是如何保障XP上重要的信息系统稳定运行,如何保证操作系统的稳定和快速的运行。最后一点是如何保证大量信息系统和应用软件的安全运行。

  “北信源很早就意识到了Windows XP停止服务事件对我国用户的操作系统安全将产生巨大影响,采取行动进行应对的速度也是相当快的。”李鹏告诉记者,北信源早在去年12月就率先发布了专门为Windows XP提供安全防护的产品“金甲防线”,在Windows XP系统上布置了若干道防线。第一道防线是系统安全基线加固,基于微软系统安全基线,全面收集系统脆弱性信息和安全问题,对各种安全隐患点进行统一排查,形成完善的检测与管理方案,帮助管理人员预知安全风险,洞察安全隐患,并实现安全策略的统一配置管理。第二道防线是系统堡垒,通过进程黑白名单管理及签名过滤、恶意程序识别和软件行为管控,实现操作系统进程的安全加载及执行。第三道防线是数据安全防护,它采用数据全生命周期安全模型,结合用户行为深度分析、安全容器等技术,解决数据生成、存储、分发、阅读等一系列环节的安全问题。此外,“金甲防线”还有数据防火墙、主动防御等防御、数据备份与恢复、敏感信息检查手段,并具备强大的补丁支撑体系。

  “北信源基于近20年的行业经验和千万终端用户应用经验,形成了完善的补丁支撑体系和漏洞防御体系,能够快速识别并主动防御操作系统潜在漏洞,全网即时下发补丁,降低由于系统漏洞给用户带来的遭受恶意攻击和数据泄露的风险。”李鹏介绍,“金甲防线”提供了补丁验证、分发、安装、回收、回滚等功能,还有一些针对系统安全方面的防护功能,比如,系统的健康体检和优化、痕迹粉碎、数据保险箱、文件授权的外发、对移动介质的安全管理等。

  “即使在系统不打补丁的情况下,‘金甲防线’大约也能抵御90%以上的恶意攻击,在企业终端系统管理方面,它还可以降低企业的管理成本和系统管理员的工作量,特别适合帮助各个行业企业渡过Windows XP这一操作系统过渡期。”李鹏说。

  防御新思路

  不可否认的是,攻击者利用漏洞进行攻击,相较于病毒、木马时代,对安全防护提出了更大的挑战。张聪告诉记者:“过去,特别是安全软件和安全防护技术并不普及的时代,攻击者通过编写病毒、木马程序实施攻击,就能达到效果,使其罪恶的目的得逞。然而,随着互联网安全软件的普及,攻击者很难再通过病毒、木马作恶,这才迫使他们将目光聚焦在技术门槛更高的安全漏洞身上。”

  确实,虽然漏洞一直存在,但是更多的攻击来自对安全漏洞的利用,也是近几年呈现出来的趋势。虽然利用漏洞进行攻击提高了攻击者的技术门槛,也让安全防护软件的防护更加困难。

  “以前对于病毒、木马进行防护的技术,都是基于特征库来进行识别和处置的。然而在漏洞时代,防护已经无法基于特征库来进行了。”张聪告诉记者,利用病毒、木马进行攻击与利用漏洞进行攻击的一个显著区别在于,利用病毒、木马攻击均需要一个实体,防护软件要识别病毒、木马的实体并处置,是相对容易的,而利用漏洞攻击往往只是一段脚本,安全防护软件很难发现系统的异常状况,也很难进行攻击的识别和样本的捕捉。

  “漏洞是无限的,但是漏洞的利用方法是有限的。”李鹏认为。面对利用漏洞这种新的攻击方式,就要具备新的防护思路。

  张聪告诉记者,面对Windows XP停止服务所引发的安全风险,在没有官方补丁的情况下,必须采用不同与以往的解决方案。据了解,奇虎360发布的安全防护工具“XP盾甲”采用了热补丁、加固、隔离三个核心的安全策略,对Windows XP实施保护。“应对利用漏洞所带来的安全威胁,最直接有效的方法就是打补丁。然而,如果一个漏洞出现,对于Windows XP这种微软官方已经不提供补丁的系统或者是Windows 7、Windows 8这种官方补丁尚未发布的情形,用户很难在第一时间就得到相应的保护。360则为用户提供了热补丁(Hotfix)作为替代性的解决方案,迄今为止,360已经为微软操作系统的零日漏洞提供了22个热补丁,覆盖最近六年爆发的所有高危漏洞。”张聪告诉记者,热补丁可以做到即时发现、即时解决,360的补天引擎作为快速响应机制,能够在不修改操作系统文件的前提下,在系统运行之后针对漏洞进行快速修复、快速部署和应用防护。

  事实上,Windows XP由于诞生时间较早,受限于当时的软硬件水平,与现在的操作系统相比,缺乏许多关键的安全防护技术,比如DEP数据执行保护、ASLR地址随机化、SEHOP等。据介绍,360的“XP盾甲”采用了这些技术,从而实现了对用户操作系统的加固。“要做到提前防范,不能仅仅针对特定的漏洞,更要从加固操作系统内核,强化内核安全性,防范系统内核漏洞的方向着手。”张聪表示,“XP盾甲”针对Windows XP缺少对于代码执行权限的限制、缺少内核级的内存随机化、缺少对于0页内存的保护、缺少对于结构化异常处理链条的保护等弱点进行了主动加固。此外,“XP盾甲”也对Windows XP内核提供了额外的保护,比如禁用危险的内核调用、在进入内核前进行额外检查等。

  “即使某个利用漏洞进行的攻击足够高明,绕过了360的热补丁和加固技术,它仍然可能无法得逞,因为我们还有隔离沙箱技术。”张聪告诉记者,当敏感程序运行时,就会被隔离在沙箱中,“XP盾甲”的沙箱会对程序进行诸多限制,诸如限制对操作系统上的敏感数据的访问等,从而实现对系统的保护。在iOS、Google Chrome等软件中都引入了沙箱,这样攻击者就算通过网页或者文档利用漏洞执行了一些危险操作,这些操作也是被困在沙箱中的,无法对系统造成进一步损害。

  “不过,在Windows XP上实现完整的沙箱防护并不容易,这是因为沙箱技术需要很多系统底层的支持,但Windows平台的很多安全机制都是在Vista版本之后加入的,Windows XP能够支持的安全机制有限。”张聪表示,“要在Windows XP上实现完整的沙箱防护需要先在操作系统上补全‘地基’,这比在Windows 7、Windows 8上实现沙箱防护要困难得多,也同样考验着一个安全厂商的技术实力。”

  从热补丁到加固再到沙箱,奇虎360的Windows平台漏洞防护的思路非常清晰,从针对漏洞的补丁防护,到对操作系统的整体加固,再到利用沙箱进行隔离,这样的防护思路已经和过去主动检测、主动识别和阻断的防护思路完全不同。这套Windows平台漏洞的防护思路其实也同样可以为其他软件系统的漏洞防护所借鉴。

  漏洞要公开透明

  随着漏洞成为越来越主流的攻击方式,漏洞挖掘与修复的争夺战也远远不会停止。其实,在漏洞攻击和防护上,比拼的就是攻防双方谁能率先挖掘出漏洞,是攻击方率先挖出漏洞并实施攻击,还是防御方率先挖出漏洞并将漏洞修复。

  要做好Windows平台特别是Windows XP的漏洞防护工作,势必要时刻监测漏洞的产生并进行快速响应。张聪告诉记者,奇虎360作为微软MAPP(Microsoft Active Protections Program)计划的合作伙伴,同微软密切交换漏洞攻击与防护信息,从而及时为用户提供防护。同时,奇虎360也会通过一些公开途径获知新发现的漏洞,并且自己挖掘一些漏洞,或者将微软公布Windows 7、Windows 8漏洞进行研究,并测试其在Windows XP系统上是否存在。

  正是由于漏洞攻防战中,漏洞的挖掘和发现非常重要,所以漏洞平台的作用也逐渐突显出来,因为它可以在漏洞发现者(通常是白帽子)与漏洞厂商之间形成良性的信息传递,同时为公众提供警示。伴随利用漏洞进行攻击的增长,第三方漏洞平台也逐渐成长起来,成为抵御漏洞威胁中不可忽视的力量,比如近年来成长起来的乌云漏洞平台(WooYun.org)。

  乌云漏洞平台成立于2010年,是目前中国规模较大的安全漏洞预警平台和网络安全社区,活跃着近万名白帽子,并能够将漏洞信息第一时间传递给所有行业客户(政府、金融、运营商、国有企业)以及主流的互联网及科技公司。乌云漏洞平台市场总监邬迪告诉记者,到目前为止,乌云漏洞平台后台收到的漏洞提交记录已经近10万个,每天平均收到100个以上。在平台上注册的白帽子超过1,000个,注册的企业超过500个,各个行业用户的漏洞信息通过与国家互联网应急中心合作进行传递。

  邬迪告诉记者,乌云制定了一套合理的漏洞审批机制,充分调动了白帽子和企业的积极性。这套机制不仅能够让白帽子主动向企业提交漏洞的详情,帮助企业评估漏洞问题的严重性,还能够让企业在第一时间解决漏洞问题、避免用户遭受损失。

  “第三方漏洞平台的意义还在于提升了我国整体的信息安全意识和水平。”邬迪告诉记者,“早期,一些企业对这个平台有所抵触,认为平台公开漏洞的做法是在给企业抹黑。然而,他们在对平台了解后、就开始积极面对并解决安全问题。到现在,很多没有被披露过漏洞的企业主动来乌云注册,希望能有白帽子披露他们的漏洞,帮助他们提高。”

  “在乌云这样的漏洞平台上,白帽子能够不断学习和成长;企业能够及时发现自己的问题和风险,并从平台上的其他漏洞中汲取经验;普通大众则可以扫清对互联网安全的误解,提高个人安全意识,同时对个人隐私、数据及财产的安全更有把握。”邬迪认为。

  其实,乌云漏洞平台搭建了企业与白帽子之间的桥梁,从而可以开展各种定向的增值服务。“我们认为漏洞就应该是公开透明的,公开才能给企业形成压力,促进企业及时修复漏洞。同时,公开才能提升公众的安全意识,并提升白帽子与企业互动过程中白帽子的地位。”邬迪向记者表示,“当然,乌云具有严格、合理的漏洞公开机制,并非发现漏洞后就盲目公开,不会让这些漏洞被攻击者恶意利用并造成社会的恐慌。”

  邬迪认为,和其他的漏洞平台相比,乌云漏洞预警平台由于能确保漏洞的真实性和公开性,并拥有着远超其他平台的人气和数据,使得乌云平台的漏洞预警更精准、更能反映中国互联网安全的真实情况。

  

漏洞之辨

 

  正视漏洞别作“鸵鸟”

  有人说,鸵鸟遇到危险时会把自己的头埋入草堆里,以为自己的眼睛看不见危险就安全了。心理学家也将人们面对威胁时的消极心态称为“鸵鸟心态”。

  漏洞可能会有很长的潜伏期,也就是说即使某个漏洞被攻击者利用并完成了攻击,很长时间内如果用户并未发现该漏洞并进行修补,这扇“门”就一直在用户的系统上,向其他攻击者敞开着,用户可能浑然不知。然而,漏洞“看不见、摸不着”,具有很强的隐蔽性,也恰恰让一些企业形成了鸵鸟心态。

  “在漏洞攻击的防护上,厂商的作用其实是最关键的。如果厂商总是抱有侥幸心态,或者像鸵鸟一样不愿正视危险,不对漏洞进行积极响应和处置,就有可能造成大范围的安全危机,这种做法同时也对自己的用户不负责任。”张聪说。

  然而对于普通用户而言,除了及时升级软件、打补丁修复漏洞以外,似乎对利用漏洞进行的攻击束手无策。张聪则告诉记者,即使是漏洞攻击,同样需要载体,同样需要用户具有良好的安全意识并保持高度警惕性,比如不要随意点击陌生的链接或者邮件等。

  “最近车联网、互联网金融、智能家居、可穿戴设备等应用的兴起,让漏洞变得越来越广泛。由于这些新兴技术和应用刚刚起步,企业对其安全性的了解还在早期阶段,但是乌云已经注意到这些趋势,并引导白帽子关注这些方面的漏洞,并有针对性地提供有价值的安全预警,让相关企业关注这些领域的安全问题。”邬迪说,任何系统都有存在漏洞的可能。虽然当前企业的安全意识已经出现了显著的提升,但是当这些新兴技术和应用渐成气候,相关企业的安全意识和对待漏洞的态度也非常值得我们关注。

  链接 乌云漏洞平台公布的2014年10大安全漏洞

  1. 互联网泄密事件/撞库攻击

  以大量的用户数据为基础,利用用户相同的注册习惯(相同的用户名和密码),尝试登录其它的网站。自2011年开始,互联网泄密事件引爆了整个信息安全界,导致传统的用户名+密码认证的方式已无法满足现有安全需求。案例:CSDN数据库泄露,大量用户真实账号密码外泄。

  2. 引用不安全的第三方应用

  过去几年中,安全领域在如何处理漏洞的评估方面取得了长足的进步,几乎每一个业务系统都越来越多地使用了第三方应用,从而导致系统被入侵的威胁也随之增加。由于第三方应用平行部署在业务系统之上,如果一个易受攻击的第三方应用被利用,这种攻击将导致严重的数据失窃或系统沦陷。这些第三方应用包括开源应用、组件、库、框架和其他软件模块等。案例:淘宝主站运维不当导致可以登录随机用户并且获取服务器敏感信息。

  3. 系统错误/逻辑缺陷带来的暴力猜解

  由于应用系统自身的业务特性会开放许多接口用于处理数据,如果接口或功能未进行严谨的安全控制或判断,将会促使攻击者加快攻击应用程序的过程,大大降低攻击者发现威胁的成本。随着模块化、自动化攻击工具包的趋于完善,这将给应用带来极大威胁。案例:大公司诟病系列#1 重置京东任意用户密码。

  4. 敏感信息/配置信息泄露

  由于没有一个通用标准的防御规则保护好中间件配置信息、DNS信息、业务数据信息、用户信息、源码备份文件、版本管理工具信息、系统错误信息和敏感地址信息(后台或测试地址)等,攻击者可能会通过收集这些保护不足的数据,利用这些信息对系统实施进一步的攻击。案例:携程安全支付日志可遍历下载,导致大量用户银行卡信息泄露(包含持卡人姓名身份证、银行卡号、卡CVV码、6位卡Bin)。

  5. 应用错误配置/默认配置

  应用程序、中间件、服务端程序在部署前,未针对安全基线进行严格的安全配置定义和部署,将为攻击者实施进一步攻击带来便利。常见的风险有:Flash默认配置、Access数据库默认地址、WebDav配置错误、Rsync错误配置、应用服务器、Web服务器、数据库服务器自带管理功能的默认后台和管理口令。案例:敏感信息泄露系列#6 服务端默认配置导致海量用户信息泄露。

  6. SQL注入漏洞

  注入缺陷不仅仅局限于SQL,还包括命令、代码、变量、HTTP响应头、XML等注入。程序员在编写代码时没有对用户输入数据的合法性进行判断,当不可信的数据作为命令或查询的一部分被发送到解释器时,注入就会发生。攻击者的恶意数据欺骗解释器,让它执行意想不到的命令或者访问没有准确授权的数据。案例:虾米网的SQL注入漏洞,其1400万用户数据以及各种交易数据、主站数据均可拖库。

  7. XSS跨站脚本攻击/CSRF

  它属于代码注入的一种。XSS发生在当应用程序获得不可信的数据并发送到浏览器或支持用户端脚本语言容器时,没有做适当的校验或转义。XSS能让攻击者在受害者的浏览器上执行脚本行,从而实现劫持用户会话、破坏网站Dom结构或者将受害者重定向到恶意网站。案例:一个可大规模悄无声息窃取淘宝/支付宝账号与密码的漏洞 (埋雷式攻击)。

  8. 未授权访问/权限绕过

  多数业务系统应用程序仅仅只在用户客户端校验授权信息,或者干脆不做访问控制规则限制,如果服务端对来自客户端的请求未做完整性检查,攻击者将能够伪造请求,访问未被授权使用的功能。案例:搜狗某重要后台未授权访问(涉及重要功能及统计信息)。

  9. 账户体系控制不严/越权操作

  与认证和会话管理相关的应用程序功能常常会被攻击者利用,攻击者通过组建的社会工程数据库检索用户密码,或者通过信息泄露获得的密钥、会话token、GSID和利用其它信息来绕过授权控制访问不属于自己的数据。如果服务端未对来自客户端的请求进行身份属性校验,攻击者可通过伪造请求越权窃取所有业务系统的数据。案例:乐视网2200万用户存在越权风险。

  10. 内部重要资料/文档外泄

  无论是企业还是个人,越来越依赖于对电子设备的存储、处理和传输信息的能力。企业重要的数据信息,都以文件的形式存储在电子设备或数据中心上,企业雇员或程序员为了办公便利,常常将涉密数据拷贝至移动存储介质或上传至网络,一旦信息外泄,将加大企业安全隐患发生的概率。案例:淘宝敏感信息泄露可进入某重要后台(使用大量敏感功能和控制内部服务器)。