Lucene search

K
seebugRootSSV:20169
HistoryOct 15, 2010 - 12:00 a.m.

Microsoft IE HtmlDlgHelper类内存破坏漏洞(MS10-071)

2010-10-1500:00:00
Root
www.seebug.org
31

0.957 High

EPSS

Percentile

99.2%

BUGTRAQ ID: 43706
CVE ID: CVE-2010-3329

Internet Explorer是Windows操作系统中默认捆绑的WEB浏览器。

Windows在实例化Office文档(如.XLS、.DOC)中HtmlDlgHelper类对象(CLASSID: 3050f4e1-98b5-11cf-bb82-00aa00bdce0b)的方式存在内存破坏漏洞。有漏洞的模块是Internet Explorer中的mshtmled.dll,当调用CHtmlDlgHelper类的析构程序之后访问未初始化内存时就会在mshtmled.dll 中触发这个漏洞。以下是出现了漏洞的代码段:

mshtmled!ReleaseInterface:
42b919c0 8bff mov edi,edi
42b919c2 55 push ebp
42b919c3 8bec mov ebp,esp
42b919c5 8b4508 mov eax,dword ptr [ebp+8] ss:0023:0013d104=00310065
42b919c8 85c0 test eax,eax
42b919ca 7406 je mshtmled!ReleaseInterface+0x12 (42b919d2) [br=0]
42b919cc 8b08 mov ecx,dword ptr [eax] ds:0023:00310065
42b919ce 50 push eax
42b919cf ff5108 call dword ptr [ecx+8] ds:0023:7d02029c=2a2c277a

eax=00310065 ebx=00000000 ecx=7d020294 edx=df0b3d60 esi=001edbdc edi=00000000
eip=2a2c277a esp=0013d0f4 ebp=0013d0fc iopl=0 nv up ei pl nz na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000206

