MS02-052: Luka w klasach JDBC maszyny wirtualnej firmy Microsoft może umożliwiać uruchamianie kodu źródłowego

Ten artykuł został zarchiwizowany. Jest oferowany „taki, jaki jest” i nie będzie już aktualizowany.
Symptomy
Maszyna wirtualna (VM) firmy Microsoft jest przeznaczona dla 32-bitowych wersji systemów Microsoft Windows. Maszyna wirtualna firmy Microsoft wchodzi w skład większości wersji systemów Windows i programu Microsoft Internet Explorer. Dostępna jest nowa poprawka dla maszyny wirtualnej firmy Microsoft. Ta poprawka koryguje trzy luki w zabezpieczeniach. Kierunki ataku w przypadku wszystkich luk są prawdopodobnie takie same. Aby wykorzystać te luki, atakujący może utworzyć stronę sieci Web, a następnie udostępnić ją na serwerze lub wysłać jako wiadomość e-mail.

Pierwsza luka jest związana z klasami JDBC (Java Database Connectivity), które mają funkcje zezwalające programom Java na nawiązywanie połączenia i korzystanie z danych z wielu różnych źródeł danych. Dotyczy to zarówno plików prostych, jak i baz danych programu Microsoft SQL Server. Luka wynika z wadliwej konstrukcji procesu weryfikacji przez klasy żądania dotyczącego ładowania i uruchamiania biblioteki DLL na komputerze użytkownika. Procedury kontrolne wykonywane przez klasy umożliwiają upewnienie się, że tylko autoryzowane programy mogą zgłaszać żądania tego typu, jednak procedura kontrolna może być „fałszowana” przez umyślne nieprawidłowe formowanie żądania w określony sposób. Atakujący może więc załadować i uruchomić jakąkolwiek bibliotekę DLL na komputerze użytkownika.

Druga luka również jest związana z klasami JDBC i wynika z faktu, że niektóre funkcje w klasach niepoprawnie sprawdzają dojścia udostępniane jako wejścia. Jedna z metod bezpośredniego wykorzystania tej luki polega na dostarczaniu nieprawidłowych danych zamiast rzeczywistego dojścia podczas wywoływania funkcji tego typu. Firma Microsoft potwierdziła, że ten scenariusz może być przyczyną przerwania działania programu Internet Explorer. Korzystając z tej luki, atakujący może również dostarczać dane umożliwiające uruchomienie kodu źródłowego w kontekście zabezpieczeń użytkownika.

Trzecia luka jest związana z klasą zapewniającą obsługę korzystania ze standardu XML przez programy Java. Ta klasa udostępnia kilka metod. Niektóre z tych metod mogą być używane przez dowolny program, jednak z innych powinny korzystać tylko zaufane programy. Klasa nie różnicuje jednak prawidłowo poszczególnych przypadków i udostępnia wszystkie metody wszystkim programom. Ta luka umożliwia korzystanie z funkcji zezwalających programom na wykonywanie dowolnych operacji na komputerze użytkownika.
Rozwiązanie
Aby rozwiązać ten problem, zainstaluj poprawkę opisaną w następującym artykule z bazy wiedzy Microsoft Knowledge Base:
810030 MS02-069: Usterka w maszynie Microsoft VM może narazić system Windows na atak
Aktualizacja zabezpieczeń 329077 została zastąpiona aktualizacją 810030.

Ta aktualizacja wprowadza następujące zmiany w rejestrze:
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"
Uwaga: Niezależnie od numeru wersji wyświetlanego przez program Jview, opisany klucz rejestru powinien być decydującym potwierdzeniem poprawnej instalacji tej poprawki. Plik Msjava.dll pozostanie w wersji 5.00.3805.0000 po zainstalowaniu tej poprawki.

Wersja anglojęzyczna tej poprawki ma atrybuty pliku pokazane w poniższej tabeli (lub nowsze). Daty i godziny ostatniej modyfikacji plików podano zgodnie z czasem UTC (Coordinated Universal Time). Są one zamieniane na czas lokalny po wyświetleniu informacji o pliku. Aby zobaczyć różnicę między czasem UTC i czasem lokalnym, skorzystaj z karty Strefa czasowa narzędzia Data i godzina w Panelu sterowania.
   Data         Godzina   Rozmiar   Nazwa pliku   --------------------------------------------   18-lut-2002  07:38       2 678   Msjdbc.cer   21-sie-2002  17:28     137 282   Msjdbc.zip   16-sie-2002  09:57      10 957   Osp.zip				
