Securitatea bazelor de date Oracle

Previzualizare licența:

Cuprins licența:

1. Introducere 4
2. Concept de baza 5
3. Vulnerabilitati 10
4. SQL Injection 14
5. MySQL Best Practice 21
6. ORACLE Security 29
7. Audit 35
8. Concept Secure Software 39
9. Platforma Hardware 40
10. Evaluarea Securitati Bazei de Date 43
11. Bibliografie 45

Extras din licența:

Securitatea Bazelor de Date face parte din zona Securitatea Informatiilor fiind specializata pe partea Aplicatie (securitatea, controlul si protajarea Bazei de Date) si prezinta o provocare constanta in activitatea companiilor si in lumea IT.

Conform definitiei, un sistem de baze de date este un sistem computerizat de evidenta a informatiilor precum date sau metadate.

Razboiul digital si ratele de atac cibernetic din intreaga lume sunt in crestere, iar protectia retelelor corporative este cu atat mai importanta.

Cu alte cuvinte, Bazele de Date repreprezinta trecutul si prezentul unei organizati.

Orice modificare neautorizata sau sustragere de informatii poate duce la coruperea, prierderea credibilitatii in propria activitate sau chiar distrugerea companiei.

Spionajul industrial este factorul principal care motiveaza companiile sa investeasca resurse considerabile pentru intarirea securitatii datelor.

Cand vorbim de securitatea bazelor de date nu vorbim doar de utilizatorii interni si externi ci si de suportul HW care sustine fizic infromatiile si de solutiile de backup ale Administratorului Bazei de Date.

2. Concept de baza

Desi informatiile din Baza de Date sunt vulnerabile unui atac, este posibil ca acest risc sa fie redus dramatic daca se tine cont de cativa pasi de baza.

Bazele de date sunt un obiectiv cheie pentru infractorii cibernetici din cauza naturii de multe ori valoroasa a informatiilor sensibile stocate inauntru. Fie ca datele sunt financiara sau detin proprietate intelectuala si secretele corporative, atacatorii din intreaga lume pot profita de spargerea serverelor de afaceri si de jafurile de baze de date.

Principiul fundamental in Securitatea Bazelor de Date e ca Administratorul sa se gandeasca la ce impact are fiecare actiune adusa Bazei de Date. Incepand cu dezvoltarea aplicatiilor pana la taskurile zilnice precum administrarea userilor. De asemenea acest mind-set trebuie impartasit si cu angajatii. Majoritatea vulnerabilitatilor sunt create din neatentie. Cu acest Mind-Set, DBA (Data Base Administrator) poate sa aibe arhitectura perfecta pentru sistemele lui.

2.1 Separarea bazelor de date si Serverelor Web

Pastrarea serverului bazei de date separat de serverul web. La instalarea celor mai multe software-uri web, se creaza baza de date. Pentru a face lucrurile mai usoare, aceasta baza de date este creata pe acelasi server in care aplicatia in sine este instalata, pe serverul web. Din pacate, acest lucru face ca accesul la date sa fie foarte facil de a fi accesat de catre un atacator. Daca reuseste sa sparga contul de administrator al serverului web, are datele la dispozitie.

In schimb, o baza de date ar trebui sa se afle pe un server separat protejat de un firewall, nu in DMZ cu serverul web. Chiar daca acest lucru reprezinta o instalare mai complicata, beneficiile in ceea ce priveste securitatea merita efortul, facand planul de atac al atacatorului mult mai dificil si adaugand siguranta Bazei de Date.

2.2 Monitorizarea si Auditul

Ceea ce nu se vede nu se stie. Suna neprofesionalist si chiar este dar majoritatea administratiorilor de Baze de Date nu stiu cine ce face in Baza de Date.

Auditul este un deamon offline care monitorizeaza activitatea Bazei de Date in mod activ pe o perioada definita. Auditul constant nu este practic deoarece incetineste performantele Bazei de Date si ocupa spatiul de stocare. Auditul se poate customiza doar pentru anumite operatii, pentru a avea un impact mai mic asupra performantei.

Monitorizarea, spre deosebire de audit, se desfasoara in real time de accea, din punct de vedere al securitatii, este mai actionabila deoarece exista tool-uri pentru softurile de monitorizare care ofera capabilitati de prevenire in real time.

2.3 Criptarea fisierelor stocate

Criptarea fisierelor stocate este una din primele optiuni la care se gandeste un administrator de Baze de Date (DBA) WhiteHat Security estimeaza ca 82% din site-urile web sunt vulnerabile la cel putin o forma de atac. Fisierele stocate ale unei aplicatii web contin adesea informatii despre bazele de date la care software-ul are nevoie sa se conecteze. Daca aceste informatii sunt stocate in text simplu asa cum fac multe instalari implicite, ofera cheile de care are nevoie un atacator pentru a accesa datele sensibile. Encriptarea este recomandata informatiilor importanta ale companiei deoarece este un proces scump, dificil de de manevrat, este important cum se face encriptare/decripatrea si se aduc modificari frecvente.

