MS02-052 : Un défaut dans les classes JDBC de la machine virtuelle Microsoft pourrait permettre l'exécution de code

Traductions disponibles Traductions disponibles
Numéro d'article: 329077 - Voir les produits auxquels s'applique cet article
Cet article peut contenir des liens vers des informations en langue anglaise (pas encore traduites).
Agrandir tout | Réduire tout

Symptômes

La machine virtuelle Microsoft est une machine virtuelle pour les versions 32 bits de Microsoft Windows. La machine virtuelle Microsoft est fournie avec la plupart des versions de Windows et de Microsoft Internet Explorer. Un nouveau correctif est disponible pour la machine virtuelle Microsoft. Ce correctif résout trois problèmes de sécurité. Les vecteurs d'attaque de ces problèmes sont en général identiques. Pour exploiter ce problème de sécurité, un utilisateur malveillant doit créer une page Web, puis l'héberger sur un serveur ou l'envoyer dans un message électronique.

Le premier problème est lié aux classes JDBC (Java Database Connectivity), qui procurent des fonctionnalités permettant aux programmes Java de se connecter et d'utiliser des données d'une large gamme de sources (allant des fichiers plats aux bases de données Microsoft SQL Server). Ce problème est dû à un défaut dans la manière dont les classes valident une demande de chargement et d'exécution d'une DLL sur l'ordinateur d'un utilisateur. Bien que les classes effectuent des vérifications destinées à s'assurer que seuls les programmes autorisés peuvent effectuer de telles demandes, ces vérifications peuvent être contournées en formant la demande de façon spécifique et incorrecte. Cela pourrait permettre à un utilisateur malveillant de charger et d'exécuter n'importe quelle DLL sur l'ordinateur d'un utilisateur.

Le deuxième problème est également lié aux classes JDBC ; il est dû au fait que certaines fonctions des classes ne valident pas correctement les handles fournis comme entrées. L'un des moyens les plus simples d'exploiter ce défaut consiste à fournir des données non valides au lieu d'un handle lors de l'appel d'une de ces fonctions. Microsoft a confirmé que ce scénario pouvait provoquer le blocage d'Internet Explorer. Ce défaut peut également permettre à un utilisateur malveillant de fournir des données entraînant l'exécution de code dans le contexte de sécurité de l'utilisateur.

Le troisième problème concerne une classe qui fournit une prise en charge de l'utilisation de XML par des programmes Java. Cette classe expose plusieurs méthodes. Certaines de ces méthodes peuvent être utilisées par n'importe quel programme, mais d'autres ne doivent être utilisées que par des programmes de confiance. Toutefois, la classe ne différencie pas correctement ces deux cas. Au lieu de cela, elle rend toutes les méthodes disponibles à tous les programmes. Parmi les fonctions pouvant être exploitées de façon incorrecte figurent des fonctions qui pourraient autoriser un programme à effectuer pratiquement n'importe quelle opération sur l'ordinateur de l'utilisateur.

Résolution

Pour résoudre ce problème, installez le correctif décrit dans l'article suivant de la Base de connaissances Microsoft :
810030 MS02-069 : Un défaut dans la machine virtuelle Microsoft peut compromettre Windows
La mise à jour de la sécurité 329077 a été remplacée par la mise à jour 810030.

Cette mise à jour modifie le Registre de la manière suivante :
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"
REMARQUE : quel que soit le numéro de version affiché à partir de Jview, la clé de Registre décrite plus haut doit être le facteur déterminant pour l'installation correcte du correctif. La version du fichier Msjava.dll sera toujours 5.00.3805.0000 après l'installation de ce correctif.

La version anglaise de ce correctif doit avoir les attributs de fichier indiqués dans le tableau ci-dessous ou ceux d'une version ultérieure. Les date et heure de création de ces fichiers sont exprimées en temps universel coordonné (UTC). Lorsque vous affichez les informations des fichiers, les données sont converties à l'heure locale. Pour connaître le décalage entre l'heure GMT et l'heure locale, utilisez l'onglet Fuseau horaire dans l'utilitaire Date et heure du Panneau de configuration.
   Date       Heure   Taille    Nom de fichier
   ------------------------------------------
   18/02/02   07:38     2 678   Msjdbc.cer
   21/08/02   17:28   137 282   Msjdbc.zip
   16/08/02   09:57    10 957   Osp.zip
				
