MS02-052:Microsoft VM JDBC 类中的缺陷可能允许代码运行

本文已归档。它按“原样”提供,并且不再更新。
症状
Microsoft 虚拟机 (VM) 是用于 32 位版本的 Microsoft Windows 的虚拟机。Microsoft VM 作为一个组件包含在大多数版本的 Windows 和大多数版本的 Microsoft Internet Explorer 中。新的针对 Microsoft VM 的修补程序已经发布。此修补程序修复了三个安全漏洞。所有这些漏洞的攻击媒介可能是相同的。为了利用这些漏洞,攻击者可能会创建一个 Web 页面,然后将该 Web 页面驻留在服务器上或者将该页面作为电子邮件发送。

第一个漏洞与 Java 数据库连接 (JDBC) 类有关,这些 JDBC 类提供的功能允许 Java 程序连接到多种数据源并使用其中的数据。这些数据源的范围可从平面文件一直到 Microsoft SQL Server 数据库。出现此漏洞的原因是某些类对在用户计算机上加载和运行 DLL 的请求的检查方法存在缺陷。虽然这些类会执行旨在确保只有经过授权的程序才可以发出这种请求的检查,但是这种检查可以被以某种方式故意构造的错误形式的请求所“欺骗”。这就有可能使攻击者得以在用户计算机上加载和运行任何 DLL。

第二个漏洞也涉及 JDBC 类,出现此漏洞的原因是这些类中的某些函数不能正确验证作为输入提供的句柄。一种直接利用此缺陷的方式是在调用此类函数时提供无效的数据而不是实际句柄。Microsoft 已经确认这种情况可以导致 Internet Explorer 停止工作。该缺陷还可能允许攻击者提供导致在用户的安全上下文中运行代码的数据。

第三个漏洞与一个类有关,该类为通过 Java 程序使用 XML 提供支持。该类公开了许多方法。其中某些方法适合于任何程序使用,而其他方法只适合于可信程序使用。但是,由于该类无法正确区分这些情况,因而实际上所有这些方法都可以为任何程序使用。可以通过此漏洞误用的函数中包括可能允许程序对用户计算机执行几乎任何操作的函数。
解决方案
要解决此问题,请安装下面的 Microsoft 知识库文章中介绍的修补程序:
810030 MS02-069:Flaw in Microsoft VM May Compromise Windows
329077 安全更新已由 810030 更新取代。

此更新对注册表进行以下更改:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\{DBB3C81D-3C91-4a1e-BDDF-905B61C7CEDF}
="Security Update for the Microsoft VM"
"ComponentID"="JAVAVM"
"IsInstalled"=hex:01,00,00,00
"KeyFileName"="C:\\WINDOWS\\System32\\msjava.dll"
"Version"="5,00,3807,0"
注意:无论通过 Jview 查看到的版本号是什么,以前介绍过的注册表项应该是确定是否正确安装了此修补程序的决定因素。安装此修补程序后,Msjava.dll 文件将保留版本 5.00.3805.0000。

此修补程序的英文版具有下表中列出的文件属性(或更新的属性)。这些文件的日期和时间按协调通用时间 (UTC) 列出。当您查看文件信息时,该时间将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用“控制面板”中的“日期和时间”工具中的“时区”选项卡。
日期	         时间	 大小	     文件名------------------------------------------------------------------18-Feb-2002	07:38     2,678   Msjdbc.cer21-Aug-2002	17:28   137,282   Msjdbc.zip16-Aug-2002	09:57    10,957   Osp.zip				
这些文件放置在 %Windir%\Java\Classes 文件夹中。压缩的 .zip 文件包含以下 Java 类:
21-Aug-2002	17:28   24,824  Jdbcodbc.class21-Aug-2002	17:28      800  Jdbcodbcboundcol.class21-Aug-2002	17:28    1,119  Jdbcodbcboundparam.class21-Aug-2002	17:28      848  Jdbcodbcbusyflag.class21-Aug-2002	17:28    5,193  Jdbcodbccallablestatement.class21-Aug-2002	17:28    8,347  Jdbcodbcconnection.class21-Aug-2002	17:28      447  Jdbcodbcconnectioninterface.class21-Aug-2002	17:28   28,036  Jdbcodbcdatabasemetadata.class21-Aug-2002	17:28      710  Jdbcodbcdecimal.class21-Aug-2002	17:28    6,096  Jdbcodbcdriver.class21-Aug-2002	17:28      308  Jdbcodbcdriverattribute.class21-Aug-2002	17:28      415  Jdbcodbcdriverinterface.class21-Aug-2002	17:28    2,990  Jdbcodbcinputstream.class21-Aug-2002	17:28      611  Jdbcodbclimits.class21-Aug-2002	17:28    2,339  Jdbcodbcobject.class21-Aug-2002	17:28    8,063  Jdbcodbcpreparedstatement.class21-Aug-2002	17:28      912  Jdbcodbcpseudocol.class21-Aug-2002	17:28   12,865  Jdbcodbcresultset.class21-Aug-2002	17:28      615  Jdbcodbcresultsetinterface.class21-Aug-2002	17:28    5,503  Jdbcodbcresultsetmetadata.class21-Aug-2002	17:28      523  Jdbcodbcsqlwarning.class21-Aug-2002	17:28    6,116  Jdbcodbcstatement.class21-Aug-2002	17:28    1,451  Jdbcodbctimestamp.class21-Aug-2002	17:28      566  Jdbcodbctypeinfo.class21-Aug-2002	17:28   13,595  Odbcdef.class28-Jul-1997	13:15      247  Accessdeniedexception.class28-Jul-1997	13:15      243  Conversionexception.class28-Jul-1997	13:15    1,033  Datasource.class28-Jul-1997	13:15      746  Datasourcelistener.class28-Jul-1997	13:15      253  Illegalargumentexception.class28-Jul-1997	13:15      251  Notimplementedexception.class28-Jul-1997	13:15    1,736  Oledbsimpleprovider.class28-Jul-1997	13:15    1,123  Oledbsimpleproviderlistener.class28-Jul-1997	13:15      384  Ospcomp.class28-Jul-1997	13:15      261  Ospexception.class28-Jul-1997	13:15      264  Ospfind.class28-Jul-1997	13:15      304  Ospformat.class28-Jul-1997	13:15      912  Ospmrshl.class28-Jul-1997	13:15      286  Osprw.class28-Jul-1997	13:15      260  Ospxfer.class28-Jul-1997	13:15      368  __MIDL___MIDL_ITF_SIMPDATA_0000_0001.CLASS				
状态
Microsoft 已确认此问题可能会导致 Microsoft VM 中出现某种程度的安全漏洞。
security_patch
属性

文章 ID:329077 - 上次审阅时间:01/10/2015 13:45:55 - 修订版本: 8.1

  • Microsoft Virtual Machine for Java
  • Microsoft Virtual Machine for Java
  • kbnosurvey kbarchive kbbug kbfix kbsecvulnerability kbsecurity kbsecbulletin KB329077
反馈