Biuletyn Bezpieczeństwa PLOUG

Od 2006-11-20 do 2007-02-01

Wojciech Dworakowski, SecuRing wojtekd@securing.pl

16.01.2007 ukazał się kolejny Oracle Critical Patch Update. Tym razem usunięto 51 podatności w różnych produktach Oracle (w tym 16 w bazie danych Oracle).

W opisywanym okresie nie ujawniono podatności wiążących się z bardzo dużym ryzykiem. Nie ujawniono też metod wykorzystania podatności, które jeszcze nie są usunięte przez producenta. Jedyną wartą odnotowania ciekawostką i niechlubnym rekordem jest usunięcie w CPU Jan 2007 dobrze znanej od 2001 roku podatności w oprogramowaniu Apache (Oracle HTTP Server), która pozwala na wylistowanie zawartości dowolnego katalogu serwera WWW. Podatność ta została opisana jako ostatnia.

Podatność SQL-injection w pakiecie SYS.DBMS_AQ

Produkty podatne na zagrożenie: Oracle Database – wszystkie wersje od 8i.

Data publicznego ujawnienia: 16.01.2007 (Alexander Kornburst – Red-Database-Security GmbH).

Opis: W pakiecie SYS.DBMS_AQ (Advanced Queuing) wykryto podatność pozwalającą na atak metodą SQL-injection i w rezultacie na uzyskanie większych przywilejów w bazie.

Status: Podatność poprawiono w CPU Jan 2007.

Ryzyko: średnie. Żeby wykorzystać opisywaną podatność, intruz musi mieć konto w bazie danych i prawa do pakietu SYS.DBMS_AQ. W publicznie dostępnej informacji o błędzie opublikowano jedynie nazwę pakietu (DBMS_AQ_INV). Poza tym nie podano żadnych szczegółów technicznych, w tym nazwy podatnej procedury i parametrów, którymi można manipulować.

Skutki potencjalnego ataku: duże. Skutkiem udanego ataku jest możliwość wykonania kodu PL/SQL z przywilejami właściciela podatnej procedury.

Szczegóły techniczne: Atak SQL injection polega na manipulacji parametrem przyjmowanym przez procedurę. Skutkiem jest wykonanie kodu PL/SQL z uprawnieniami właściciela podatnej procedury i w rezultacie osiągnięcie wyższych przywilejów w bazie.

Usunięcie podatności: Podatność jest usuwana przez wgranie zestawu poprawek „Oracle Critical Patch Update January 2006”.

Liczne podatności pozwalające na atak metodą buffer overflow

Produkty podatne na zagrożenie: Oracle Database – wszystkie wersje od 8i.

Data publicznego ujawnienia: 16.01.2007.

Opis: Manipulacja parametrami przekazywanymi do podatnych procedur może doprowadzić do wykonania wrogiego kodu w systemie operacyjnym. Kod wykona się z uprawnieniami właściciela instalacji Oracle.

Status: Podatności poprawiono w CPU Jan 2007.

Ryzyko: duże.  Podatności mogą być wykorzystane przez dowolnego użytkownika mającego możliwość wywoływania podatnych procedur z bazy danych (część z tych procedur jest dostępna dla grupy PUBLIC).

Ponadto jedna z podatności może zostać wykorzystana przez dowolnego intruza, który ma dostęp do portu 6200, na którym nasłuchuje usługa Oracle Notification Service (ONS).

W Internecie są dostępne wskazówki dotyczące nazw funkcji, które są podatne w poszczególnych pakietach, w związku z czym odnalezienie i wykorzystanie omawianych podatności jest ułatwione.

Skutki potencjalnego ataku: duże. Skutkiem ataku jest wykonanie dowolnego kodu w systemie operacyjnym z uprawnieniami właściciela instalacji Oracle lub zawieszenie procesu serwera bazy danych.

