Wybrane metody ataków na systemy Oracle



Podobne dokumenty
Podnoszenie poziomu bezpieczeństwa instalacji i baz danych Oracle

Konfiguracja programu pocztowego Outlook Express i toŝsamości.

1. Instalacja systemu Integra 7

Aplikacje WWW - laboratorium

Tomasz Greszata - Koszalin

System. Instalacja bazy danych MySQL. Autor : Piotr Zielonka tel Piotrków Tryb., sierpień 2018r.

Plan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. UŜytkownicy i schematy (2) UŜytkownicy i schematy (1) baza danych: ZESP99

2. Informacje o mechanizmie limitów

Baza danych Oracle 11g Express Edition

Instalacja serwera Firebird

Generator Wniosków Płatniczych dla Programu Operacyjnego Kapitał Ludzki. Instrukcja Instalacji

Zagrożenia trywialne. Zagrożenia bezpieczeństwa aplikacji internetowych. Parametry ukryte. Modyfikowanie parametrów wywołania

BAZY DANYCH. Obsługa bazy z poziomu języka PHP. opracowanie: Michał Lech

Instrukcja Instalacji

Biuletyn techniczny. Połączenie do Microsoft SQL Server z poziomu CDN OPT!MA. Data powstania: Copyright 2007 COMARCH SA

MS Windows Vista. Spis treści. Autor: Jacek Parzonka, InsERT

Usługi sieciowe systemu Linux

asist Uproszczona procedura migracji danych aplikacji asist przy błędnych ustawieniach zestawu znaków bazy danych Oracle

Instalacja programu Ozon.

Konta uŝytkowników. Konta uŝytkowników dzielą się na trzy grupy: lokalne konta uŝytkowników, domenowe konta uŝytkowników, konta wbudowane

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox dla urządzeń kryptograficznych.

Win Admin Replikator Instrukcja Obsługi

Win Admin Replikator Instrukcja Obsługi

Narzêdzia do testowania bezpieczeñstwa Oracle

Kancelaria instalacja sieciowa

Instalacja programu. Po naciśnięciu przycisku Dalej pojawi się okno, w którym naleŝy dokonać wyboru docelowej lokalizacji.

Data modyfikacji:

Instrukcja do instalacji/aktualizacji systemu KS-FKW

Dokumentacja instalacji aktualizacji systemu GRANIT wydanej w postaci HotFix a

Połączenie do Microsoft SQL Server z poziomu Comarch OPT!MA

Biuletyn techniczny. Konfiguracja połączenie z serwerem MSSQL 2000 CDN OPT!MA Copyright 2006 COMARCH SA

Spis treści. 1 Moduł Modbus TCP 4

Sieciowa instalacja Sekafi 3 SQL

Protokół HTTP (2) I) Wprowadzenie. II) Użyte narzędzia: III) Kolejność działań

Biuletyn techniczny. Drukarki fiskalne w usługach terminalowych. Comarch OPT!MA Copyright 2007 COMARCH SA

11. Rozwiązywanie problemów

SAP BASIS Architektura systemu klient Server

Projektowani Systemów Inf.

SYSTEM ZARZĄDZANIA TREŚCIĄ (CMS) STRONY INTERNETOWEJ SZKOŁY PRZEWODNIK

Instrukcja instalacji usługi Sygnity SmsService

Produkcja by CTI. Proces instalacji, ważne informacje oraz konfiguracja

Wskazówki do instalacji Systemu Symfonia Forte. Szybki start

Architektura systemów informatycznych WPROWADZENIE DO SYSTEMU LINUX

Wykaz zmian w programie WinAdmin Replikator

Instrukcja instalacji usługi Sygnity Service

SQL z perspektywy hakera - czy Twoje dane są bezpieczne? Krzysztof Bińkowski MCT,CEI,CEH,ECSA,ECIH,CLFE,MCSA,MCSE..

Uprawnienia, role, synonimy

Bezpieczeństwo aplikacji. internetowych. 2. Szkolenie dla administratorów stron internetowych hufców Śląskiej Chorągwi ZHP

Instrukcja instalacji usługi Sygnity Service

INSTRUKCJA INSTALACJI DATAMOBILE. Ver. 1.3

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.

IG1: INSTALACJA KOMUNIKATORA GADU-GADU

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań,

