公开个Nday(图)

所属分类: 网络安全 / 黑客教程 阅读数: 116
收藏 0 赞 0 分享
08046估计国内很多小牛大牛搞出来了.最早知道有这么个洞大约是在今年三四月份,听某牛man说有个系统默认支持的图片格式的洞,结果四月份出了个MS08-021,POC也有公开的,当时以为传言指的就是这两个"鸡肋".没想到8月份MS又出了MS08-046,分析过程如下:
先认真看了一遍MS的公告,从公告中可以知道文件格式是EMF,出错模块是MSCMS,具体有漏洞的地方和ICC文件有关系.这样看来PoC应该和MS08-021有点类似.
然后是补丁比较,由于MSCMS模块只有80KB,很快就可以找到出错函数名为OpenColorProfileW,分析出错函数虽然我没有看出有明显的溢出,但知道了该函数主要是通过一个传递过来的文件名(文件名长度要小于104h),在文件名前面补上一个系统目录后再打开这个文件.同时补丁后的功能在处理文件名的时候对长度做了一些处理,所以估计为ICC文件名长度超长所造成的溢出.
第三步构造POC,由于有分析MS08-021的经验,我知道在EMF文件中与ICC文件名相关的Recoder只有几个,在MSDN中都可以搜到,于是写了个GUI程序,然后依次调用GetDC,GetClientRect,CreateEnhMetaFile,SetICMProfileA,CloseEnhMetaFile,ReleaseDC等API构造了一个模版,然后在OpenColorProfileW入口处下断点,就发现在处理SetICMProfileA这个API函数所生成的EMR_SETICMPROFILEA记录时可以走到断点处.但是并不会走到出错的代码块,分析了一下代码流层原来所传入的文件名一是不能超过104h二是文件名的开头必须要以http://开头(怪不得分析08021的时候没找到这个洞).
该写EXP了,由于构造出了POC,也就很容易的发现了出错原理为:在分配存放文件名和路径的内存的时候计算长度是用的lstrlenW,所以造成分配的内存空间只有实际COPY数据的一半,这样就覆盖了后面的堆管理结构及其它一些数据.到这儿漏洞已经可以定性了,就是一个比较标准的堆溢出,在后面的释放或是合并这个堆的时候会造出指针互写的错误,当然由于XPSP2所增加的安全机制,造成这个洞很难利用.不过在IE中有时异常会发生在call [ecx xx]或是mov ecx,[eax](后面是call [ecx xx]),而ECX,EAX为我们传入的文件名转换为UNICODE后的值.再次调试分析后发现:超长串所覆盖的数据中有时会是一个函数指针,而在这个堆释放或是合并之前就会引用这个函数指针.所以一种可能的利用方法就是在IE中用HEAP SPRAY的方法和该漏洞结合.EMF文件中填充的字符串为0040007X(另外为了增大覆盖函数指针的机率你还可以多加几个有超长文件名的记录),或是用JAVA分配内存填充数据为2xXXXXXX.
POC附图:


更多精彩内容其他人还在看

3389远程终端的SHIFT后门自动扫描[自动关闭错误连接]

首先3389的SHIFT后门极少 其次大部分SHIFT后门都加密 所以手工一个一个尝试是挺傻的,写成自动扫描的话,还能让人忍受
收藏 0 赞 0 分享

CSRF的攻击方式详解 黑客必备知识

CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF
收藏 0 赞 0 分享

抓取管理员hash值(哈希)的另类方法

哈希算法将任意长度的二进制值映射为固定长度的较小二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计
收藏 0 赞 0 分享

网站安全教程 绕过D盾进行注入的方法(图文教程)

D盾_IIS防火墙专为IIS设计的一个主动防御的保护软件,以内外保护的方式 防止网站和服务器给入侵,在正常运行各类网站的情 况下,越少的功能,服务器越安全的理念而设计! 限制了常见的入侵方法,让服务器更安全!
收藏 0 赞 0 分享

WikkaWiki 1.3.2 Spam Logging PHP注射的方法

WikkaWiki 1.3.2 Spam Logging PHP注射的详细方法代码
收藏 0 赞 0 分享

局域网安全教程 HSRP攻击和防范的方法介绍(图文教程)

热备份路由器协议(HSRP)的设计目标是支持特定情况下 IP 流量失败转移不会引起混乱、并允许主机使用单路由器,以及即使在实际第一跳路由器使用失败的情形下仍能维护路由器间的连通性。换句话说,当源主机不能动态知道第一跳路由器的 IP 地址时,HSRP 协议能够保护第一
收藏 0 赞 0 分享

Free Realty v3.1-0.6的缺陷介绍及其修复方法

Free Realty v3.1-0.6的缺陷介绍及其修复方法,请看下面
收藏 0 赞 0 分享

SQL通用防注入系统asp版漏洞

今晚群里朋友叫看个站,有sql防注入,绕不过,但是有发现记录wrong的文件sqlin.asp。
收藏 0 赞 0 分享

伪黑客的成功的秘密:tomcat入侵和Jboss入侵的方法介绍(图)

黑客必须要有专业的知识,丰富的经验。而伪黑客不需要,只需要几个工具,扫描默认口令、弱口令、漏洞,就能利用。
收藏 0 赞 0 分享

黑客对社交网站攻击的常见五大手法(图文)

揭开社交网站背后的暗黑秘密
收藏 0 赞 0 分享
查看更多