查看: 12725|回复: 23
收起左侧

[分享] Win10安全特性解析,看管家如何出招!

[复制链接]
腾讯电脑管家
发表于 2015-2-4 16:29:28 | 显示全部楼层 |阅读模式
微软在2015年1月22日公布了windows10技术预览版,Build号:9926。电脑管家团队第一时间对其引入的新安全特性进行了深入分析。
众所周知,漏洞利用过程中攻击者若要执行恶意代码,需要破坏程序原有指令的的正常执行。执行流保护的作用就是在程序执行的过程中检测指令流的正常性,当发生不符合预期的情况时,及时进行异常处理。业界针对执行流保护已经有一些相对成熟的技术方案,在微软发布的windows10最新版本中,我们看到了这一防护思想的广泛使用。
一、CFI
CFI即控制流完整性Control-Flow Integrity,主要是通过对二进制可执行文件的动态改写,以此为其增加额外的安全性保障。

这是MihaiBudiu介绍CFI技术时使用的例子。这里通过对二进制可执行文件的改写,对jmp的目的地址前插入一个在改写时约定好的校验ID,在jmp的时候看目的地址前的数据是不是我们约定好的校验ID,如果不是则进入错误处理流程。
同理在call 和 ret的时候也可以进行改写:

左半部分就是一个对call的改写,右半部分是对ret的一个改写,在call的目的地址和ret的返回地址之前插入校验ID,然后改写的call 和ret中增加了对校验ID的检查,如果不符合预期,进入错误处理流程,这个思路和上边对jmp的处理是完全一样的。
二、CFG
实现CFI需要在jmp、call 一个寄存器(或者使用寄存器间接寻址)的时候,目的地址有时必须通过动态获得,且改写的开销又很大,这些都给CFI的实际应用造成了一定的困难。
微软在最新的操作系统win10当中,对基于执行流防护的实际应用中采用了CFG技术。CFG是Control Flow Guard的缩写,就是控制流保护,它是一种编译器和操作系统相结合的防护手段,目的在于防止不可信的间接调用。
        漏洞攻击过程中,常见的利用手法是通过溢出覆盖或者直接篡改某个寄存器的值,篡改间接调用的地址,进而控制了程序的执行流程。CFG通过在编译和链接期间,记录下所有的间接调用信息,并把他们记录在最终的可执行文件中,并且在所有的间接调用之前插入额外的校验,当间接调用的地址被篡改时,会触发一个异常,操作系统介入处理。
以win10 preview 9926中IE11的Spartan html解析模块为例,看一下CFG的具体情况:

这里就是被编译器插入的CFG校验函数。

但是静态情况下默认的检测函数是一个直接return的空函数,是微软在和我们开玩笑吗?

通过动态调试看一下

从上图我们可以看出,实际运行时的地址和我们通过IDA静态看到的地址是不一样的,这里就涉及到CFG和操作系统相关的那部分。支持CFG版本的操作系统加载器在加载支持CFG的模块时,会把这个地址替换成ntdll中的一个函数地址。不支持CFG版本的操作系统不用理会这个检测,程序执行时直接retn。
这是ntdll中的检测函数

原理是在进入检测函数之前,把即将call的寄存器值(或者是带偏移的寄存器间接寻址)赋值给ecx,在检测函数中通过编译期间记录的数据,来校验这个值是否有效。
三、电脑管家XP防护的执行流保护
早些年的漏洞攻击代码可以直接在栈空间或堆空间执行指令,但近几年,微软操作系统在安全性方面逐渐加强,DEP、ASLR等防护手段的应用,使得攻击者必须借助ROP等绕过手段来实现漏洞利用。在ROP利用中,栈交换指令Stack pivot必不可少。
针对ROP攻击的防御长久以来是漏洞防御的一个难题,因为ROP指令在静态层面分析与程序的正常指令流毫无差别,且运行时也是在合法模块内执行,因此极难防御。
管家漏洞防御团队针对ROP利用的特点,从整个程序的执行流层面进行分析,研究出在动态运行时区分是合法指令流还是异常指令流的方法,其思想与CFI不谋而合。

下边就是一个由于错位汇编形成的比较常用的栈交换指令

而实际正常的执行流程是这样的

以上是没有开启XP防护的情况
开启电脑管家XP防护之后:


此时如果攻击者依靠静态分析时得到栈交换指令位置来执行ROP攻击的话,会被执行流保护逻辑发现异常,后续攻击则无法实现。
四、尾声
CFG防护方法需要在编译链接阶段来完成准备工作,同时需要操作系统的支持。CFI无需编译时的帮助,且不仅能够防御call调用,能够对全部执行流进行保护。但CFI需要插入大量的检测点,并且在执行过程中检测的频率极高,难免对程序执行效率带来影响。
电脑管家XP版的防御方法相比于前两者,对性能的影响更小,但这种方法是针对旧版操作系统的缓解方案,通用性会打折扣。所以建议广大windows用户尽量升级到最新操作系统,享受全面的安全保护。而由于某些原因无法升级的用户也不必担心,管家XP版会继续提供最高的安全防护能力。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
大爱管家
发表于 2015-2-4 18:41:35 | 显示全部楼层
请问电脑管家何时彻底去除弹广告的功能,或者在设置中弄一个也行。今天又给我弹了“暗云”
驭龙
发表于 2015-2-4 18:53:28 | 显示全部楼层
这样的帖子还是可以有的,来支持一下,顺便问一个问题

官方更新日志中:
----------1月27日----------
【新增】游戏加速新工具,助你畅快游戏
【优化】下载保护增强对网盘的保护支持
【优化】防火墙及主防能力提升

这个防火墙及主防能力提升中的防火墙是什么防火墙?是网页防火墙?还是添加网络防火墙了?
这个我一直没有弄明白
诸葛亮
发表于 2015-2-4 19:35:59 | 显示全部楼层
驭龙 发表于 2015-2-4 18:53
这样的帖子还是可以有的,来支持一下,顺便问一个问题

官方更新日志中:

估计是管家的ARP防火墙
驭龙
发表于 2015-2-4 19:44:32 | 显示全部楼层
诸葛亮 发表于 2015-2-4 19:35
估计是管家的ARP防火墙

管家的ARP防火墙,我记得好像是在工具箱里吧?不应该是更新日志中提到的防火墙
诸葛亮
发表于 2015-2-4 19:46:56 | 显示全部楼层
驭龙 发表于 2015-2-4 19:44
管家的ARP防火墙,我记得好像是在工具箱里吧?不应该是更新日志中提到的防火墙

那我就不明白了,,,
驭龙
发表于 2015-2-4 19:51:40 | 显示全部楼层
诸葛亮 发表于 2015-2-4 19:46
那我就不明白了,,,

是啊,我也想不明白是什么防火墙,所以来问官方。

不过管家有网页防火墙 U盘防火墙 漏洞防火墙,所以我不清楚更新的是什么墙
vdmcontrol
发表于 2015-2-4 20:03:37 | 显示全部楼层
本帖最后由 vdmcontrol 于 2015-2-4 20:05 编辑

抄袭大王腾讯很搞笑,学人玩技术,还总闹笑话。

CFG 早在几年前的WIN8.1 BETA就有了,根本不是WIN10引入的,更不是9926

WIN10的9860包括更早的版本就已经默认开启了CFG,现在WIN8.1都开启了CFG,分析文章早就飞满天了,现在还来分析还号称WIN10安全特性。。。国外的不说国内的360去年在POC安全会议上就分析了CFG,而且分析得比腾讯的这篇详细太多,还指出了CFG的多个设计缺陷和安全漏洞,比腾讯这个不知道高到哪里去了。

可以看看POC的议题,早都公开了。
http://powerofcommunity.net/2014.htm

要说WIN10 9926的安全分析还得看360:

http://blogs.360.cn/blog/windows10_font_security_mitigations/

这个才是WIN10 9926引入的重量级安全特性。

腾讯为了扯淡炒冷饭把这么老的别人已经分析过N轮的东西硬是塞到WIN10 9926上实在是丢人现眼,让KEEN和TK的老脸往哪里放?

评分

参与人数 2人气 +2 收起 理由
22667999 + 1 加分鼓励
轻巧夺命 + 1 版区有你更精彩: )

查看全部评分

pal家族
发表于 2015-2-4 22:21:49 | 显示全部楼层
驭龙 发表于 2015-2-4 18:53
这样的帖子还是可以有的,来支持一下,顺便问一个问题

官方更新日志中:

是网页防火墙 我问了的 至于主防,都不理我
那些论坛版主自己都水,不了解相关安全知识
驭龙
发表于 2015-2-5 08:12:19 | 显示全部楼层
pal家族 发表于 2015-2-4 22:21
是网页防火墙 我问了的 至于主防,都不理我
那些论坛版主自己都水,不了解相关安全知识

我猜测就是这样,不过日志说的不清楚,不太好,让人看不明白
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-22 00:14 , Processed in 0.136112 second(s), 18 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表