Problemy zabezpieczeń transmisji pakietów TCP/IP w sieciach komputerowych

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

1. Instalacja modułu w systemie Windows.

Opis instalacji oparto na przykładzie serwera SUPERHOST z obsługą PHP i MySQL.

Dokumentacja smsapi wersja 1.4

Utwórz na pulpicie katalog: pierwsza-litera-imienia_nazwisko (np. j_kowalski). W tym katalogu zapisz pliki, które będą tworzone w ramach ćwiczenia

Ćwiczenie 14 autoryzacja

SMB protokół udostępniania plików i drukarek

BeamYourScreen Bezpieczeństwo

Komunikator internetowy w C#

Instrukcja instalacji usługi Sygnity SmsService

III. Lista prawdopodobnych przyczyn usterek systemu komputerowego wynikających z zadania i załączników

1. Administrowanie bazą danych Oracle

Metody ataków sieciowych

Administracja bazami danych

System Kancelaris. Zdalny dostęp do danych

Przykładowa lista zagroŝeń dla systemu informatycznego

oprogramowania F-Secure

INFORMATOR TECHNICZNY WONDERWARE. Ograniczenie wyświetlania listy zmiennych w przeglądarce zmiennych ActiveFactory

Szczególne cechy usług w CDN Online

PekaoBIZNES 24 Instrukcja obsługi dla Klienta

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs.

Instrukcja obsługi programu. Faktura. wersja

Bezpieczne udostępnianie usług www. BłaŜej Miga Zespół Bezpieczeństwa PCSS

Spis treści. Wskazówki prawne Art Art Art. 268a Art Art. 269a Art. 269b... 23

Instrukcja instalacji aplikacji PlanSoft.org

Ćwiczenie 4. Użytkownicy

Instrukcja obsługi Modułu Payu dla Moodle 2.x

1. Moduł Print Master

Biuletyn techniczny Instalacja i uruchamianie CDN OPT!MA dodatkowe moŝliwości. Data powstania: Copyright 2007 COMARCH SA

Opis. systemu. zliczania. obiektów. ruchomych. wersja. dla salonów. i sieci salonów.

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

Instrukcja uŝytkownika narzędzia Skaner SMTP TP. Uruchamianie aplikacji

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat protokołu http.

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

Wykaz zmian w programie SysLoger

Instalacja i konfiguracja SAS PC Files Server

LeftHand Sp. z o. o.

Zagadnienia. Konstrukcja bibliotek mysql i mysqli w PHP. Dynamiczne generowanie stron. Połączenie, zapytanie i sesja

ZAŁĄCZNIK Nr 1 do CZĘŚCI II SIWZ

Zdalna obsługa transcievera. H A M R A D I O D E L U X E R e m o t e S e r v e r C o n f i g u r a t i o n

Biuletyn techniczny. System CDN OPT!MA i współpraca z SQL Server 2005 Express Edition CDN OPT!MA Copyright 2007 COMARCH SA

Aplikacje WWW - laboratorium

Oracle Application Express -

Internet Explorer. Okres

Pracownia internetowa w szkole ZASTOSOWANIA

Transkrypt:

Wybrane metody ataków na systemy Oracle Warsztat PLOUG'20 Wojciech Dworakowski

Oracle Do niedawna uwaŝany za system bezpieczny Powód: brak badań brak dostępu do software brak zainteresowania badaczy produktami komercyjnymi Od roku znaczny wzrost zainteresowania kilkanaście raportów na temat błędów znajdowane błędy z reguły mają charakter dość powaŝny

Agenda Konta i hasła standardowe Pliki w bazy w systemie operacyjnym Oracle Listener Protokół SQL*Net Błędy w programach z ustawionym bitem SUID Serwer Apache z mechanizmem Servlet (Tomcat) Inne rodzaje (trywialnych) ataków Test penetracyjny Oracle 8.1.7/Linux Dalsze regiony poszukiwań...

Środowisko testowe Linux (Debian) Oracle 8.1.7.0.0 Enterprise Edition Konfiguracja defaultowa Nie zainstalowane Ŝadne patche Cel: Odnalezienie zagroŝeń w instalacji standardowej

Konta i hasła standardowe Oracle instaluje wiele kont standardowych W internecie są dostępne listy kont i haseł standardowych Zawsze jest instalowanych kilka kont Linux: 9 WindowsNT: 11 Dwa konta dobrze znane system przy instalacji prosi o zmianę haseł: SYS/CHANGE_ON_INSTALL SYSTEM/MANAGER SUPERUSER,DBA DBA