Te pliki zostają umieszczone w folderze %Windir%\Java\Classes. Skompresowane pliki .zip zawierają następujące klasy Java:
   21-sie-2002   17:28   24 824  Jdbcodbc.class   21-sie-2002   17:28      800  Jdbcodbcboundcol.class   21-sie-2002   17:28    1 119  Jdbcodbcboundparam.class   21-sie-2002   17:28      848  Jdbcodbcbusyflag.class   21-sie-2002   17:28    5 193  Jdbcodbccallablestatement.class   21-sie-2002   17:28    8 347  Jdbcodbcconnection.class   21-sie-2002   17:28      447  Jdbcodbcconnectioninterface.class   21-sie-2002   17:28   28 036  Jdbcodbcdatabasemetadata.class   21-sie-2002   17:28      710  Jdbcodbcdecimal.class   21-sie-2002   17:28    6 096  Jdbcodbcdriver.class   21-sie-2002   17:28      308  Jdbcodbcdriverattribute.class   21-sie-2002   17:28      415  Jdbcodbcdriverinterface.class   21-sie-2002   17:28    2 990  Jdbcodbcinputstream.class   21-sie-2002   17:28      611  Jdbcodbclimits.class   21-sie-2002   17:28    2 339  Jdbcodbcobject.class   21-sie-2002   17:28    8 063  Jdbcodbcpreparedstatement.class   21-sie-2002   17:28      912  Jdbcodbcpseudocol.class   21-sie-2002   17:28   12 865  Jdbcodbcresultset.class   21-sie-2002   17:28      615  Jdbcodbcresultsetinterface.class   21-sie-2002   17:28    5 503  Jdbcodbcresultsetmetadata.class   21-sie-2002   17:28      523  Jdbcodbcsqlwarning.class   21-sie-2002   17:28    6 116  Jdbcodbcstatement.class   21-sie-2002   17:28    1 451  Jdbcodbctimestamp.class   21-sie-2002   17:28      566  Jdbcodbctypeinfo.class   21-sie-2002   17:28   13 595  Odbcdef.class   28-lip-1997   13:15      247  Accessdeniedexception.class   28-lip-1997   13:15      243  Conversionexception.class   28-lip-1997   13:15    1 033  Datasource.class   28-lip-1997   13:15      746  Datasourcelistener.class   28-lip-1997   13:15      253  Illegalargumentexception.class   28-lip-1997   13:15      251  Notimplementedexception.class   28-lip-1997   13:15    1 736  Oledbsimpleprovider.class   28-lip-1997   13:15    1 123  Oledbsimpleproviderlistener.class   28-lip-1997   13:15      384  Ospcomp.class   28-lip-1997   13:15      261  Ospexception.class   28-lip-1997   13:15      264  Ospfind.class   28-lip-1997   13:15      304  Ospformat.class   28-lip-1997   13:15      912  Ospmrshl.class   28-lip-1997   13:15      286  Osprw.class   28-lip-1997   13:15      260  Ospxfer.class   28-lip-1997   13:15      368  __MIDL___MIDL_ITF_SIMPDATA_0000_0001.CLASS				
Stan
Firma Microsoft potwierdziła, że ten problem może stanowić pewną lukę w zabezpieczeniach maszyny wirtualnej firmy Microsoft.
Więcej informacji
Aby uzyskać więcej informacji na temat tej luki, odwiedź następującą witrynę firmy Microsoft w sieci Web:
poprawka_zabezpieczeń
Właściwości

Identyfikator artykułu: 329077 — ostatni przegląd: 01/10/2015 13:45:50 — zmiana: 8.3

Maszyna wirtualna dla języka Java firmy Microsoft, Maszyna wirtualna dla języka Java firmy Microsoft

  • kbnosurvey kbarchive kbbug kbfix kbsecvulnerability kbsecurity kbsecbulletin KB329077
Opinia