10 lipca Microsoft opublikował informacje o 3 nowych błędach
dotyczących Microsoft SQL Server 2000. Najpoważniejszy z nich pozwala pod
pewnymi warunkami uruchamiać dowolny kod na serwerze.
Błąd dotyczy wszystkich wersji SQL Server 2000, a także
Microsoft SQL Server Desktop Engine (MSDE) 2000.
Więcej szczegółów można znaleźć w biuletynie MS02-034, pod adresem:
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/MS02-034.asp,
oraz w artykule Knowlege base Q316333.
Poprawka eliminuje 3 błędy:
-
Błąd typu przepełnienie bufora (buffer overrun) w
procedurze stosowanej do kodowania informacji o uwierzytelnianiu
usługi SQL Server. Atakujący, może uzyskać kontrolę nad bazą, i w zależności
od praw konta, na które loguje się usługa SQL, także nad serwerem.
-
Błąd typu przepełnienie bufora (buffer overrun) w
procedurze związanej z dopisywaniem wsadowym rekordów (typu bulk). Atakujący
może uzyskać zarówno kontrolę nad bazą, jak i w szczególnych przypadkach nad
całym serwerem.
-
Błędnie przypisane uprawnienia do klucza w rejestrze
który przechowuje informacje o koncie na którym działa usługa SQL Server.
Atakujący może uzyskać większe prawa niż te, jakie nadał mu administrator.
Czynniki osłabiające podatność na atak:
Błąd typu przepełnienie bufora (buffer overrun) w
procedurze stosowanej do kodowania informacji o uwierzytelnianiu usługi
SQL Server:
-
Efekt tego błędu zależy od konfiguracji serwisu SQL
Server, który pracuje w kontekście przypisanym przez administratora. Od tego
zależy, co może zrobić atakujący wykorzystujący tą lukę.
-
"Dobre zasady" przy projektowaniu polityki bezpieczeństwa
nakazują, by nie każdy użytkownik mógł uruchamiać dowolne kwerendy na
serwerze bazodanowym.
Błąd typu przepełnienie bufora (buffer overrun) w
procedurze związanej z dopisywaniem wsadowym rekordów:
-
Atakujący musi posiadać wystarczające prawa by
wykorzystać tą lukę - operację wsadowego dopisywania rekordów mogą wykonywac
tylko administratorzy lub użytkownicy z uprawnieniami Bulk Admins.
-
Efekt uruchomionego kodu zależy od praw, jakie są
przypisane usłudze SQL Server.
-
"Dobre zasady" przy projektowaniu polityki bezpieczeństwa
nakazują, by nie każdy użytkownik mógł uruchamiać dowolne kwerendy na
serwerze bazodanowym.
Błędnie przypisane uprawnienia do klucza w rejestrze:
-
Aby wykorzystać tą lukę , użytkownik musi mieć prawa do
uruchamiania kwerend na SQL Server. Dodatkowo, musi należeć do sysadmin lub
mieć prawa do uruchamiania procedury przechowywanej xp_regwrite.
Identyfikatory:
-
Błąd typu przepełnienie bufora (buffer overrun) w
procedurze stosowanej do kodowania informacji o uwierzytelnianiu
usługi SQL Server:
CVE-CAN-2002-0624
-
Błąd typu przepełnienie bufora (buffer overrun) w
procedurze związanej z dopisywaniem wsadowym rekordów:
CVE-CAN-2002-0641
-
Błędnie przypisane uprawnienia do klucza w rejestrze:
CVE-CAN-2002-0642
Lokalizacja poprawek
Poprawka dla Microsoft SQL Server 2000 znajduje się pod tym
adresem:
http://support.microsoft.com/support/misc/kblookup.asp?id=Q316333.
Dostępne są wersje w następujących językach:
Poprawka może być instalowana na systemach z zainstalowanym SQL Server 2000
SP2. Będzie także wchodzić w skład SQL Server 2000 SP3. Nie jest zależna od wersji językowej SQL Server.
Po instalacji nie jest konieczny restart maszyny, a tylko
ponowne uruchomienie usługi SQL Server.
Poprawka zastępuje tą, która została opublikowana w Microsoft
Security Bulletin
MS02-020
Aby sprawdzić, czy poprawka została zainstalowana, należy
zbadać daty plików wymienionych w manifeście towarzyszącym artykułowi
http://support.microsoft.com/support/misc/kblookup.asp?id=
Q316333 (patrz też poniżej):
Data Godzina Wersja Wielkość (bajty) Nazwa pliku
--------------------------------------------------------------------
02-Dec-2001 21:14 1,652 EULA.txt
02-Jul-2002 08:35 2000.80.650.0 107,088 Impprov.dll
06-Apr-2002 19:08 2000.80.606.0 62,024 Odsole70.dll
02-Jan-2002 18:59 18,185 Qfe356326.sql
17-Jun-2002 10:31 857 qfe356938.sql
10-Jul-2002 17:21 9,594 Readme.txt
13-Jun-2002 08:33 25,152 Servpriv.exe
28-Jun-2002 09:52 7,454,801 Sqlservr.exe
28-Jun-2002 09:52 12,616,704 Sqlservr.pdb
04-Jan-2002 17:12 18,130 Uninstall.sql
06-Apr-2002 19:08 2000.80.606.0 70,208 Xplog70.dll
06-Apr-2002 19:08 2000.80.606.0 53,828 Xpqueue.dll
06-Apr-2002 19:08 2000.80.606.0 156,228 Xprepl.dll
14-May-2002 20:41 2000.80.628.0 279,104 Xpstar.dll
06-Apr-2002 19:08 2000.80.606.0 98,872 Xpweb70.dll
Pakiet nie zawiera komponentów Microsoft Data Access ani
żadnych poprawek do usług analitycznych.
Microsoft
dziękuje Cesar Cerrudo oraz Mark Litchfield
z Next Generation Security Software Ltd.
za zgłoszenie błędu w procesie aktualizacji wsadowej, co pozwoliło nam lepiej
chronić klientów.