如果 Win32k.sys 内核模式驱动程序不正确地处理内存中的对象,则存在一个特权提升漏洞。 成功利用此漏洞的攻击者可以运行内核模式中的任意代码。 攻击者可随后安装程序;查看、更改或删除数据;或者创建拥有完全用户权限的新帐户。 该更新通过更正 Windows 内核模式驱动程序处理内存中对象的方式来解决漏洞。
要利用此漏洞,攻击者必须先登录到系统。 然后,攻击者可以运行一个为利用此漏洞而特制的应用程序,从而完全控制受影响的系统。
此漏洞已公开披露。 发布此安全公告时,Microsoft 已经获悉会利用漏洞进行非常有限的目标攻击。
https://technet.microsoft.com/library/security/MS15-051
原始来源信息是Fireye报道的俄国APT28团队用的0day:
Operation RussianDoll: Adobe & Windows Zero-Day Exploits Likely Leveraged by Russia’s APT28 in Highly-Targeted Attack
https://www.fireeye.com/blog/threat-research/2015/04/probable_apt28_useo.html
Apply MS15-051 for fix. https://technet.microsoft.com/library/security/MS15-051
https://github.com/hfiref0x/CVE-2015-1701/tree/master/Compiled
源码:https://github.com/hfiref0x/CVE-2015-1701/tree/master/Source
加上了对2003的支持,又精简了部分代码,加上了ntdll.lib库,最后支持在webshell下运行。
原始代码即使编译成2003兼容的格式在03上也是不能执行的,因为win7以下的系统没有导出user32!gSharedInfo,只能解析pdb或者搜索特征码来定位;另外不同系统的EPROCESS->Token偏移也有所不同,这些修改在工程内已经添加了。
工程是vs2010的源码,能直接编译。工程内附带两个编译好的exp,在2003 64位和32位上均测试成功。我测试用的虚拟机版本是sp2,不保证其他版本能用。
如果发现某个版本不能用的话,把版本号告诉我吧,我再修改(能带着对应版本的系统镜像下载地址就最好不过了)。
这个漏洞是不影响win8及以上版本的,所以只能做到这些了。
注意:附件中的exe用菜刀执行的话取不到回显,实际上命令已经执行了(如果输出了pid的话)。
在aspxspy中执行是没有问题的,菜刀的asp马可以用下面这个脚本:
set x=createobject("wscript.shell").exec("c:\inetpub\wwwroot\ms15-051.exe ""whoami /all""")
response.write (x.stdout.readall & x.stderr.readall)
源码已经更新,重新编译一遍就没问题了~
测试截图:
下载地址: ms15-051.zip
百度网盘:http://pan.baidu.com/s/1eQ1ZOzC
解压密码见注释。 【来源:http://z-cg.com/post/ms15_051_fixed.html】