据 国家互联网应急中心(CNCERT)统计 ,仅2015年3月,国内监测发现的感染移动互联网恶意程序的用户数量就为647万余个、被木马或僵尸程序控制的IP 地址为92万余个、针对境内网站的仿冒页面数量近2万个。其中,针对浏览器的恶意攻击与入侵占据了很大比重。鉴于此,微软公司在Windows 10系统集成的Edge浏览器中特别加强了安全方面的防护工作。
网络攻击可分被动式的钓鱼攻击和主动式的黑客攻击。据 微软公司Edge研发团队透露 ,Edge浏览器针对这两种攻击方式中的多种攻击行为设置了专门的防御机制。其针对被动式的钓鱼攻击所做的加强主要包含以下几个方面。
首先,Edge浏览器直接利用很多Windows 10系统的新特性来应对钓鱼攻击。例如,针对很多网站要求用户明文输入用户名和密码的情况。Windows 10提供了使用非对称加密算法的微软Passport服务来避免明文登陆。此外,针对很多网站本身就是钓鱼网站或者隐藏有恶意软件下载链接的情况, Microsoft SmartScreen可以对用户所访问站点的信誉进行检查,对可能的钓鱼网站发出提醒。此外,SmartScreen还可以对下载的的恶意软件进行检查。最后,针对恶意攻击导致证书颁发机构颁发欺诈性或未经授权数字证书的情况,微软去年已经宣布了 Root Certificate 项目。最近,微软又进一步扩展了该系统,允许网页开发人员通过Bing Webmaster工具来向微软汇报伪造证书的案例。这就使得用户之间可以相互帮助,有效避免恶意网站的攻击。
其次,Edge浏览器本身也在应对钓鱼式攻击上进行了改进。微软Edge团队主持研发了一个新的渲染引擎—— Microsoft EdgeHTML 。使用该引擎,开发人员可以轻松建立一个适用于所有当前流行的浏览器的网站。通过该引擎,Edge团队试图令开发人员可以在可靠性和安全性方面做更多的工作。
在针对主动式黑客攻击方面,Edge浏览器还对浏览器内存中的DOM表示进行了修改,使得浏览器代码能够更好的防御黑客攻击。具体而言,Edge浏览器所做的加强可以分为以下几个方面。
首先,针对ActiveX插件引入的安全问题,微软Edge团体提在新的浏览器中放弃了原有的ActiveX等技术,改为使用基于HTML5和JavaScript的扩展模式。HTML5可以有效减少网站对于VML、VB Script、Toolbars、BHO以及ActiveX的需求。这样,兼容HTML5的微软Edge浏览器既能保证良好的用户体验,又能很好的提高安全性。
其次,Edge浏览器在安全方面的一个巨大改变就是Edge浏览器本身就是一个Universal Windows应用程序,使其对外部管理器及内容的处理都限制在沙盒内。微软早在Vista系统上的IE 7中就开始使用沙盒机制,在windows 8上,微软引入了加强型保护模式( EPM )。EPM能够提供比保护模式更强的沙盒功能,而且在系统自带的浏览器中是默认打开的。 据报道 ,很多与保护模式不兼容的插件会主动关闭浏览器的保护模式。微软Edge浏览器进行了修改,使得EPM处于一直打开状态,从而保证了客户端的安全。
在另外一方面,内存溢出是黑客攻击常用的手段。微软从上世纪90年代开始已经提出了各种避免内存崩溃的方法。在Visual Studio 2015中,微软就推了一个新特征——控制流警卫( CFG )。该选项可以让C++编译器在二进制文件中注入额外的安全检查代码,用来保证间接跳转只会指向函数的进入点。通过CFG,系统限制了程序在崩溃时的跳转点,使得攻击者的攻击难度加大。目前,CFG等技术都已经应用到了Edge浏览器中。
最后,微软Edge浏览器可以在64位模式下运行。一般情况下,64位的进程,尤其是浏览器进程可以通过微软地址空间随机分配技术( ASLR )来加强安全性。微软在Windows 10的预览版中还集成了Bug汇报奖励程序,鼓励安全研究人员报告浏览器的安全漏洞。
目前,Edge浏览器仍然处在调试阶段。今年夏天,它将随Windows 10操作系统正式发布。
感谢魏星对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群 )。