Ces fichiers sont installés dans le dossier %Windir%\Java\Classes. Les fichiers .zip compressés contiennent les classes Java suivantes :
   21/08/02   17:28   24 824  Jdbcodbc.class
   21/08/02   17:28      800  Jdbcodbcboundcol.class
   21/08/02   17:28    1 119  Jdbcodbcboundparam.class
   21/08/02   17:28      848  Jdbcodbcbusyflag.class
   21/08/02   17:28    5 193  Jdbcodbccallablestatement.class
   21/08/02   17:28    8 347  Jdbcodbcconnection.class
   21/08/02   17:28      447  Jdbcodbcconnectioninterface.class
   21/08/02   17:28   28 036  Jdbcodbcdatabasemetadata.class
   21/08/02   17:28      710  Jdbcodbcdecimal.class
   21/08/02   17:28    6 096  Jdbcodbcdriver.class
   21/08/02   17:28      308  Jdbcodbcdriverattribute.class
   21/08/02   17:28      415  Jdbcodbcdriverinterface.class
   21/08/02   17:28    2 990  Jdbcodbcinputstream.class
   21/08/02   17:28      611  Jdbcodbclimits.class
   21/08/02   17:28    2 339  Jdbcodbcobject.class
   21/08/02   17:28    8 063  Jdbcodbcpreparedstatement.class
   21/08/02   17:28      912  Jdbcodbcpseudocol.class
   21/08/02   17:28   12 865  Jdbcodbcresultset.class
   21/08/02   17:28      615  Jdbcodbcresultsetinterface.class
   21/08/02   17:28    5 503  Jdbcodbcresultsetmetadata.class
   21/08/02   17:28      523  Jdbcodbcsqlwarning.class
   21/08/02   17:28    6 116  Jdbcodbcstatement.class
   21/08/02   17:28    1 451  Jdbcodbctimestamp.class
   21/08/02   17:28      566  Jdbcodbctypeinfo.class
   21/08/02   17:28   13 595  Odbcdef.class
   28/07/97   13:15      247  Accessdeniedexception.class
   28/07/97   13:15      243  Conversionexception.class
   28/07/97   13:15    1 033  Datasource.class
   28/07/97   13:15      746  Datasourcelistener.class
   28/07/97   13:15      253  Illegalargumentexception.class
   28/07/97   13:15      251  Notimplementedexception.class
   28/07/97   13:15    1 736  Oledbsimpleprovider.class
   28/07/97   13:15    1 123  Oledbsimpleproviderlistener.class
   28/07/97   13:15      384  Ospcomp.class
   28/07/97   13:15      261  Ospexception.class
   28/07/97   13:15      264  Ospfind.class
   28/07/97   13:15      304  Ospformat.class
   28/07/97   13:15      912  Ospformat.class
   28/07/97   13:15      286  Ospformat.class
   28/07/97   13:15      260  Ospxfer.class
   28/07/97   13:15      368  __MIDL___MIDL_ITF_SIMPDATA_0000_0001.CLASS
				

Statut

Microsoft a confirmé que ce problème pouvait entraîner une certaine faille de sécurité dans la machine virtuelle Microsoft.

Plus d'informations

Pour plus d'informations sur ce problème de sécurité, reportez-vous aux sites Web de Microsoft aux adresses suivantes (en anglais) :
http://www.microsoft.com/technet/security/bulletin/MS02-052.mspx
http://www.microsoft.com/france/technet/themes/secur/info/info.asp?mar=/france/technet/themes/secur/info/MS03-011.html

Propriétés

Numéro d'article: 329077 - Dernière mise à jour: mercredi 29 septembre 2004 - Version: 8.2
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Virtual Machine for Java
  • Microsoft Virtual Machine for Java sur le système suivant
    • Microsoft Windows Millennium Edition
    • Microsoft Windows 2000 Standard Edition
    • Microsoft Windows NT 4.0
    • Microsoft Windows 98 Second Edition
    • Microsoft Windows 98 Standard Edition
Mots-clés : 
kbbug kbfix kbsecvulnerability kbsecurity kbsecbulletin KB329077
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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