SpartanBrowser产品和安全特性简介
v:* { }
o:* { }
w:* { }
.shape { }p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; font-size: 10.5pt; font-family: "Calibri", "sans-serif" }
h3 { margin-right: 0cm; margin-left: 0cm; font-size: 13.5pt; font-family: 宋体; font-weight: bold }
p.MsoHeader,li.MsoHeader,div.MsoHeader { margin: 0cm; margin-bottom: .0001pt; text-align: center; border: none; padding: 0cm; font-size: 9.0pt; font-family: "Calibri", "sans-serif" }
p.MsoFooter,li.MsoFooter,div.MsoFooter { margin: 0cm; margin-bottom: .0001pt; font-size: 9.0pt; font-family: "Calibri", "sans-serif" }
a:link,span.MsoHyperlink { color: blue }
a:visited,span.MsoHyperlinkFollowed { color: purple }
p { margin-right: 0cm; margin-left: 0cm; font-size: 12.0pt; font-family: 宋体 }
p.MsoAcetate,li.MsoAcetate,div.MsoAcetate { margin: 0cm; margin-bottom: .0001pt; text-align: justify; font-size: 9.0pt; font-family: "Calibri", "sans-serif" }
span.Char { }
span.Char0 { }
span.Char1 { }
span.3Char
{ font-family: 宋体; font-weight: bold }
span.SpellE { }
.MsoChpDefault { }
div.WordSection1 { }table.MsoNormalTable { font-size: 10.5pt; font-family: "Calibri", "sans-serif" }
SpartanBrowser产品和安全特性简介
电脑管家的网页防火墙已经第一时间对Spartan浏览器进行安全支持,管家用户可以安全浏览上网。下载地址:http://guanjia.qq.com/win10/?ADTAG=web.gj.qj.banner2
微软为什么要开发新浏览器?
IE的一些不好评价,尤其是安全性上的评价,已经直接在影响业界对微软技术能力的评价,很多软件公司甚至不愿意开发与IE兼容的软件。事实上,由于IE浏览器在网页响应速度、抵挡黑客或病毒攻击、对最新技术的兼容度、人性化浏览设置等方面一直存在缺陷,使得近年来软件业围绕浏览器的争夺战愈演愈烈。谷歌、火狐、360等中外软件企业都开发出了自己的浏览器,并各自吸引了一批用户,导致IE的市场份额持续下滑。
新的Spartan浏览器主打轻快安全特点,刚好对应IE的重慢不安全等不良因素,微软计划凭借Spartan扭转在浏览器市场的地位,同时塑造更好的企业形象。
全球浏览器市场份额一览(时间点:2014年11月)。
统计方法不同导致市场份额有较大差异,但是不变的是IE的市场份额在持续下滑。
Spartan在这场角力中将扮演继续沉沦还是逆袭的角色,让我们拭目以待。
产品特性
1、取代IE这是肯定的,正式版本将取代IE11的位置,被固定在任务栏。
2、Spartan支持网页标注,并且可以与其它Spartan用户分享。
解读:这是要给浏览器带上社交属性啊,但不得不说这是一种很好的分享途径。
标注的结果可以存放在本地,也可以放到oneNote,前提是你安装了oneNote(Windows默认集成),拥有这一个功能之后,你可以和别人分享你的标注结果。
4、阅读模式。
解读:用过Chrome的扩展“印象笔记”的应该很熟悉这一应用,简直就是逆天。开启阅读模式之后,浏览器通过摘要算法提取当前页面的正文内容之后,覆盖原页面新起一个窗口进行浏览,广告,杂乱的信息都没了,只剩下干净的正文,大家可以通过下面的图片对比体验一下。
开启阅读模式之后。
5、使用全新的EDGE渲染引擎。
解读:抛弃IE的兼容性包袱,跑得更加轻快,对网页新特性支持得也更好,估计能更好的吸引Web开发者。另外值得称道的是Edge引擎的接口(包括EdgeHtml.dll渲染引擎和Chakra.dll JS引擎)完全和IE的引擎一致(MsHtml.dll和jscript*.dll),因此实际上IE是可以直接使用Edge引擎的,实际上也确实可以的,目前Windows10上面的IE11是通过实验功能提供的。在IE地址栏输入about:flags,然后将EnableExperimental Web Platform Features功能设置为已启用,然后应用更改(要禁用设置为Disabled即可)。即上演替代大法,IE的渲染引擎就完全被Edge替代了。
从这里也可以看出国内其它的IE内核浏览器(譬如QQ浏览器)要使用Edge引擎也是轻而易举的。
6、网络模型上沿用了IE11的最新架构,效率极高。
解读:IE11的成功给了Spartan很多借鉴。网络模型上沿用了IE11的最新架构,效率极高。
HTTP请求使用了完成端口模型,并用系统高效线程池优化数据收发,每次收数据时,预收1K数据,合理控制收包数量。对HTTP Response也进行了解析优化,只认为第一个回包是HTTP头,其它都是数据,显然这是一个策略上合理改变,同时也提升了解析效率(这个改变导致管家网页防火墙的拦截出现问题,费了不少力气才解决)。
7、号称将支持新的扩展。
解读:截至发文前Spartan浏览器还不支持扩展和插件(现在还是Project Spartan呢)。微软之前曾经号称Spartan要兼容Chrome的扩展,如果微软真的能兼容一部分Chrome的扩展,已经很不错了。Chrome的扩展已经被证明是易开发,易使用的,而且不像Native插件饱受漏洞的困扰。
安全特性
这两张图片来之微软的一篇Paper《SpartanDisclosure.pdf》,从图中大概可以嗅探到Spartan将用到一些安全新特性,当然IE11已经启用的安全特性,Spartan也是继续延续的,希望能甩掉IE的不安全帽子,每月的补丁日都来个IE累积安全更新,一年还来一两次IE紧急更新也是醉了。
下面我们简单了解下这些新的安全特性。
1、Spartan的框架进程也运行在了AppContainer完整性权限。
解读:完整性权限并不是一个新东西。从已有一些浏览器的架构来说,框架进程一般都是Medium权限,Spartan的做法是再次从系统层面降低了框架进程的权限,框架进程运行在AppContainer完整性权限的好处是整个浏览器访问系统资源更加受限。在进行沙箱突破时也会更加困难,在突破Chrome的沙箱时,一种思路就是利用Chrome的框架进程和渲染进程的IPC通信来进行突破,因为Chrome的框架进程的权限还是Medium,权限相对AppContainer来说高了几个等级。
2、Spartan的渲染进程(tabs)缺省情况下都是运行在增强保护模式下(沙箱)。
解读:IE11一般情况下需要启动EPM(增强保护模式)才能让渲染进程运行在AppContainer权限(进沙箱),默认进入显然更加安全。
3、IE下的Toolbars、BHO等浏览器扩展都不再支持。
解读:减少攻击平面,安全性更高。BHO等Native插件本身可能没有什么漏洞,但是BHO使用的一些技术手段,譬如常用的detours等库,因为本身有一些实现上的缺陷,导致漏洞利用变得容易,譬如detours修改了PE头的可执行属性,跳板代码放置在内存中的固定位置等等,直接不支持这些插件,可能对插件作者是一个打击,但是对安全性来说显然是更高的,不用再去考虑这些不可控的东西。
4、ActiveX控件受到更加严格的限制,权限极低。
解读:ActiveX控件的泛滥严重影响着IE的安全,虽然一些ActiveX控件的漏洞严格来说不属于浏览器的漏洞,但是严重影响着IE的口碑,看来Spartan是要在这块下很手了。
5、禁用vbscript,减少攻击利用手段,安全性更高。
解读:利用vbscript来绕过nozzle已经是比较成熟的技术,直接禁用vbscript则是从源头上堵死了这种利用手段。2014年有一个神一般的漏洞被曝光,CVE-2014-6332,这个漏洞通杀IE3.0~IE11,破坏性可见一斑,这个漏洞本身并不是vbscript的漏洞,但是它利用vbscript的一些语言上的特性,关闭了vbscript的SafeMode模式(传说中的开启上帝模式),然后直接获得系统权限,不用绕什么DEP,ASLR了,也不用布置什么精巧的shellcode,在IE里面想干啥就干啥。
当然Spartan上面应用的安全特性远远不止上面这些,还有很多已经在IE11里面实现,Spartan直接就沿用过来了,这里就不再做过多解读,有兴趣的童鞋可以去看看隔离堆(反heapspay),内存延迟释放(反UAF攻击),CFG(反UAF攻击),沙箱等等安全知识。
参考文档
[1] http://www.mydrivers.com/
[2] http://www.cnbeta.com/articles/381555.htm
[3] SpartanDisclosure
[4] Living on the edge – our next step in helping the web just work http://blogs.msdn.com/b/ie/archive/2014/11/11/living-on-the-edge-our-next-step-in-interoperability.aspx
[5] Project Spartan and the Windows 10 January Preview Build http://blogs.msdn.com/b/ie/archive/2015/01/22/project-spartan-and-the-windows-10-january-preview-build.aspx
[6] http://www.199it.com/archives/261940.html
[7] 有关IE VB神洞CVE-2014-6332 http://blog.vulnhunt.com/index.php/2014/11/18/about_cve-2014-6332/
[8] 斯巴达浏览器http://baike.baidu.com/item/%E6%96%AF%E5%B7%B4%E8%BE%BE%E6%B5%8F%E8%A7%88%E5%99%A8
SpartanBrowser产品和安全特性简介的更多相关文章
- [转帖]sql server版本特性简介、版本介绍简介
sql server版本特性简介.版本介绍简介 https://www.cnblogs.com/gered/p/10986240.html 目录 1.1.sql server的版本信息 1.2.版本重 ...
- ES6新特性简介
ES6新特性简介 环境安装 npm install -g babel npm install -g babel-node //提供基于node的REPL环境 //创建 .babelrc 文件 {&qu ...
- AsyncLocal 与 ThreadLocal ThreadStatic特性简介
AsyncLocal 与 ThreadLocal [.NET深呼吸]基于异步上下文的本地变量(AsyncLocal) https://www.cnblogs.com/tcjiaan/p/5007737 ...
- Microchip编译器产品线—MPLAB XC简介
以下为Microchip最新编译器产品线—MPLAB-XC简介 MPLAB-XC:适合所有PIC单片机和项目的编译器解决方案 Microchip最新编译器产品线—MPLAB-XC为项目开发的软件需求提 ...
- sql server版本特性简介、版本介绍简介
1.SQL Server 版本简介 1.1.sql server的版本信息 年 代 版 本 大版本号 1993年 SQL Server for Windows NT 4.21 1994年 ...
- haproxy的丰富特性简介
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- NewSQL数据库VoltDB特性简介
VoltDB是一个革命性的新型数据库产品,被称作NewSQL数据库.它基于H-Store,号称比当前数据库产品的吞吐量高45倍,同时又具有很高的扩展性.它的特性主要有以下几点: Ø 高吞吐.低延迟: ...
- ML.NET 0.8特性简介
本周.NET生态圈内的更新源源不断,除了.NET Core 2.2,ASP.NET Core 2.2和Entity Framework Core 2.2之外,ML.NET 0.8也一并登上舞台. 新的 ...
- Golang 特性简介
by sheepbao 主要大概介绍go语言的历史和特性,简单的入门. 来历 很久以前,有一个IT公司,这公司有个传统,允许员工拥有20%自由时间来开发实验性项目.在2007的某一天,公司的几个大牛, ...
随机推荐
- gdb不知为何显示2次析构
gdb不知为何显示2次析构 (金庆的专栏 2016.11) gdb 显示2次 A::~A(): (gdb) bt #0 A::~A (this=0x602010, __in_chrg=<opti ...
- 自定义一个仿Spinner
两个布局文件: adpter_list.xml <?xml version="1.0" encoding="utf-8"?> <LinearL ...
- Lua语言模型 与 Redis应用
Lua语言模型 与 Redis应用 标签: Java与NoSQL 从 2.6版本 起, Redis 开始支持 Lua 脚本 让开发者自己扩展 Redis. 本篇博客主要介绍了 Lua 语言不一样的设计 ...
- Java中synchronized的使用实例
一.使用场景 在负责后台开发的时候,很多时候都是提供接口给前端开发人员去调用,会遇到这样的场景: 需要提供一个领奖接口,每个用户名只能领取一次,我们可以将成功领取的用户在数据库用个标记保存起来.如果这 ...
- SpriteKit关于SKScene中的渲染Loop
在本节中,我将来说明一下SKScene在SKView显示之后发生了神马. 在更传统的iOS app中,你可能只会渲染view的内容仅仅一次,然后它将保持静态直到view的模式发生了显示的改变,这对于商 ...
- SpriteKit塔防游戏动态改变防御塔价格标签的颜色
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 本篇blog在DinoDefense塔防游戏基础之上做一处小的 ...
- Xcode的playground中对于SpriteKit物理对象的更新为何无效
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 为了便于SpriteKit中物理行为的调试,我们可以借助于Xc ...
- ROS_Kinetic_27 在ROS中使用Cartographer进行SLAM
ROS_Kinetic_27 在ROS中使用Cartographer进行SLAM Cartographer是谷歌新開源的通用的2D和3D定位與構圖同步的SLAM工具,並提供ROS接口. 论文Real- ...
- Android初级教程理论知识(第十章Fragment与动画)
Fragment 用途:在一个Activity里切换界面,切换界面时只切换Fragment里面的内容 生命周期方法跟Activity一致,可以理解把其为就是一个Activity 定义布局文件作为Fra ...
- C语言中extern关键字的使用
C语言中extern关键字的使用,直接上代码. file1.c文件 #include<stdio.h> extern long power(int); int A = 2; int mai ...