Kamil
Stawiarski
Oracle Certified
Master | Oracle ACE
Temat: Oracle Database Vault i szyfrowanie przstrzeni tabel VS...
Oracle stworzył Database Vault'a, żeby chronić wrażliwe dane przed administratorem DB. Po instalacji produktu i stworzeniu tzw. REALM'ów, SYSDBA traci uprawnienia do określonych czynności (m.in. zakładanie kont i wiele poleceń ALTER) ale głównie traci możliwość wybierania danych z tabel chronionych takim REALM'em. Sam Vault jednak nie wystarczy, bo admin mający dostęp do plików danych może pojechać sobie po niech poleceniem strings i przegrepować po odpowiednich wyrażeniach regularnych, szukając np. numerów kart kredytowych - na to jednak Oracle też ma odpowiedź - transparentne szyfrowanie przestrzeni tabel i wszystko gra!Tylko, że jest jeden problem - jeśli w 11gR2 używamy automatycznego zarządzania pamięcią (MEMORY_TARGET), granulki pamięci zaczynają być reprezentowane poprzez pliki na urządzeniu tmpfs - /dev/shm. Na podstawie polecenia ipcs i lsof, można łatwo skorelować pamięć współdzieloną zaalokowaną przez bazę danych z plikami na urządzeniu /dev/shm... Standardowo użytkownik, będący właścicielem binariów bazy ma swobodny dostęp do tych pliczków a bloki danych po odczycie rezydują w pamięci w postaci niezaszyfrowanej - więc sytuacja się powtarza jak przy plikach danych - strings i egrep :) Czy to bug? Czy może feature?
Pozdrawiam i polecam przetestować :)
Kamil.
P.S.
Dokładniejsze opisanie tematu:
http://ora-600.pl/art/oracle_database_vault_tde.pdfKamil Stawiarski edytował(a) ten post dnia 16.03.13 o godzinie 14:41