Szczegóły techniczne:
Podatności istnieją między innymi w następujących funkcjonalnościach:

  • Data Guard: SYS.DBMS_DRS, funkcja GET_PROPERTY;
  • Log Miner: SYS.DBMS_LOGMNR, procedura ADD_LOGFILE;
  • Oracle Spatial: MDSYS.MD;
  • Advanced Queuing: DBMS_REPCAT_UNTRUSTED, procedura UNREGISTER_SNAPSHOT;
  • Export: DBMS_LOGREP_UTIL, procedura GET_OBJECT_NAME;
  • Oracle Streams: SYS.DBMS_CAPTURE_ADM_INTERNAL, procedury CREATE_CAPTURE, ALTER_CAPTURE, ABORT_TABLE_INSTANTIATION;
  • Advanced Security Option: programy oklist i okdstry;
  • Oracle Text, program ctxkbtc;
  • inne w tym: Oracle Net Services, Recovery Manager, NLS Runtime, Imsgen.

Ponadto usługa Oracle Notification Service, która nasłuchuje na porcie TCP/6200 w typowych instalacjach Oracle RAC, AS i Oracle Database, jest podatna na przepełnienie bufora wejściowego. Ze względu na specyfikę usługi ONS i podatności, podatność może zostać wykorzystana przez dowolnego intruza, który uzyska zdalny dostęp do wyżej wymienionego portu.

Usunięcie podatności: Podatności są usuwane przez wgranie zestawu poprawek „Oracle Critical Patch Update January 2007”.

Liczne podatności umożliwiające atak metodą cross-site scripting w XMLDB i Oracle Reports Web Cartridge

Produkty podatne na zagrożenie: Oracle Database 9iR2 i wyższe.

Data publicznego ujawnienia: 2007.01.16.

Status: Podatności poprawiono w CPU Jan 2007.

Ryzyko: średnie.  Aby wykorzystać podatność intruz musi skłonić ofiarę do użycia specjalnie spreparowanego URL, zawierającego odnośnik do aplikacji. Ponadto w momencie użycia tego URL ofiara musi mieć otwartą sesję podatnej aplikacji.

Dla Oracle Reports Web Cartridge zostały opublikowane szczegóły techniczne pozwalające na wykorzystanie podatności.

Skutki potencjalnego ataku: duże. Skutkiem ataku jest wykonanie wrogiego kodu JavaScript w przeglądarce ofiary, co może prowadzić do wykonania dowolnej operacji w aplikacji z uprawnieniami ofiary lub do przechwycenia sesji ofiary w aplikacji.

Szczegóły techniczne:
Podatność na atak cross-site scripting wiąże się z brakiem sprawdzania przez aplikację wartości parametrów przekazywanych z przeglądarki użytkownika. Podatność istnieje jeśli parametr pobierany od użytkownika, po przetworzeniu jest wyświetlany na stronie HTML wygenerowanej przez aplikację.

Atak polega na skonstruowaniu URL, który zawiera w podatnym parametrze zaszyty wrogi kod JavaScript. Gdy ofiara wykona tak przygotowany URL, to wrogi kod JavaScript zostanie wykonany w przeglądarce ofiary w kontekście podatnej aplikacji.

Usunięcie podatności: Podatności są usuwane przez wgranie zestawu poprawek „Oracle Critical Patch Update January 2007”.

Możliwość wylistowania zawartości dowolnego katalogu na serwerze WWW (na platformie Windows)

Produkty podatne na zagrożenie: Oracle HTTP Server 9.0.1 i wyższe (na systemie Windows).

Data publicznego ujawnienia: 28.09.2001.

Status: Podatności poprawiono w CPU Jan 2007.

Ryzyko: małe.  Jest to dobrze znana podatność (z 2001 roku!) w oprogramowaniu Apache 1.3.20 na serwerach Windows.

Skutki potencjalnego ataku: małe. Skutkiem ataku jest możliwość wylistowania zawartości katalogu serwera WWW niezależnie od istnienia w nim pliku „index”.

Szczegóły techniczne:
Wykorzystanie podatności polega na dodaniu do ścieżki URL dużej ilości znaków „/”. W wyniku tego typu manipulacji Oracle HTTP Server (Apache) wyświetli zawartość katalogu zamiast pliku „index”. Podatność dotyczy wyłącznie instalacji OHS na platformie Windows.

Usunięcie podatności: Podatność jest usuwana przez wgranie zestawu poprawek „Oracle Critical Patch Update January 2007”.