Konta standardowe nasze doświadczenia www.aba.krakow.pl 17 uŝytkowników załoŝonych przy instalacji SQL> select username from dba_users Część to konta demo SCOTT/TGER, ADAMS/WOOD, BLAKE/PAPER,... Większość to konta systemowe: SYSTEM/MANAGER, CTXSYS/CTXSYS, MDSYS/MDSYS, TRACESVR/TRACE,...

Konta standardowe Trzy konta standardowe mają bardzo wysokie przywileje: TRACESVR/TRACE, MDSYS/MDSYS, CTXSYS/CTXSYS SQL> select * from dba_role_privs 2 where granted_role='dba'; <--- SYS, SYSTEM i CTXSYS (!) SQL> select * from dba_sys_privs 2 where grantee='tracesvr'; <---- create session, select any table SQL> select * from dba_sys_privs 2 where grantee='mdsys'; <--- Bardzo wysokie!

Scenariusz ataku Zalogować się jako nieuprzywilejowany user select username from all_users Sprawdzić czy są uŝytkownicy standardowi (porównać z listą kont sandardowych) Spróbować zalogować się

Konta standardowe Nie wszystkie znane konta standardowe są zawsze instalowane Część jest w bazach demo lub przy instalacji opcji dodatkowych Przeszukanie wszystkich plików w instalacji Oracle wykazuje: Linux: 52 konta, w tym 11 z wysokimi przywilejami Windows: 57 kont, w tym 11 z wysokimi uprawnieniami

Konta standardowe pytania Nie wiemy które z kont systemowych moŝna usunąć? Jaka funkcjonalność Oracle nie będzie przez to dostępna? Czy dla wszystkich kont systemowych moŝna zmieniać hasło?

Pliki Oracle w systemie operacyjnym Większość jest instalowana w $ORACE_HOME Plik /etc/oratab do odczytu dla wszystkich moŝna uzyskać informacje o: SID, ORACLE_HOME www.aba.krakow.pl

Pliki w $ORACLE_HOME Większość plików moŝe być czytana przez wszystkich Czy równieŝ pliki z danymi? Istnieją narzędzia do wyłuskiwania informacji z pliku bazy

Pliki w $ORACLE_HOME Pięć plików ma prawdopodobnie źle ustawione atrybuty root@oracle# find. -type f -and -perm -o+w -exec ls -l {} \; -rwxr-xrwx 1 oracle oinstall./apache/jserv/logs/jserv.log -rwxr-xrwx 1 oracle oinstall./apache/modplsql/bin/modplsq -rw-r--rw- 1 oracle oinstall./otrace/admin/collect.dat -rw-r--rw- 1 oracle oinstall./otrace/admin/facility.dat -rw-r--rw- 1 oracle oinstall./otrace/admin/regid.dat

Pliki SUID/SGID 4 pliki 1 SUID root (niedostępny publicznie), 2 SUID oracle (dostępne), 1 błędnie skonfigurowany root@oracle# find. -type f -and -perm +6000 -exec ls - l {} \; -rwsr-s--- 1 root oinstall./bin/dbsnmp -rwsr-s--x 1 oracle oinstall./bin/oracle -rwsr-s--x 1 oracle oinstall./bin/oracleo -rwsr----- 1 oracle oinstall./dbs/orapwora1

Pliki SUID/SGID W programie dbsnmp jest błąd pozwalający na uruchomienie dowolnego kodu z przywilejami programu (root!) Czym moŝe grozić zdjęcie uprawnień SUID/SGID z tych plików??? oracle, oracle0 znaczna degradacja wydajności (wg. informacji z list dyskusyjnych) dbsnmp -???

Oracle Listener Proces do komunikacji klientów sieciowych z bazą Oracle Standardowo nasłuchuje na porcie 1521/tcp Komunikacja: Protokół SQL*Net W niŝszej warstwie protokół TNS Pięta achillesowa systemu Oracle!

Błędy w tnslsnr Bez Ŝadnej autoryzacji, komunikując się z portem listenera moŝna zdalnie uzuskać bardzo duŝo informacji o systemie: wesja oprogramowania Oracle wersja i rodzaj systemu operacyjnego czas od uruchomienia ścieŝki do logów opcje listenera (m.in. security)

