MS02-052: Fehler in den JDBC-Klassen der Microsoft-VM könnte das Ausführen von Code ermöglichen

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 329077 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde zuvor veröffentlicht unter D329077
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
329077 MS02-052: Flaw in Microsoft VM JDBC Classes Might Permit Code to Be Run
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Alles erweitern | Alles schließen

Problembeschreibung

Die Microsoft Virtual Machine (Microsoft-VM) ist eine virtuelle Maschine für die 32 Bit-Versionen der Microsoft Windows-Betriebssysteme. Die Microsoft-VM ist Bestandteil fast aller Versionen von Windows und auch in den meisten Versionen von Microsoft Internet Explorer enthalten. Microsoft hat einen neuen Patch für die Microsoft-VM zur Verfügung gestellt. Dieser Patch beseitigt drei Sicherheitsanfälligkeiten. Wahrscheinlich sind die Wege, auf denen diese Sicherheitsanfälligkeiten ausgenutzt werden könnten, bei allen drei Sicherheitsanfälligkeiten gleich. Ein Angreifer könnte diese Sicherheitsanfälligkeiten ausnutzen, indem er eine Webseite erstellt und diese Webseite dann auf einem Server veröffentlicht oder als E-Mail-Nachricht sendet.

Die erste Sicherheitsanfälligkeit hängt mit den JDBC-Klassen (JDBC = Java Database Connectivity Classes) zusammen; diese Klassen erlauben es Java-Anwendungen, sich mit einer breiten Palette von Datenquellen zu verbinden und Daten aus diesen Datenquellen zu nutzen. Derartige Datenquellen können beispielsweise Dateien auf der Festplatte oder Microsoft SQL Server-Datenbanken sein. Diese Sicherheitsanfälligkeit wird von einem Fehler in der Art und Weise verursacht, in der Klassen eine Anforderung zum Laden und Ausführen einer DLL-Datei auf dem Computer eines Benutzers prüfen. Obwohl die Klassen Überprüfungen vornehmen, die sicherstellen sollen, dass nur autorisierte Programme derartige Anfragen ausführen können, können diese Prüfungen "getäuscht" werden, wenn eine Anfrage absichtlich in einer bestimmten Weise fehlerhaft gestaltet ist. Dies könnte es einem Angreifer erlauben, auf dem Computer eines Benutzers jede beliebige DLL-Datei zu laden und auszuführen.

Bei der zweiten Sicherheitsanfälligkeit spielen ebenfalls die JDBC-Klassen eine Rolle. Sie ist darauf zurückzuführen, dass einige Funktionen in den Klassen die Handles, die für Eingaben zur Verfügung gestellt werden, nicht korrekt überprüft. Ein einfaches Szenario für die Ausnutzung dieser Sicherheitsanfälligkeit wäre, dass beim Aufrufen einer solchen Funktion anstelle eines echten Handles ungültige Daten übermittelt würden. Microsoft hat bestätigt, dass Internet Explorer in dieser Situation eventuell nicht mehr reagiert (hängt). Diese Sicherheitsanfälligkeit könnte es einem Angreifer auch erlauben, Daten zu übermitteln, die dazu führen, dass Code im Sicherheitskontexts des Benutzers ausgeführt wird.

Die dritte Sicherheitsanfälligkeit hängt mit einer Klasse zusammen, die XML-Unterstützung für Java-Programme bereitstellt. Diese Klasse stellt eine Reihe von Methoden zur Verfügung. Einige dieser Methoden können von jedem Programm verwendet werden, andere wiederum können nur von Programmen genutzt werden, die als vertrauenswürdig eingestuft sind. Die Klasse unterscheidet jedoch nicht korrekt zwischen diesen verschiedenen Programmtypen, und stellt daher allen Programmen alle Methoden zur Verfügung. Aufgrund dieser Sicherheitsanfälligkeit könnten zum Beispiel Funktionen missbraucht werden, mit deren Hilfe ein Programm nahezu jede Aktion auf dem Computer eines Benutzers ausführen könnte.

Lösung

Installieren Sie den im folgenden Microsoft Knowledge Base-Artikel beschriebenen Patch, um dieses Problem zu beheben:
810030 MS02-069: Fehler in Microsoft VM kann Windows-Sicherheit beeinträchtigen
Das Sicherheitsupdate 329077 wurde durch das Update 810030 ersetzt.

Dieses Update nimmt die folgenden Änderungen an der Registrierung vor:
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"
Hinweis: Unabhängig von der durch Jview angezeigten Versionsnummer, müsste der zuvor beschriebene Registrierungsschlüssel der entscheidende Faktor dafür sein, dass der Patch korrekt installiert wird. Die Version der Datei "Msjava.dll" bleibt auch nach der Patch-Installation unverändert (5.00.3805.0000).

