Oracle Critical Patch Update Advisory – Kwiecień 2011

Piotr Sajda Björn Bröhl

1. Podstawy

1.1. Analiza Oracle Technology Network (OTN) i Oracle Metalink

Podstawą przeprowadzonej analizy są niżej wymienione źródła oraz własne badania:

Przegląd Patch Set Updates i Critical Patch Updates:

http://www.oracle.com/technetwork/topics/security/alerts-086861.html

Ogólne informacje dotyczące Oracle CPU, kwiecień 2011:

http://www.oracle.com/technetwork/topics/security/cpuapr2011-301950.html

Macierz ryzyka dla RDBMS w Oracle CPU, kwiecień 2011:

http://www.oracle.com/technetwork/topics/security/cpuapr2011-301950.html#AppendixDB

Oracle Patch Set Update i Critical Patch Update kwiecień 2011 – dostepność [ID 1291877.1]:

https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=1291877.1

Map of Public Vulnerability to Advisory/Alert:

http://www.oracle.com/technetwork/topics/security/public-vuln-to-advisory-mapping-093627.html

Oracle Critical Patch Update, kwiecień 2011 – Database Patch Security Vulnerability Molecule Mapping [ID 1291868.1]:

https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=1291868.1

Oracle Critical Patch Update, kwiecień 2011 – Database Known Issues [ID 1291830.1]:

https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=1291830.1

Oracle Critical Patch Update, kwiecień 2011 – Documentation Map [ID 1305064.1]:

https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=1305064.1

Oracle Critical Patch Update, kwiecień 2011 – pliki Readme:

Oracle 10.1.0.5, 10.2.0.4, 10.2.0.5, 11.1.0.7, 11.2.0.1, 11.2.0.2

1.2. Analiza dodatkowych źródeł

Przy opracowaniu zastosowane zostały zewnętrzne źródła:

http://www.red-database-security.com/

http://cve.mitre.org

http://www.teamshatter.com/topics/general/team-shatter-exclusive/what-does-the-april-2011-oracle-cpu-mean-for-dbas-and-database-security-staff/

http://nvd.nist.gov/cvss.cfm?calculator&adv&version=2

https://www.infosecisland.com/blogview/13333-Is-Oracle-Misleading-Its-Database-Customers-With-CPUs.html

2. Ocena ogólna CPU

Kwietniowe CPU 2011 zawiera łącznie 73 poprawki dla palety produktów Oracle, a tym samym trochę więcej niż w poprzedniej edycji1. Poprawki podzielone są na następujące grupy produktów:

  • Oracle Database
  • Oracle Fusion Middleware
  • Oracle Enterprise Manager
  • Oracle Applications – E-Business Suite
  • Oracle Applications – Oracle PeopleSoft Enterprise, JD Edwards, Siebel i Oracle Supply Chain Product Suite
  • Oracle Health Sciences Applications
  • Oracle Sun Products Suite

Tym razem większość błędów została rozwiązana dla Oracle Applications. Jest ich 30, z czego 14 przypada na Oracle PeopleSoft i 8 na JD Edwards. Oceny wg Base Scores są raczej średnie, niezbyt wysokie. Maksymalna ocena dla Oracle Applications dotyczy JD Edwards z wartością 6,8. W produktach Sun Product Suite zostało usuniętych 26 słabych punktów (styczeń 2011: 23), w tym Open Office Suite z 8 błędami. Dla Sun Product Suite podobnie jak w poprzednim CPU – ponownie rozwiązano problemy narażone na łatwy atak i spowodowanie krytycznej awarii systemów. Usunięto błąd oceniony znów najwyżej, czyli na 10 punktów w skali Base Score (CVE-2011-0807).

W odniesieniu do Oracle Database Server aktualne CPU usuwa część słabych punktów. Ta liczba odpowiada tej z poprzedniego CPU (styczeń 2010: 9, kwiecień 2010: 7, lipiec 2010: 6, styczeń 2011: 5). Na szczególną uwagę zasługuje tym razem również Patch dla Oracle Fusion Middleware i poprawka dla komponentów Oracle Enterprise Manager Grid Control, które znów pośrednio dotyczą bazy danych.

