Microsoft Excel DbOrParamQry对象解析内存破坏漏洞(MS10-017)

2010-03-10T00:00:00
ID SSV:19248
Type seebug
Reporter Root
Modified 2010-03-10T00:00:00

Description

BUGTRAQ ID: 38555 CVE ID: CVE-2010-0264

Excel是微软Office套件中的电子表格工具。

Excel在解析包含有畸形DbOrParamQry记录的.XLS文件时存在内存破坏漏洞,用户受骗打开了恶意的.XLS文件就可能导致执行任意代码。

DbOrParamQry记录指定了DbQuery或ParamQry记录,具体取决于之前的记录。记录查询参数(ParamQry)偏移DCh包含有有关ODBC参数化查询的记录,格式如下:

/----- Offset Name Size Contents 4 wTypeSql 2 Used for ODBC queries; the parameter SQL type 6 flags 2 Option flags

  • -----/

通过修改这个记录就可以触发可利用的情况。有漏洞的代码段如下:

/----- EXCEL!Ordinal41+2c20ce: 302c20ce 8b461c mov eax,[esi+0x1c] ds:0023:0180aa98=0197013c 302c20d1 85c0 test eax,eax 302c20d3 0f84e1000000 je EXCEL!Ordinal41+0x2c21ba (302c21ba) [br=0] 302c20d9 8b08 mov ecx,[eax] ds:0023:0197013c=00010001 302c20db 50 push eax 302c20dc ff5108 call dword ptr [ecx+0x8] ds:0023:00010009=5c003a00

Access violation - code c0000005 (first chance) eax=0197013c ebx=00000001 ecx=00010001 edx=0000014c esi=0180aa7c edi=00000000 eip=5c003a00 esp=001363ec ebp=00136400 iopl=0 nv up ei pl nz na po nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000206 5c003a00 ?? ???

  • -----/

Microsoft Excel 2002 SP3 Microsoft Office 2008 for Mac Microsoft Office 2004 for Mac 厂商补丁:

Microsoft

Microsoft已经为此发布了一个安全公告(MS10-017)以及相应补丁: MS10-017:Vulnerabilities in Microsoft Office Excel Could Allow Remote Code Execution (980150) 链接:http://www.microsoft.com/technet/security/bulletin/ms10-017.mspx?pf=true