Die englische Version dieses Updates weist die in der nachstehenden Tabelle aufgelisteten Dateiattribute (oder höher) auf. Datums- und Uhrzeitangaben für diese Dateien sind in der "Coordinated Universal Time" (UTC) angegeben. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Die Abweichung zwischen UTC-Zeit und lokaler Zeit können Sie im Systemsteuerungsprogramm Datum/Uhrzeit mithilfe der Registerkarte Zeitzone ermitteln.
   Datum         Uhrzeit  Größe    Dateiname
   ------------------------------------------
   18-Feb-2002   07:38     2,678   Msjdbc.cer
   21-Aug-2002   17:28   137,282   Msjdbc.zip
   16-Aug-2002   09:57    10,957   Osp.zip
Diese Dateien werden im Ordner "%Windir%\Java\Classes" installiert. Die komprimierten .zip-Dateien enthalten die folgenden Java-Klassen:
   21-Aug-2002   17:28   24,824  Jdbcodbc.class
   21-Aug-2002   17:28      800  Jdbcodbcboundcol.class
   21-Aug-2002   17:28    1,119  Jdbcodbcboundparam.class
   21-Aug-2002   17:28      848  Jdbcodbcbusyflag.class
   21-Aug-2002   17:28    5,193  Jdbcodbccallablestatement.class
   21-Aug-2002   17:28    8,347  Jdbcodbcconnection.class
   21-Aug-2002   17:28      447  Jdbcodbcconnectioninterface.class
   21-Aug-2002   17:28   28,036  Jdbcodbcdatabasemetadata.class
   21-Aug-2002   17:28      710  Jdbcodbcdecimal.class
   21-Aug-2002   17:28    6,096  Jdbcodbcdriver.class
   21-Aug-2002   17:28      308  Jdbcodbcdriverattribute.class
   21-Aug-2002   17:28      415  Jdbcodbcdriverinterface.class
   21-Aug-2002   17:28    2,990  Jdbcodbcinputstream.class
   21-Aug-2002   17:28      611  Jdbcodbclimits.class
   21-Aug-2002   17:28    2,339  Jdbcodbcobject.class
   21-Aug-2002   17:28    8,063  Jdbcodbcpreparedstatement.class
   21-Aug-2002   17:28      912  Jdbcodbcpseudocol.class
   21-Aug-2002   17:28   12,865  Jdbcodbcresultset.class
   21-Aug-2002   17:28      615  Jdbcodbcresultsetinterface.class
   21-Aug-2002   17:28    5,503  Jdbcodbcresultsetmetadata.class
   21-Aug-2002   17:28      523  Jdbcodbcsqlwarning.class
   21-Aug-2002   17:28    6,116  Jdbcodbcstatement.class
   21-Aug-2002   17:28    1,451  Jdbcodbctimestamp.class
   21-Aug-2002   17:28      566  Jdbcodbctypeinfo.class
   21-Aug-2002   17:28   13,595  Odbcdef.class
   28-Jul-1997   13:15      247  Accessdeniedexception.class
   28-Jul-1997   13:15      243  Conversionexception.class
   28-Jul-1997   13:15    1,033  Datasource.class
   28-Jul-1997   13:15      746  Datasourcelistener.class
   28-Jul-1997   13:15      253  Illegalargumentexception.class
   28-Jul-1997   13:15      251  Notimplementedexception.class
   28-Jul-1997   13:15    1,736  Oledbsimpleprovider.class
   28-Jul-1997   13:15    1,123  Oledbsimpleproviderlistener.class
   28-Jul-1997   13:15      384  Ospcomp.class
   28-Jul-1997   13:15      261  Ospexception.class
   28-Jul-1997   13:15      264  Ospfind.class
   28-Jul-1997   13:15      304  Ospformat.class
   28-Jul-1997   13:15      912  Ospmrshl.class
   28-Jul-1997   13:15      286  Osprw.class
   28-Jul-1997   13:15      260  Ospxfer.class
   28-Jul-1997   13:15      368  __MIDL___MIDL_ITF_SIMPDATA_0000_0001.CLASS
				

Status

Microsoft hat bestätigt, dass dieses Problem bis zu einem gewissen Maße eine Sicherheitsanfälligkeit in der Microsoft-VM zur Folge haben kann.

Weitere Informationen

Weitere Informationen zu dieser Sicherheitsanfälligkeit finden Sie auf den folgenden Websites von Microsoft:
http://www.microsoft.com/technet/security/bulletin/MS02-052.asp
http://www.microsoft.com/germany/ms/technetservicedesk/bulletin/bulletinms03-011.htm

Eigenschaften

Artikel-ID: 329077 - Geändert am: Freitag, 1. Oktober 2004 - Version: 8.2
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Virtual Machine for Java
  • Microsoft Virtual Machine for Java, wenn verwendet mit:
    • Microsoft Windows Millennium Edition
    • Microsoft Windows 2000 Standard Edition
    • Microsoft Windows NT 4.0
    • Microsoft Windows 98 Second Edition
    • Microsoft Windows 98 Standard Edition
Keywords: 
kbbug kbfix kbsecvulnerability kbsecurity kbsecbulletin KB329077
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com