Podobnie jak w styczniu, aktualny CPU dla Database Server nie jest tak krytyczny. Poprawki obejmują komponenty, które nie są używane przez wszystkich klientów. Dlatego też również w tym przypadku – w zależności od środowiska – można ich uniknąć lub zainstalować aktualny CPU. Klienci korzystający z Oracle Server w wersji 11.1.0.7 lub 11.2.0.1, powinni sprawdzić, czy został u nich zainstalowany Warehouse Builder, ponieważ w tych wersjach jest częścią instalacji standardowej. Jeżeli Warehouse Builder nie jest używany, powinien zostać odinstalowany, żeby wykluczyć najwyżej oceniane luki w bezpieczeństwie (6,5 Base Score).

Kolejne edycje CPU zaplanowano na 19-ty lipca 2011 i 18-ty października 2011. Zarówno dla Database Server Releases 10.2.0.4 jak i 11.2.0.1 będzie to ostatnie wydanie CPU (osiągnięte zostanie Patching End Date). Klientom korzystającym z tych wersji zaleca się upgrade bazy danych do wersji wyższej.

W poniższym CPU-Info znajdą Państwo dalsze istotne komentarze i wyniki testów.

3. Wprowadzone poprawki zabezpieczeń dla Oracle Database Server

Poniższy kwietniowy CPU 2011 opisuje i ocenia luki w bezpieczeństwie rozwiązane zarówno dla Database Server jak i Fusion Middleware oraz Enterprise Manager Grid Control:

CVE-2011-0792 Oracle Warehouse Builder (10.2.0.5 (OWB), 11.1.0.7)

Oceniona najwyżej luka w kwietniowym CPU 2011 dotyczy Oracle Warehouse Builder. Znajduje się ona w standardowej instalacji serwera Oracle od wersji Oracle 11g Release. We wcześniejszych wersjach był on instalowany osobno, w razie potrzeby. Wykorzystać tę lukę mogą nawet użytkownicy z niskimi uprawnieniami m. in. przez sieć i wpłynąć na dostępność danych oraz ich integralność. Base Score dla tej luki wynosi 6,5, jednak wg Teamshatter2 powinien on właściwie wynosić 9,0, ponieważ luka powoduje krytyczne zagrożenie dla serwera bazy danych i wg tej oceny powinna być zakwalifikowana jako „Complete” a nie „Partial+”.3 Zaleca się instalację Patcha dla baz danych zawierających komponent Warehouse Builder. Innym rozwiązaniem jest odinstalowanie Oracle Warehouse Builder, jeżeli nie jest używany.

CVE-2011-0799 Oracle Warehouse Builder (10.2.0.5 (OWB), 11.1.0.7, 11.2.01)

Bug ten podobnie jak CVE-2011-0792 dotyczy komponentu Warehouse Builder i został oceniony na Base Score 6,5. Również w tym przypadku można zaatakować przez sieć i manipulować danymi lub spowodować awarię systemu. Zaleca się instalację Patcha dla baz danych zawierających komponent Warehouse Builder. Również w tym przypadku podobnie jak dla CVE-2011-0792 odinstalowanie komponentu Warehouse Builders jest inną skuteczną możliwością obejścia tej luki w bezpieczeństwie.

CVE-2009-3555 (Oracle Fusion Middleware, Oracle Security Service (10.1.0.5, 10.2.0.3, 10.2.0.4, 10.2.0.5, 11.1.0.7, 11.2.0.1, 11.2.0.2))

Problem ten oprócz Oracle Fusion Middleware dotyka wielu innych producentów i produktów. Przez otwartą sesję HTTPS haker może przemycić dane, w ten sposób ma również możliwość zaatakowania serwera bazy danych. Lukę można wykorzystać zdalnie i bez uwierzytelnienia. Base Score wynosi 5,8.

CVE-2011-0787 (Oracle Enterprise Manager Grid Control, Application Service Level Management (11.1.0.7))

W komponencie Application Service Level Management Oracle Enterprise Manager Grid Control wykryto podobną lukę w bezpieczeństwie, którą można załatać instalacją CPU z kwietnia. Base Score dla tego przypadku wynosi 5,5. Napastnik może zaatakować przez sieć wykonując przez SQL-Injection polecenia jako SYSMAN. Teamshatter ocenił go na Base Score 6,84. Naszym zdaniem ryzyko w tym przypadku nie jest aż tak wysokie, ponieważ użytkownicy Grid Control i tak powinni być administratorami bazy danych, którzy z kolei mieliby dużo łatwiejsze i bardziej skuteczne możliwości do wglądu i manipulacji danych niż przez SQL-Injection.

CVE-2011-0806 Network Foundation (only on Windows, 10.1.0.5, 10.2.0.4, 10.2.0.5, 11.1.0.7, 11.2.0.1, 11.2.0.2)

