MS02-052: Microsoft VM:ssä ilmenneen virheen takia JDBC-luokat saattavat sallia koodin suorittamisen

Tämä artikkeli on arkistoitu. Se tarjotaan "sellaisenaan", eikä sitä päivitetä enää.
Oire
Microsoft VM (virtual machine) on 32-bittisten Microsoft Windows -versioiden näennäislaite. Microsoft VM kuuluu useimpiin Windows-versioihin ja Microsoft Internet Explorer -versioihin. Nyt saatavilla on uusi Microsoft VM:n korjaustiedosto. Tämä korjaustiedosto korjaa kolme suojausheikkoutta. Kaikkien heikkouksien mahdollistamat hyökkäystavat ovat todennäköisesti samat. Hyökkääjä saattaa hyödyntää näitä heikkouksia luomalla Web-sivun ja joko tallentamalla sen palvelimeen tai lähettämällä sen sähköpostitse.

Ensimmäinen heikkous koskee Java Database Connectivity (JDBC) -luokkia ja niiden ominaisuuksia, joiden avulla Java-ohjelmat voivat muodostaa yhteyksiä eri tietolähteisiin ja käyttää niiden tietoja. Tietolähteet voivat vaihdella aputiedostoista Microsoft SQL Server -tietokantoihin. Heikkouden aiheuttaa virhe tavassa, jolla luokat vastaanottavat pyynnön ladata ja suorittaa DLL-tiedoston käyttäjän tietokoneessa. Vaikka luokat suorittavat tarkistuksia, joiden tarkoituksena on varmistaa, että vain valtuutetut ohjelmat voivat tehdä tällaisia pyyntöjä, nämä tarkistukset voidaan ohittaa muotoilemalla pyyntö tarkoituksella tietyllä tavalla väärin. Tämä saattaa mahdollistaa sen, että hyökkääjä voi ladata ja suorittaa minkä tahansa DLL-tiedoston käyttäjän tietokoneessa.

Myös toinen heikkous koskee JDBC-luokkia, ja se aiheutuu sen seurauksena, että tietyt luokkien funktiot eivät pysty vahvistamaan syötteeksi määritettyjä käsittelijöitä oikein. Yksi tapa hyödyntää tätä heikkoutta on määrittää käsittelijän asemesta epäkelpoja tietoja tällaista funktiota kutsuttaessa. Microsoft on vahvistanut, että tällaisessa tilanteessa Internet Explorer saattaa lakata toimimasta. Heikkoutta hyödyntämällä hyökkääjä voi ehkä myös määrittää tietoja, jotka käynnistävät koodin suorittamisen käyttäjän suojauskontekstissa.

Kolmas heikkous koskee luokkaa, joka tukee Java-ohjelmien XML:n käyttöä. Tämä luokka mahdollistaa XML:n käytön usealla eri menetelmällä. Joitakin näistä menetelmistä voi käyttää mikä tahansa ohjelma, mutta joitakin vain luotetut ohjelmat. Tämän heikkouden vuoksi luokka ei kuitenkaan erota näitä tapauksia toisistaan, vaan sallii kaikkien menetelmien käytön kaikille ohjelmille. Funktiot, joiden väärinkäytön tämä heikkous mahdollistaa, ovat sellaisia funktioita, joita hyödyntämällä ohjelma voi tehdä lähes mitä tahansa toimia käyttäjän tietokoneessa.
Ratkaisu
Voit ratkaista tämän ongelman asentamalla korjaustiedoston, joka kuvataan seuraavassa Microsoft Knowledge Base -artikkelissa:
810030 MS02-069: Microsoft VM:ssä ilmennyt virhe saattaa aiheuttaa heikkouden Windowsissa
Päivitys 810030 korvaa suojauspäivityksen 329077.

Tämä päivitys tekee rekisteriin seuraavat muutokset:
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"
HUOMAUTUS: Riippumatta siitä, mikä versionumero näkyy Jview'ssä, aiemmin kuvatun rekisteriavaimen tulisi määrittää tämän korjaustiedoston oikea asennustapa. Msjava.dll-tiedoston versiona säilyy 5.00.3805.0000 korjaustiedoston asentamisen jälkeen.