Criptarea fisierelor de back-up. Nu toate furturile de date au loc ca rezultat al unui atac exterior. Uneorii, atacatorii sunt chiar userii in care avem incredere. Atacatori externi care se infiltreaza in sisteme pentru a fura date sunt o amenintare, dar cei din interiorul corporatiei sunt primii suspecti. Aceasta este o problema comuna a intreprinderilor moderne, iar companiile ar trebui sa ia in considerare criptarea arhivelor pentru a reduce riscul din interior.

Producatorii de Backup pentru Baze de Date chiar vror sa introduca un standard intrucat nici un backup nu mai poate fi efectuat datelor necriptate.

Ce se intampla in spate este SSL/SSH care protejeaza traversarea datelor de la client la server, insa SSL/SSH nu protejeaza datele stocate in baza de date. SSL este un protocol de tranzit.

Cea mai usoara cale de a rezolva problema este de a crea propriul pachet de criptare, si apoi folosirea lui cu scripturile PHP. PHP ne poate ajuta in aceasta prin intermediul catorva extensii, cum ar fi Mcrypt si Mhash, care acopera o varietate larga de algoritmi de criptare. Scriptul cripteaza datele inainte de a fi inserate in baza de date, si le decripteaza la extragerea acestora. Verificati documentatia de rigoare pentru a studia mai multe despre modalitatile de operare ale criptarii.

In cazul datelor care trebuie sa fie confidentiale, a caror expunere nu este necesara in nici un context, procedeul hashing poate fi luat in considerare. Cel mai cunoscut exemplu este stocarea hash-ului MD5 al unei parole in baza de date, in loc de stocarea parolei insesi.

Utilizarea hash-ului pentru parole:

<?php

// stocam hash-ul parolei --> md5($password)

$query = sprintf("INSERT INTO users(name,pwd) VALUES('%s','%s');",

pg_escape_string($username), md5($password));

$result = pg_query($connection, $query);

// query - verificare daca utilizatorul a introdus parola corecta

$query = sprintf("SELECT 1 FROM users WHERE name='%s' AND pwd='%s';",

pg_escape_string($username), md5($password));

$result = pg_query($connection, $query);

if (pg_num_rows($result) > 0) {

echo 'Bine ai venit, $username!';

} else {

echo 'Autentificarea a esuat pentru $username.';

}

?>

2.4 Folosirea unui WAF

Trebuie folosite firewall-uri cu aplicatie web. Conceptia gresita de aici ar putea fi faptul ca protejarea serverului web nu are nimic de-a face cu baza de date. Nimic nu ar putea fi mai departe de adevar. In plus, pentru a proteja un site impotriva vulnerabilitatilor de cross-site scripting si a vandalismului pe internet, un bun firewall poate contracara de asemenea atacuri SQL injection. Prin prevenirea inserarii unor interogari SQL de catre un atacator, firewall-ul poate ajuta sa pastreze informatiile sensibile stocate in baza de date departe de ochii indiscreti.

2.5 Pastrarea Patch-urilor actualizate

Acesta este un domeniu in care administratorii de multe ori intampina greutati. Site-urile web care au numeroase aplicatii de la terti, widget-uri, componente si diverse alte plugin-uri si add-on-uri pot deveni cu usurinta ei insisi o tinta a unei exploatari care ar fi trebuit sa fie reparata.e lanseaza un nou patch, Baza de Date este vulnerabila. Motivul este simplu, se fac anunturi pubilice de catre vendor ca exista un patch nou si atacatorii interni sau externi stiu ce au de facut.

Bibliografie:

1. Oracle Romania, White Paper Security and Compliance with Oracle Database 12c

2. Oracle Romania, White Paper Oracle Audit Vauld and Database Firewall

3. McAfee White Paper Database Security User's Guide by Sean Roth

4. IMPREVA Top Ten Database Security Threads by Amichai Shulman

5. Data and Database Security and Controls by Ravi S. Sandhu and Sushil Jajodia

6. Green SQL White Paper Database Security.

7. PHP Romania www.phpromania.net

8. http://www.php.net/manual/ro/security.database.sql-injection.php

Descarcă licența

Pentru a descărca acest document,
trebuie să te autentifici in contul tău.

Structură de fișiere:
  • Securitatea bazelor de date Oracle.doc
Alte informații:
Tipuri fișiere:
doc
Diacritice:
Da
Nota:
9/10 (1 voturi)
Anul redactarii:
2016
Nr fișiere:
1 fisier
Pagini (total):
43 pagini
Imagini extrase:
43 imagini
Nr cuvinte:
10 404 cuvinte
Nr caractere:
58 284 caractere
Marime:
1.23MB (arhivat)
Publicat de:
Marinel Vlaicu Lazar
Nivel studiu:
Facultate
Tip document:
Licența
Domeniu:
Automatică
Tag-uri:
baze de date, sql, securitate
Predat:
Facultatea de Cibernetica, Statistica si Informatica Economica , Academia de Studii Economice din Bucuresti
Specializare:
Informatica economica
Materie:
Automatică
An de studiu:
III
Nota primită:
Nota 9
Sus!