Bug ten dotyczy systemów Windows. Oracle Net Foundation Layer jest odpowiedzialny za nawiązanie i utrzymanie połączenia pomiędzy aplikacjami klienckimi a serwerem. Jest to słaby punkt w bezpieczeństwie, przez który można dokonać ataku na dostępność serwera bazy danych. Oracle ocenia go na Base Score 5,0. Istnieje również bardzo podobny bug – CVE-2010-0903 – który w lipcowym CPU 2010 został oceniony na Base Score 7,85. Aktualnie wpływ tej luki na dostępność bazy danych jest oceniany jako „Partial+”, wcześniej miał kategorię „Complete”. Oznacza to, że Oracle obecnie łagodzi ocenę oddziaływania błędów, nadając częściowo niższy Base Score niż przedstawia to realne zagrożenie.

CVE-2011-0785 (Oracle Fusion Middleware, Oracle Help (-))

O tym słabym punkcie niewiele wiadomo. Pozwala on na manipulowanie danymi. Dostęp jest możliwy również przez sieć. Bug ten został już rozwiązany we wszystkich utrzymywanych wersjach.

CVE-2011-0805 UIX (10.1.0.5, 10.2.0.4, 11.1.0.7, 11.2.0.1)

Również o tej luce niewiele wiadomo. Dotyczy ona komponentów User Interface XML dostępnych od wersji 9i, które są wykorzystywane np. w Database Control. Alexander Kornbrust przypuszcza, że bug ten może być wykorzystany tylko przez Cross Site Scripting (tzn. wyłącznie przy aktywnej „współpracy” ofiary, która pozwoli sobie na podsunięcie kodu przez hakera). Base Score oszacowany został niezbyt wysoko, na 4,3.

CVE-2011-0793 Database Vault (10.2.0.3, 10.2.0.4, 10.2.0.5, 11.1.0.7, 11.2.0.1)

Błąd dotyczy Database Vault. Użytkownik z uprawnieniami SYSDBA może wywołać kod, jako inny użytkownik, pozostając anonimowym. Ponieważ SYSDBA i tak posiada wysokie uprawnienia, a wykorzystanie luki wiąże się „jedynie” z zafałszowaniem audytu aktywności użytkownika, błąd oceniono względnie nisko na 3,6.

CVE-2011-0804 Database Vault (10.2.0.3, 10.2.0.4, 10.2.0.5, 11.1.0.7, 11.2.0.1, 11.2.0.2)

Alexander Kornbrust z Red Database Security znalazł błąd, który również dotyczy Database Vault. W tym przypadku można wykorzystać jedną z reguł Database Vault, która za pomocą funkcji „UPPER” kontroluje nazwę użytkownika, aby wykonać polecenie z uprawnieniami SYS. Warunkiem koniecznym jest korzystanie z aktywnego konta. Base Score wynosi 3,6, jest więc raczej niski.

Podsumowanie 11.2.0.2:

W wersji 11.2.0.2 usunięto trzy luki w systemie bezpieczeństwa. Jeden z błędów dotyczy tylko systemów zawierających Oracle Fusion Middleware. Kolejna luka w bezpieczeństwie bazy danych dotyczy systemów Windows. Trzeci błąd obejmuje Oracle Database Vault. We wszystkich przypadkach zaleca się instalację CPU z kwietnia 2011. Jeżeli żaden z tych komponentów nie jest używany i nie jest to Windows Server, to instalacja poprawek nie jest konieczna.

Podsumowanie 11.2.0.1:

Przed instalacją poprawki dla wersji 11.2.0.1 należy sprawdzić, czy dotknięte problemem komponenty są w ogóle zainstalowane i używane. Jeżeli korzysta się z Oracle Warehouse Builder to instalacja kwietniowego CPU 2011 jest konieczna. Alternatywą dla instalacji CPU jest odinstalowanie Oracle Warehouse Builder w przypadku, gdy nie jest on potrzebny lub nieinstalowanie tego komponentu. Dla baz danych działających na serwerach Windows instalacja patcha jest mocno zalecana. To samo dotyczy sytuacji, w których wykorzystywane są komponenty Fusion Middleware lub Enterprise Manager Grid Control. Poza tym potrzebna jest kontrola, czy dotknięte problemem komponenty w ogóle kiedykolwiek zostały zainstalowane lub czy instalacja patcha była już rozważana. Najwyższą ocenę 6,5 wg Base Score dla wersji 11.2.0.1 otrzymał Oracle Warehouse Builder.