Tämän korjaustiedoston englanninkielisessä versiossa on seuraavassa taulukossa luetellut tiedostomääritteet (tai uudemmat). Tiedostojen päivämäärät ja kellonajat ovat UTC (Coordinated Universal Time) -ajan mukaisia. Kun tarkastelet tiedoston tietoja, sen aika muunnetaan paikalliseksi ajaksi. Voit selvittää UTC-ajan ja paikallisen ajan välisen eron Ohjauspaneelin Päivämäärä ja aika -työkalun Aikavyöhyke-välilehdessä.
   Päiväys    Aika    Koko  Tiedostonimi   ------------------------------------------   18.2.2002  07:38                  2,678  Msjdbc.cer   21.8.2002  17:28                137,482  Msjdbc.zip   16.8.2002  09:57                 10,957  Osp.zip				
Nämä tiedostot tallennetaan %Windir%\Java\Classes-kansioon. Pakatut .zip-tiedostot sisältävät seuraavat Java-luokat.
   21.8.2002   17:28   24,824  Jdbcodbc.class   21.8.2002   17:28      800  Jdbcodbcboundcol.class   21.8.2002   17:28    1,119  Jdbcodbcboundparam.class   21.8.2002   17:28      848  Jdbcodbcbusyflag.class   21.8.2002   17:28    5,193  Jdbcodbccallablestatement.class   21.8.2002   17:28    8,347  Jdbcodbcconnection.class   21.8.2002   17:28      447  Jdbcodbcconnectioninterface.class   21.8.2002   17:28   28,036  Jdbcodbcdatabasemetadata.class   21.8.2002   17:28      710  Jdbcodbcdecimal.class   21.8.2002   17:28    6,096  Jdbcodbcdriver.class   21.8.2002   17:28      308  Jdbcodbcdriverattribute.class   21.8.2002   17:28      415  Jdbcodbcdriverinterface.class   21.8.2002   17:28    2,990  Jdbcodbcinputstream.class   21.8.2002   17:28      611  Jdbcodbclimits.class   21.8.2002   17:28    2,339  Jdbcodbcobject.class   21.8.2002   17:28    8,063  Jdbcodbcpreparedstatement.class   21.8.2002   17:28      912  Jdbcodbcpseudocol.class   21.8.2002   17:28   12,865  Jdbcodbcresultset.class   21.8.2002   17:28   12,865  Jdbcodbcresultset.class   21.8.2002   17:28    5,503  Jdbcodbcresultsetmetadata.class   21.8.2002   17:28      523  Jdbcodbcsqlwarning.class   21.8.2002   17:28    6,116  Jdbcodbcstatement.class   21.8.2002   17:28    1,451  Jdbcodbctimestamp.class   21.8.2002   17:28      566  Jdbcodbctypeinfo.class   21.8.2002   17:28   13,595  Odbcdef.class   28.7.1997   13:15      247  Accessdeniedexception.class   28.7.1997   13:15      243  Conversionexception.class   28.7.1997   13:15    1,033  Datasource.class   28.7.1997   13:15    1,033  Datasource.class   28.7.1997   13:15      253  Illegalargumentexception.class   28.7.1997   13:15      251  Notimplementedexception.class   28.7.1997   13:15    1,736  Oledbsimpleprovider.class   28.7.1997   13:15    1,123  Oledbsimpleproviderlistener.class   28.7.1997   13:15      384  Ospcomp.class   28.7.1997   13:15      261  Ospexception.class   28.7.1997   13:15      264  Ospfind.class   28.7.1997   13:15      304  Ospformat.class   28.7.1997   13:15      912  Ospmrshl.class   28.7.1997   13:15      286  Osprw.class   28.7.1997   13:15      260  Ospxfer.class   28.7.1997   13:15      368  __MIDL___MIDL_ITF_SIMPDATA_0000_0001.CLASS				
Tila
Microsoft on vahvistanut, että tämä ongelma saattaa aiheuttaa jonkinasteisen suojausheikkouden Microsoft VM:ssä.
suojauskorjaus
Ominaisuudet

Artikkelin tunnus: 329077 – Viimeisin tarkistus: 01/10/2015 13:45:45 – Versio: 8.3

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