Stack Trace:
<Unloaded_ion.dll>+0x2a2c2779
mshtmled!ReleaseInterface+0x12
mshtmled!CHtmlDlgHelper::~CHtmlDlgHelper+0x10
mshtmled!ATL::CComAggObject<CHtmlDlgHelper>::`scalar deleting destructor’+0xd
mshtmled!ATL::CComAggObject<CHtmlDlgHelper>::Release+0x27
VBE6!rtcStrConvVar+0xbd65
VBE6!rtcSetDatabaseLcid+0xa823
EXCEL!Ordinal41+0xd2ad0
EXCEL!Ordinal41+0x14082a
USER32!CallWindowProcW+0x1b
Instruction Address: 0x000000002a2c277a

Microsoft Internet Explorer 8.0
Microsoft Internet Explorer 7.0
临时解决方法:

  • 禁止在Internet Explorer中运行COM对象。

如果要对CLSID值{3050f4e1-98b5-11cf-bb82-00aa00bdce0b}设置kill bit,在文本编辑器(如写字板)中粘贴以下文本然后使用.reg文件名扩展保存文件。

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility{3050f4e1-98b5-11cf-bb82-00aa00bdce0b}]
"Compatibility Flags"=dword:00000400

通过双击将这个.reg文件应用到单个系统。

厂商补丁:

Microsoft

Microsoft已经为此发布了一个安全公告(MS10-071)以及相应补丁:
MS10-071:Cumulative Security Update for Internet Explorer (2360131)
链接:http://www.microsoft.com/technet/security/bulletin/MS10-071.mspx?pf=true


                                                &lt;html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot;
xmlns:o=&quot;urn:schemas-microsoft-com:office:office&quot;
xmlns:x=&quot;urn:schemas-microsoft-com:office:excel&quot;&gt;

&lt;head&gt;
&lt;meta http-equiv=Content-Type content=&quot;text/html; charset=windows-1252&quot;&gt;
&lt;meta name=ProgId content=Excel.Sheet&gt;
&lt;meta name=Generator content=&quot;Microsoft Excel 10&quot;&gt;
&lt;!--[if !mso]&gt;
&lt;style&gt;
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
x\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
&lt;/style&gt;
&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
&lt;o:DocumentProperties&gt;
  &lt;o:LastAuthor&gt;TEST&lt;/o:LastAuthor&gt;
  &lt;o:LastSaved&gt;2010-08-03T05:19:51Z&lt;/o:LastSaved&gt;
  &lt;o:Version&gt;10.6858&lt;/o:Version&gt;
&lt;/o:DocumentProperties&gt;
&lt;o:OfficeDocumentSettings&gt;
  &lt;o:DownloadComponents/&gt;
  &lt;/o:OfficeDocumentSettings&gt;
&lt;/xml&gt;&lt;![endif]--&gt;

&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
&lt;x:ExcelWorkbook&gt;
  &lt;x:ExcelWorksheets&gt;
   &lt;x:ExcelWorksheet&gt;
    &lt;x:Name&gt;test&lt;/x:Name&gt;
    &lt;x:WorksheetOptions&gt;
     &lt;x:CodeName&gt;Sheet1&lt;/x:CodeName&gt;
     &lt;x:Selected/&gt;
     &lt;x:DoNotDisplayGridlines/&gt;
     &lt;x:ProtectContents&gt;False&lt;/x:ProtectContents&gt;
     &lt;x:ProtectObjects&gt;False&lt;/x:ProtectObjects&gt;
     &lt;x:ProtectScenarios&gt;False&lt;/x:ProtectScenarios&gt;
    &lt;/x:WorksheetOptions&gt;
   &lt;/x:ExcelWorksheet&gt;
  &lt;/x:ExcelWorksheets&gt;
  &lt;x:WindowHeight&gt;9345&lt;/x:WindowHeight&gt;
  &lt;x:WindowWidth&gt;13260&lt;/x:WindowWidth&gt;
  &lt;x:WindowTopX&gt;240&lt;/x:WindowTopX&gt;
  &lt;x:WindowTopY&gt;60&lt;/x:WindowTopY&gt;
  &lt;x:ProtectStructure&gt;False&lt;/x:ProtectStructure&gt;
  &lt;x:ProtectWindows&gt;False&lt;/x:ProtectWindows&gt;
&lt;/x:ExcelWorkbook&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
&lt;o:shapedefaults v:ext=&quot;edit&quot; spidmax=&quot;1026&quot;/&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
&lt;o:shapelayout v:ext=&quot;edit&quot;&gt;
  &lt;o:idmap v:ext=&quot;edit&quot; data=&quot;1&quot;/&gt;
&lt;/o:shapelayout&gt;&lt;/xml&gt;&lt;![endif]--&gt;
&lt;/head&gt;

&lt;body link=blue vlink=purple&gt;

&lt;table x:str border=0 cellpadding=0 cellspacing=0 width=64 style='border-collapse:
collapse;table-layout:fixed;width:48pt'&gt;
&lt;col width=64 style='width:48pt'&gt;
&lt;tr height=17 style='height:12.75pt'&gt;
  &lt;td height=17 width=64 style='height:12.75pt;width:48pt' align=left
  valign=top&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id=&quot;_x0000_t201&quot; coordsize=&quot;21600,21600&quot;
   o:spt=&quot;201&quot; path=&quot;m,l,21600r21600,l21600,xe&quot;&gt;
   &lt;v:stroke joinstyle=&quot;miter&quot;/&gt;
   &lt;v:path shadowok=&quot;f&quot; o:extrusionok=&quot;f&quot; strokeok=&quot;f&quot; fillok=&quot;f&quot;
    o:connecttype=&quot;rect&quot;/&gt;
   &lt;o:lock v:ext=&quot;edit&quot; shapetype=&quot;t&quot;/&gt;
  &lt;/v:shapetype&gt;&lt;v:shape id=&quot;_x0000_s1025&quot; type=&quot;#_x0000_t201&quot; style='position:absolute;
   margin-left:0;margin-top:0;width:48pt;height:12.75pt;z-index:1'
   strokecolor=&quot;windowText [64]&quot; o:insetmode=&quot;auto&quot;&gt;
   &lt;![if gte mso 9]&gt;&lt;o:title=&quot;&quot;/&gt;
   &lt;![endif]&gt;&lt;x:ClientData ObjectType=&quot;Pict&quot;&gt;
    &lt;x:SizeWithCells/&gt;
    &lt;x:CF&gt;Pict&lt;/x:CF&gt;
    &lt;x:AutoPict/&gt;
   &lt;/x:ClientData&gt;
  &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;![if !vml]&gt;&lt;span style='mso-ignore:vglayout;
  position:absolute;z-index:1;margin-left:0px;margin-top:0px;width:64px;
  height:17px'&gt;&lt;![endif]&gt;

&lt;object classid=&quot;CLSID:3050F4E1-98B5-11CF-BB82-00AA00BDCE0B&quot; id=obj&gt;&lt;/object&gt;

&lt;![if !vml]&gt;&lt;/span&gt;&lt;![endif]&gt;&lt;span
  style='mso-ignore:vglayout2'&gt;
  &lt;table cellpadding=0 cellspacing=0&gt;
   &lt;tr&gt;
    &lt;td height=17 width=64 style='height:12.75pt;width:48pt'&gt;&lt;/td&gt;
   &lt;/tr&gt;
  &lt;/table&gt;
  &lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;![if supportMisalignedColumns]&gt;
&lt;tr height=0 style='display:none'&gt;
  &lt;td width=64 style='width:48pt'&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;![endif]&gt;
&lt;/table&gt;
&lt;/body&gt;
&lt;/html&gt;