Podsumowanie 11.1.0.7:

W tym przypadku obowiązują takie same zalecenia, jak w przypadku wersji 11.2.0.1. Należy najpierw sprawdzić, które komponenty są w użyciu, czy są potrzebne i czy można je odinstalować. Dla systemów z Oracle Warehouse Builder działających na Fusion Middleware, używających Oracle Enterprise Manager Grid Control lub działających na serwerach Windows – instalacja patcha jest konieczna.

Podsumowanie 10.2.0.5:

Wersja 10.2.0.5 dotknięta jest wieloma problemami, które rozwiązuje kwietniowe wydanie CPU 2011. Najwyższa ocena Base Score 6,5 dotyczy wykorzystania Oracle Warehouse Builder. Na tych systemach powinno się koniecznie zainstalować poprawki. To samo dotyczy baz danych zainstalowanych na serwerach Windows – dotyczą ich luki ocenione w Base Score na 5,0. Również w tym przypadku obowiązuje zasada: jeżeli komponenty zawierające błędy nie są używane – można się wstrzymać z instalacją poprawek, aż do kolejnej lipcowej edycji CPU.

Podsumowanie 10.2.0.4:

Dla Oracle Database Server wersji 10.2.0.4 zaproponowano wiele rozwiązań. Maksymalna ocena w Base Score wynosi 5,8 w przypadku korzystania z Fusion Middleware, bezpośrednio dla serwera bazy danych najwyższa ocena wynosi 5,0 na systemach Windows oraz 4,3 dla pozostałych systemów operacyjnych. Ryzyko ataku w przypadku problemów rozwiązanych przez kwietniowe CPU 2011 jest umiarkowane.

Podsumowanie 10.2.0.3:

Wersja 10.2.0.3 zawiera błędy w obszarze Oracle Fusion Middleware i Database Vault. Tylko w przypadku, gdy używa się tych komponentów wdrożenie poprawek zawartych w CPU z kwietnia 2011 jest wymagane.

Podsumowanie 10.1.0.5:

Dla wersji 10.1.0.5 rozwiązano problemy zawarte w Fusion Middleware, warstwie sieciowej serwerów Windows jak również Interface XML UIX. W przypadku Fusion Middleware i systemów Windows instalacja poprawek jest pilnie zalecana. Odnośnie UIX najpierw należy sprawdzić, w jakim stopniu jest wykorzystywany i czy można go odinstalować, jeżeli nie jest potrzebny.

4. Wyniki testów instalacji CPU na różnych systemach

4.1. Opis instalacji CPU

Ponieważ instalacja każdego z Critical Patch Updates (CPU) na różnych systemach wymaga wiele trudu, wykonaliśmy to zadanie dla Państwa.

W ramach nowego CPU-Info instalujemy CPU na różnych systemach i na różnych wersjach bazy danych Oracle. Do tej pory są to:

Przetestowane systemy i wersje baz danych

Platform Linux x86-64 Solaris 64 Bit (SPARC) AIX 5L Windows AMD 64Windows 2003 R2 SP2 64 Bit
Wersja 11.2.0.1 11.1.0.7 11.2.0.1 11.1.0.7
11.1.0.7 10.2.0.4 10.2.0.4 10.2.0.4
10.2.0.4

Instalacje są testowane przez Grid Control zarówno manualnie jak i automatycznie.

Chętnie doradzimy Państwu przy konfiguracji Oracle Grid Control odnośnie automatycznego Patch Deployment lub też innej konfiguracji oprogramowania firmy Oracle.

Jako podstawę do instalacji aktualnego CPU wykorzystujemy zawsze wcześniejsze instalacje CPU (dla aktualnego CPU-Info wykorzystaliśmy CPU ze stycznia 2011).

4.2. Wyniki przeprowadzonych testów

Poniżej przedstawiamy zestawienie obrazujące, który Patch został zainstalowany na jakiej bazie danych oraz jakie wystąpiły problemy w czasie instalacji.

Wyniki instalacji testowych, cz. 1

Platforma Linux x86-64 Linux x86-64 Linux x86-64 Solaris 64 Bit (SPARC) Solaris 64 Bit (SPARC)
Wersja RDBMS 10.2.0.4 11.1.0.7 11.2.0.1 10.2.0.4 11.1.0.7
Numer Patcha 11724999 11725015 11724991 11725015 11724999
Wynik instalacji manualnej
Komentarz do instalacji manualnej Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011
Wynik instalacji automatycznej
Komentarz do instalacji automatycznej Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011