Błędy tnslsnr (c.d.) rodzaj serwisów Oracle obsługiwanych przez listener argumenty wywołania kompletne środowisko (wszystkie zmienne)!!!... Standardowo dostęp nie jest zabezpieczony hasłem moŝliwe zdlane zastopowanie serwisu bez Ŝadnej autoryzacji!

Nadpisanie dowolnego pliku Manipulacja parametrami protokołu TNS umoŝliwia zmianę pliku, do którego wędrują logi Listenera W rezultacie moŝna utworzyć lub nadpisać dowolny plik, do którego ma dostęp uŝytkownik oracle! Listener loguje informacje o błędach w zapytaniach, cytując w logu całe błędne zapytanie

Scenariusz ataku Zdalnie wysyłając odpowiednie zlecenie TNS, przestawiamy plik logu Listenera na: /home/oracle/.rhosts Łączymy się ponownie i wysyłamy błędne zlecenie TNS, w którego ciele jest string: wojdwo 10.1.1.223 W rezultacie w.rhosts uŝytkownika oracle jest wpis: wojdwo 10.1.1.223 MoŜemy zdalnie zalogować się na serwer, na konto usera oracle, bez Ŝadnej autoryzacji!

Skutki ataku Uprawnienia początkowe: śadne zdalny user z moŝliwością wysyłania pakietów do listenera (1521/tcp) Uprawnienia po ataku: UŜytkownik oracle na serwerze Pełny dostęp do danych

Ujawnienie informacji o poprzedniej sesji www.aba.krakow.pl Listener nie czyści bufora wejściowego MoŜna odczytać cały bufor, podając w nagłówku TNS, większą niŝ rzeczywista długość pakietu W rezultacie moŝna odczytać część poprzedniego zlecenia TNS MoŜe to być np. hasło DBA

Narzędzia Inny system unixowy Program do konstruowania pakietów TNS tnscmd

Protokół SQL*Net Transmisja otwartym tekstem Podatny na podsłuch, przejmowanie i fałszowanie sesji Autoryzacja otwartym tekstem, lub przez przesłanie zaszyfrowanego hasła moŝliwość podsłuchania hash-a i prób bruteforce

Błędy w programach wchodzących w skład Oracle dbsnmp SUID root Prawdopodobnie umoŝliwia wykonanie dowolnego kodu, z uprawnieniami root-a MoŜliwe przepełnienie stosu w zmiennej $ORACLE_HOME wojtekd@oracle:~$ export ORACLE_HOME= `perl -e 'print "A"x1000'` wojtekd@oracle:~$ wojtekd@oracle:~$ dbsnmp Segmentation fault

Błędy w innych programach Debugowanie procesu dbsnmp wskazuje na moŝliwość skutecznego wykonania ataku Potwierdzają to inne źródła Źródła internetowe mówią takŝe o podobnym błędzie w innych programach z ustwaionym bitem SUID (dot. <8.1.5)

Apache/Tomcat Serwer WWW z mechanizmem Servlet Apache 1.3.12 Jserv/1.1 mod_perl/1.22 W oprogramowaniu tym nie są znane Ŝadne powaŝne błędy Małe zagroŝenie: Wysłanie zapytania o nieistniejący plik.jsp, ujawnia ścieŝkę dostępu do serwisu www i plików.jsp Zbędny skrypt /cgi-bin/test-cgi, ujawniający szczegóły konfiguracyjne

Apache/Tomcat Apache działa z takimi uprawnieniami, jak uŝytkownik, który go uruchamia Serwer WWW naleŝy uruchamiać z innymi uprawnieniami niŝ bazę danych Standrdowo Apache jest uruchamiany z takimi samymi prawami (uŝytkownik oracle)

Trywialne ataki Przeglądanie skryptów SQL w poszukiwaniu haseł zapisanych na stałe Przeglądanie listy procesów w poszukiwaniu haseł podanych jako argument wywołania programu wojtekd@oracle:~$ ps auxw grep svrmgrl kravietz pts/2 S 23:30 0:00 svrmgrl system/manager

Trywialne ataki Zdobycie plików backupu bazy Odtworzenie bazy na innym serwerze Podsłuchanie transmisji sieciowej Atak na system operacyjny Pozyskanie plików z danymi