微点交流论坛
» 游客:  注册 | 登录 | 帮助

 

作者:
标题: [360mj0011]微点主防1._ Mp110013.sys <= 1.3.10123.0本地内核权限提升漏洞
点饭的百度空间
银牌会员




积分 2315
发帖 2236
注册 2007-11-30
#1  [360mj0011]微点主防1._ Mp110013.sys <= 1.3.10123.0本地内核权限提升漏洞


2010-4-26 17:41 预升级最新版本已解决,请升级到微点最新版本测试。



漏洞涉及产品:微点主动防御100323.1.2.10581.0278.r1及以下版本

mp110013.sys <= 1.3.10123.0


漏洞影响:

通过漏洞攻击者在最低系统权限下执行内核权限代码,从而可以突破任何存在的安全防护软件,包括沙盘、主动防御、杀毒软件、防火墙、HIPS、UAC和系统安全设置

漏洞详细原理和利用方法

微点主动防御的驱动程序Mp110003.sys中存在这样一个功能,允许用户提供PspCreateProcessNotifyRoutineCount和PspCreateProcessNotifyRoutine 相对于ntoskrnl的偏移,提供后,微点将在mp110003中处理这个偏移,从偏移地址获取PspCreateProcessNotifyRoutine数组,并寻找自己在其中注册的项目,将此项目位置作为数值A

接着在其对于NtCreateProcessEx的钩子和系统线程中,高频率检查PspCreateProcessNotifyRoutineCount中的数值是否小于数值A,如果小于,则关闭系统内存写保护,并将数值A写回到PspCreateProcessNotifyRoutineCount指向的内存

由于偏移地址可随意指定,因此用户态的程序可以使微点驱动写入任意内核地址,但这个漏洞的利用条件实际是比较苛刻的,需要满足下面3个条件:

(1).由于微点会开启系统线程去访问PspCreateProcessNotifyRoutineCount和PspCreateProcessNotifyRoutine,因此我们不能指定一个位于用户态内存的地址。

(2).PspCreateProcessNotifyRoutine又必须满足要存在一项微点自己的回调函数,这是比较困难的,因为NotifyRoutine的结构在XP下有一点麻烦,最好是使用原始的地址了。

(3).PspCreateProcessNotifyRoutineCount指向的内存中的数值必须小于当前真正的回调函数个数,又能被某一个RING3程序可以调用的系统调用访问或执行,因为系统只允许最多8个回调函数,所以最终写入数值只可能是1~8之间,因此必须申请0号地址内存去执行。

这里我使用了PspLegoNotifyRoutine这个东东,这个回调首先系统通常是空的,满足条件3,同时可以通过线程的结束来控制,这个通知条件是KThread->LegoData不为空,由于这个地址通常也是空的,因此我们同样可以利用这个漏洞来将其设为非空,最后由于我们需要申请0号地址来执行代码,因此不能用进程主线程干这个事,因为LegoNotfiy 执行时机在PspExitThread中比较晚,那时如果是主线程销毁,进程的VM已经被销毁了。

利用程序:http://hi.baidu.com/mj0011/blog/ ... 9fe0f152664fa4.html 漏洞演示目录下mp0day1.exe

漏洞利用的结果是在内核态向系统所有进程的ntdll.dll基址偏移0x8写入“6543”

这里利用程序有一些平台相关的处理,懒得做兼容了,目前只支持XP。

※ ※ ※ 本文纯属【点饭的百度空间】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

你的微笑 is 微点的骄傲!
http://hi.baidu.com/new/micropoint
2010-6-4 14:31
查看资料  发送邮件  访问主页  发短消息   编辑帖子
snhao
银牌会员




积分 1791
发帖 1782
注册 2007-6-12
#2  

这都好久了,怎么现在才发上来啊?

[ Last edited by snhao on 2010-6-4 at 15:31 ]

※ ※ ※ 本文纯属【snhao】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

东方微点论坛
2010-6-4 15:24
查看资料  发短消息   编辑帖子
snhao
银牌会员




积分 1791
发帖 1782
注册 2007-6-12
#3  

领导不让发了,咱们再也看不到mj的身影了……
话说微点这样做不好,不利于进步。

※ ※ ※ 本文纯属【snhao】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

东方微点论坛
2010-6-4 15:26
查看资料  发短消息   编辑帖子



论坛跳转:

可打印版本 | 推荐 | 订阅 | 收藏


[ 联系我们 - 东方微点 ]


北京东方微点信息技术有限责任公司 福建东方微点信息安全有限责任公司

闽ICP备05030815号