Wyniki instalacji testowych, cz. 2

Platforma AIX 5L AIX 5L Windows AMD 64Windows 2003 R2 SP2 64 Bit Windows AMD 64Windows 2003 R2 SP2 64 Bit
Wersja RDBMS 10.2.0.4 11.2.0.1 10.2.0.4 11.1.0.7
Numer Patcha 11725015 11724991 12328503 11741170
Wynik instalacji manualnej
Komentarz do instalacji manualnej Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Manualna instalacja funkcjonuje na bazie CPU ze stycznia 2011
Wynik instalacji automatycznej
Komentarz do instalacji automatycznej Opatch z błędem, nie udaje się zastąpić libjox*.a podczas instalacji one of patch na platformie AIX [ID 779083.1] Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011 Automatyczna instalacja funkcjonuje na bazie CPU ze stycznia 2011

Legenda:

– Wykonano pomyślnie, żadne błędy nie wystąpiły.
– Wykonano pomyślnie lecz dodatkowe kroki musiały zostać wykonane.
– Błąd. Dany krok nie został wykonany.

5. Glosariusz

Poniższy słownik zawiera krótkie opisy terminów użytych w CPU-Info.

Wszystkie te pojęcia są szczegółowo omawiane podczas „Secure Development Trainings”. Te i inne szkolenia przeprowadzane są regularnie w firmie OPITZ CONSULTING.

CPU – oznacza Critical Patch Updates, określenie używane przez Oracle na poprawki związane z bezpieczeństwem. Za pomocą zapytania SQL (select * from dba_registry_history) można dowiedzieć się, jakie poprawki są zainstalowane w bazie danych.

CVE – jest skrótem od „Common Vulnerabilities and Exposures”, będącym standardem nazewniczym dla luk w systemie bezpieczeństwa systemów komputerowych.

DoS – skrót od „Denial of Service” – oznacza formę ataku na serwer albo komputer w sieci powodującą niezdolność do świadczenia danych usług. Z reguły dokonuje się tego przez przeciążenie.

SQL-Injection – jest luką w bazie danych, umożliwiającą napastnikowi wywołanie dodatkowych poleceń SQL w celu eskalacji przywilejów albo uzyskania dostępu do nieuprawnionych danych. SQL-Injection może wystąpić na wszystkich warstwach oprogramowania (klient, serwer aplikacyjny, baza danych, skrypty bazodanowe). Przyczyną jest zawsze zła walidacja wprowadzanych danych.

CSRF – skrót od Cross-Site Request Forgery. Oznacza, że napastnik „podsuwa” ofierze poprzez przeglądarkę swój HTTP-Request, który zostaje następnie wykonany z wykorzystaniem Session ID oraz uprawnień wykorzystanego w ten sposób użytkownika.

DBCA – skrót dla Database Configuration Assistant, graficzne narzędzie do konfiguracji baz danych.

PSU – oznacza Patch Set Update. PSU jest – analogicznie do CPU – publikowane kwartalnie przez Oracle. PSU obok luk bezpieczeństwa usuwa również istotne błędy funkcjonalne.

6. Uwagi prawne

OPITZ CONSULTING oraz firma Red Database Security przeprowadzają testy w oparciu o instalacje standardowe. Sprawdzenia te przeprowadzone są z wielką starannością przez wykwalifikowanych ekspertów. Nie mogąc jednak wykluczyć dodatkowych czynników wpływających na różnice pomiędzy środowiskiem klienta a środowiskiem testowym OPITZ CONSULTING oraz firma Red Database Security nie ponoszą żadnej odpowiedzialności, za szkody powstałe w skutek zainstalowania lub nie zainstalowania poprawek zawartych w Critical Patch Update.


1 http://www.oracle.com/technetwork/topics/security/cpuapr2011-301950.html

2 http://www.teamshatter.com/topics/general/team-shatter-exclusive/what-does-the-april-2011-oracle-cpu-meanfor-dbas-and-database-security-staff/

3 http://nvd.nist.gov/cvss.cfm?calculator&adv&version=2

4 http://www.teamshatter.com/topics/general/team-shatter-exclusive/what-does-the-april-2011-oracle-cpu-meanfor-dbas-and-database-security-staff/

5 https://www.infosecisland.com/blogview/13333-Is-Oracle-Misleading-Its-Database-Customers-With-CPUs.html