SlideShare a Scribd company logo
1 of 124
Download to read offline
1
LUCRARE METODICO-ŞTIINŢIFICĂ
PENTRU OBŢINEREA GRADULUI DIDACTIC I
COORDONATOR ŞTIINŢIFIC :
Prof.univ.dr Mihai Talmaciu
CANDIDAT :
Prof.Gâdioi Călinescu Ionel
SPECIALIZAREA:
Informatică
2
▪ Considerații metodice privind Protecția
Bazelor de Date în Rețea
COORDONATOR ŞTIINŢIFIC :
Prof.univ.dr Mihai Talmaciu
CANDIDAT :
Prof.Gâdioi Călinescu Ionel
SPECIALIZAREA:
Informatică
3
Cuprins
I Informatica din societatea Informațională
1.1.Introducere……………………………………………………………………………………………………………6
1.2.Ce este informatica?................................................................................................7
1.2.3.E-educația ……………………………………………………………………………………………….………10
1.3.Noțiuni de bază în Informatică …...……………………………………………………………………11
1.3.1.Instrucțiuni ale limbajului Pseudocod............................................................11
1.3.2.Metode de elaborare a algoritmilor………………….………………..…....12
1.3.2.1.Metoda divide et impera…………………………..…………...…..……..12
1.3.2.2.Metoda backtracking……………………………..……………………...13
1.3.2.3.Metoda Greedy ……………………………..…………………………….16
1.4.Metoda programării dinamice ………………………………….……….……19
II.Protecția bazelor de date în rețea
2.1.Ce este o baza de date?............................................……………………..…...21
2.2.Ce este o baza de date in Retea si cum o partajăm ……………………….….22
2.3.Integritate și securitate …………………………………..……………….….24
2.3.1.Integritate ………………………………………………………….…….…24
2.3.2.Restricţiile de domeniu …………………………………………………....26
2.3.3.Securitatea bazelor de date……………………………………….……….27
2.3.4.Administrarea și transmiterea drepturilor.…………………………………28
2.3.5.Tehnici de Firewall ………………………………………………..………30
2.3.6.Antivirușii calculatoarelor …………………………………………...……30
2.3.7.Principalele funcții ale unui antivirus ………………………………..……31
2.3.8.Criptarea bazelor de date …………….………………………………..…33
2.3.9.Compromiterea contului Root …………………………………….…….….…33
2.3.10. Atacurile de tipul refuz de servicii (Denial of Services, Dos)……………….33
4
2.3.11.Adrese False…………………………………………………………..………34
2.3.12.Furtul sesiunii…………………………………………………………………35
2.3.13.Ascultarea pe rețea…………………………………………………………...35
2.3.14.Turbolinux. Debian…………………………………………………………...36
2.3.15. Înregistrarea evenimentelor de sistem prin syslog ……………………...…37
2.3.16.Criptarea cu cheie publică și privată……………………………………….37
2.3.17.Criptarea sistemului de fișiere………………………………………………..38
III. Câteva activități metodice privind Protecția datelor in rețea
3.1.Securitatea conturilor de utilizator………………………………….………...…41
3.2. Dezactivarea conturilor nefolosite …………………………………………..…41
3.3. Restricționarea conectării root doar la consola sistemului ……………………...42
3.4. Securitatea bazelor de date corporatiste …………………………………….…43
3.5.Revizia parolelor…………………………………………………………………46
3.6. Securitatea serverului syslog …………………………………………………….47
3.7. Înregistrarea evenimentelor de sistem prin syslog……………………………….48
3.8.Poșta electronică…………………………………………………………………49
3.9. Retransmiterea sigură a poștei electronice prin intermediul autentificării SMTP.50
3.10.Qmail ……………………………………………………………………………50
3.11. Protocolul de poștă electronică(Post Office Protocol, POP3)………………….51
……3.12. APOP …………………………………………………………………………52
3.13. Monitorizarea rețelei ………………………………………………………...…52
3.13.1.Configurarea și rularea clientului Nessus …………………………………52
3.13. 2.Portsentry…………………………………………….……………………….53
3.13.2.1. Instalarea aplicaţiei PortSentry ……………………………………...…….54
3.13.2.2. Configurarea aplicaţiei PortSentry ………………………………………...55
3.14. Analiza comparativă pentru diferite sisteme de baze de date ………………….56
5
3.15.Ce face Firewall_ul ? ………………………………………………………......57
3.16. Care este modul de funcționare a firewall-urilor? …………………………....58
3.17. Care sunt tipurile de Firewall_oluri? ……… ……………..…………………58
3.18. Care sunt tehnicile de filtrare a traficului? …………………………........….59
3.19. Să vedem nivelurile ISO ……………………………………………………...60
3.19.1. Modelul arhitectural TCP/IP …………………………………………………62
3.19.2. Modelul OSI comparat cu Modelul TCP/IP …………………….…………...63
3.20. Atacuri asupra rețelei de comunicații ……………………..……………...…66
3.20.1 Atacul la distanţă …………………………………………………………...…68
3.20.2. Atacurile active …………………………………………………………...…70
3.21.Activitatea cercului de informatică……………………………………………72
3.22.Instruirea si evaluarea asistată de calculator…………………………………73
3.22.1. Crearea unui chestionar………………………………………..……………74
3.22.2. Tipuri de întrebări …………………………………………………...……..76
3.23. Prezentarea programului de testare <<Tester de rețele>……………….……78
3.24.Intrebări recapitulative………………………………………………………….87
3.25.Răspunsuri la întrebări………………………………………………………….88
3.26.Programul meu de criptare …………………………………………..………..91
IV.Descrierea bazei de date cu substanțe chimice
4.1.Administrea site_urilor ce aparțin școlii…………………………………………..95
4.2.Planuri de lecții și fișe de lucru……………………………………..………..…96
4.3.Crearea bazei de date cu elemente chimice…………………………..…..……106
V.Concluzii……………………………………………………………………..………110
Anexa 1…………………………………………………………………….….…..……113
Anexa 2……………………………………………………………………………....…116
Anexa 3………………………………………………………………………..……..…119
Bibliografie…………………………………………..…………………………………122
6
Cap I . Informatica din societatea Informațională
1.1. Introducere
Să descriem câteva definiții mai importante.
Pedagogia este știința implicată în studiul metodelor de educație și instruire a
oamenilor . Psihologia este știința care se ocupă cu studiul particularităților psihice
umane.
Metodica este parte a didacticii care analizează principiile, metodele și formele de
predare, adaptate fiecărui obiect de învățământ.
Didactica este parte a pedagogiei care se ocupă cu principiile și metodele predării
materiilor precum și cu organizarea învățământului.
Din punctul de vedere al unui cadru didactic , să vedem aceste științe în egală
măsură cu obiectele de predare stăpânite simultan. Cunoștințele acumulate, oricât de
vaste tot nu sunt suficiente pentru desfășurarea procesului de instruire. Pentru ca
activitatea profesorului să aibă rezultatul dorit, trebuie să creeze un mediu corespunzător
dar și mult talent împletit cu perseverență. Putem spune că didactica generală studiază
aspectele teoretice, instructiv-educative de care se ocupă învățământul. Ele se referă la modul
însușirii de către elevi a deprinderilor, priceperilor și atribuțiilor lor. Caracterul instructiv a
învățământului, precum și la metodele și formele de organizare ale acestuia. Metodica poate
fi văzută ca o parte integrantă a didacticii. "Obiectul de studiu al Didacticii Predării
Informaticii îl constituie obiectele de informatică, precum și sarcinile care îi revin. Aceste
sarcini revin din obiectivele generale ale învățământului".[9] Câteva idei principale privind
aspectul viitoarei societăți sunt prezentate în continuare și rolul profesorului.
"Economiile se generează prin frecventarea în mod generalizat a învățământului
decât forma de frecventare <<la distanță>>. De exemplu un singur supercalculator foarte
performant/ server costă mai puțin decât întreținerea mai multor săli de învățământ de tip
școală, însă profesorul va explica mai pe înțeles. Calculatorul obligă să creăm un limbaj
7
comun cu o terminologie specifică, pe care o vom descrie în continuare. Un calculator este
o mașină programabilă . Caracteristicile principale sunt două:
• bine precizată, mulțimea de interacțiuni ce răspunde într-un mod bine definit.
• listă de instrucțiuni păstrate anterior într-o memorie se execută programat pe baza
unor pași de execuție.
Știința calculatoarelor se ocupă cu studiul calculatoarelor incluzând atât proiectarea (cea de soft)
cât și cea de hard.>> " [1]. Societatea informațională este societatea viitorului în care
calculatoarele vor participa la viața de zi cu zi. "Noile tehnici trebuie să fie folosite în
permanență cu profesionalism de către orice membru al societății. Un sistem inteligent de
învățare este un concept ce definește o nouă versiune asupra relației profesor-elev-
calculator." [2].
Arhitectura sa este compusă din patru subarhitecturi:
• Baza de cunoştinţe existentă iniţial, împreună cu contextul acesteia;
• Baza de cunoştinţe care va trebui să fie achiziţionată pe parcursul utilizării
sistemului;
• Informaţiile colaterale presupuse a fi fost deja asimilate;
• Interfaţa disponibilă dintre elev şi profesor.
1.2 .Ce este informatica ?
1.2.1.Definiții
Termenul <<Informatica>> a fost identificat cu noţiunile de <<știința
calculatoarelor>>, <<ingineria calculatoarelor>>, ș.a. Aceste definiții informale pot deveni
mai detaliate sau mai sintetizate fără a fi mai complete. ca exemplu obiectul Informaticii:
⚫ studiază calculatoarele precum și alte fenomene din jurul acestora
⚫ reprezintă suma cunoștințelor acumulate despre calculatoare și despre calcule
matematice; are componente teoretice, experimentale și de proiectare , include:
▪ teorii despre echipamentele de calcul, programe și sisteme;
8
▪ experiențe referitoare la testarea și dezvoltarea conceptelor;
▪ reguli, metode de proiectare algoritmi, unelte pentru
aplicații practice particulare;
▪ metode de analiză a realizărilor care îndeplinesc
condițiile cerute;
⚫ se ocupă cu studiul implementării cunoștințelor și a reprezentării
acestora
⚫ studiază complexitatea cunoștințelor și modelele lor
⚫ studiază procesele algoritmice care descriu și transformă informația
(teoria informației), studiază analiza, proiectarea și aplicarea acestora.
Se mai întâlnesc și alte descrieri ale conceptului <<Informatica>>. Important este să știm
dacă <<Informatica>> este o știință inginerească sau una abstractă. O știință abstractă pune
accent pe analiză și doar accidental pe modelare. O știință inginerească pune accent pe
modelare și proiectare. În continuare se evidențiază caracteristici ale teoriei, modelării și
proiectării pentru a se observa dacă Informatica aparţine exclusiv unui anumit domeniu.
De exemplu teoria își are rădăcinile în matematică. Pentru a fi validă, o teorie trebuie să
urmărească etapele:
⚫ să caracterizeze obiectele de studiu (definiția);
⚫ să caracterizeze relațiile posibile dintre obiectele de studiu (teorema);
⚫ să determine dacă relațiile stabilite sunt adevărate (demonstrația);
⚫ să interpreteze rezultatele obținute (verificarea practică).
Dacă apar erori, aceste etape se vor relua. Teoria descrie și demonstrează relațiile dintre
obiecte. Din punctul de vedere al teoriei, calculatorul ajută la: demonstrarea teoremelor,
verificarea specificațiilor, furnizarea contraexemplelor, verificarea anumitor calcule de test,
efectuarea de calcule simbolice.
Modelarea își are rădăcinile în științele experimentale, având drept scop investigarea unui
fenomen în câteva etape:
9
▪ formarea unei ipoteze de lucru
▪ construirea unui model formal (abstract)
▪ proiectarea și realizarea unui experiment și colectarea datelor
▪ analiza rezultatelor.
Îmbunătățirea modelului și înlăturarea erorilor, se vor realiza prin reluarea etapelor
menționate anterior.
Modelarea utilizează calculatorul începând cu modul de prezentare și terminând cu
evaluarea corectitudinii.
Proiectarea își are rădăcinile în inginerie, în construirea oricărui sistem fiind necesare
următoarele etape:
a) elaborarea specificațiilor de stare și a relațiilor între stări
b) proiectarea efectivă și implementarea sistemului
c) testarea sistemului în medii de lucru reale.
Proiectarea utilizează calculatorul în orice etapă. Fără calculator proiectare este
mare consumatoare de timp, energie, resurse umane și materiale. Toate cele trei procese
(teoria, modelarea și proiectarea) interacționează astfel.
Teoria apare în fiecare etapă de modelare și eventual în fiecare etapă de
proiectare; modelarea are un rol foarte important atât în teorie cât și în proiectare;
proiectarea este parte componentă a fiecărei etape de teorie și modelare.
Fiecare dintre cele trei procese (teoria, modelarea și proiectarea) poate
demonstra că „Informatica” îi aparține și că dezvoltarea acesteia se face numai în
cadrul unui anumit proces.
"Din punctul de vedere al Informaticii aceasta conține în egală măsură teorie,
modelare și proiectare. Informatica se dezvoltă la granițele acestor procese și prin urmare
utilizează metodele de cercetare ale acestora pe lângă metodele proprii, specifice. Prin
urmare, Informatica, este o știință de sine stătătoare, lucru confirmat de realitatea
ultimelor decenii". [3]
"Informatica ca și disciplină de sine stătătoare (opțională/ facultativă/
obligatorie) are ca scop împlementarea planurilor de învățământ școlare ce urmăresc:
10
• capacitățile de dezvoltare a utilizării unui limbaj informatic specific și de
folosire a tehnicii de calcul pentru însușirea de noi cunoștințe;
• mijloacele de modelare pentru înțelegerea informaticii, a fenomenelor realității
înconjurătoare și de simulare a acestora;
• parcurgerea principalelor etape de dezvoltare a informaticii ca știință, pentru
dezvoltarea, nivelului de cultură generală;
• motivații intrinseci duc la dezvoltarea studiului informaticii;
• crearea unei atitudini favorabile activității de rezolvare a problemelor cu
ajutorul calculatorului prin deprinderea strategiilor de abordare a acestora și tratarea lor
într-un mod riguros;
• autoinstruirea dezvoltarea unor capacități de învățare autodidactă;
• atitudini pozitive privind importanța deosebită a creării în lumea informaticii
pentru dezvoltarea în domeniile vieții economico-sociale".[3]
1.2.3.E-educația
"E-educația este o opțiune importantă în societatea contemporană. Se vorbește astfel
despre Distribuited Lerning Object Repository Network (DLORN), despre Electronic
Learning Object (ELO) sau despre Learning Management System (LMS). Ceea ce trebuie
reținut este faptul că trebuie să avem un context special, pentru ca educația
electronică să capete un contur social. În privința componentelor de învățare, problemele
actuale sunt legate în principal de standardizările privind refolosirea și interoperabilitatea
diferitelor instrumente existente. Legăturile actuale dintre cei care învață și cei care
predau, cei care întrețin și cei ce actualizează bazele de informații, ar trebui
monitorizate. În privința tehnologiilor de învățare, există câteva grupuri de standarde admise
ISO/TEC, JTCI, SC36, IEEE LTSC și CEN/ISSLearning Technology Workshop (WS-LT),
deși cel mai popular standard acceptat este probabil SCORM (Schareable Content Object
Reference Model).
Acesta ar promova inițiativa ADL (Advanced Distributed Learning), care include
atât asigurarea posibilității de acces simplificat a tuturor membrilor societății la
11
materialele de învățare cât și personalul de asistență cu un nivel înalt de pregătire, ce
are ca scop crearea unei piețe viguroase". [4] Învățarea în timp real și învățarea
colaborativă se bucură de implementări pe servere EDCOMNET (un sistem internațional
de tip utilizabil în statele U E pentru educația permanentă).
1.3. Noțiuni de bază în Informatică
"Algoritmul este ansamblul de transformări programate, pentru rezolvarea unei
probleme. Asupra unui set de date de intrare se vor face modificări după o succesiune de pași
și vom obține datele de ieșire, deci rezolvarea dorită.
Algoritmii sunt reprezentați folosind pseudocodul sau schemele logice. Dacă scriem
programul în pseudocod, putem să-l verificăm , gândind precum calculatorul".[5]
1.3.1. Instrucțiuni ale limbajului Pseudocod.
Să prezentăm câteva instrucțiuni din cadrul limbajului pseudocod.
A). Instrucțiunea de decizie
Dacă (condiție îndeplinită) atunci
Bloc instrucțiuni
Sfdacă
B). Instrucțiunea repetitivă cu test inițial
Câtimp (condiție îndeplinită) execută
Bloc instrucțiuni
Sfcâtimp
C) Instrucțiunea repetitivă cu test final
Repetă
Bloc instrucțiuni
Pânăcând
(condiție îndeplinită)
D).Instrucțiunea repetitivă cu contor
12
Contor:= valoare_inițială
Câtimp (contor<= valoare_finală) execută
Bloc instrucțiuni
Contor:= contor + pas
Sfcâtimp
1.3.2. Metode de elaborare a algoritmilor
Elaborarea unui algoritm de rezolvare a unei probleme, exprimă o capacitate de sinteză
ca o formă de manifestare a inteligenţei.
Reuşita algoritmilor este dovadă a standardizării modului de elaborare a acestora. Vom
prezenta câteva metode de proiectare a algoritmilor.
1.3.2.1. Metoda divide et impera
"Metoda divide et impera a fost sugerată de ideea firească a unei probleme care e
împărţită în două sau mai multe enunțuri mai simple. Această divizare poate fi aplicată
succesiv noilor probleme,până la nivel de detaliu de la care obţinerea soluţiilor este facilă. În
mod natural, totul se finalizează cu reconstituirea de jos în sus a soluţiilor parţiale, la
enunțurile separate". [6].
Enunţ Exerciţiu. Să considerăm n>=1 elemente x1, x2,..,xn şi un subsir al acestuia
ap,ap+1,ap+2,…..,aq, cu 1<=p<q<=n, asupra căruia avem de efectuat o prelucrare oarecare
(procedura prelucrare).
Soluție. Metoda divide et impera de rezolvare a acestei probleme presupune împărţirea
şirului (p,q), în două subşiruri (p,m) şi (m+1 , q), cu p<m<q asupra cărora să se poată
efectua mai uşor prelucrarea. Prin prelucrarea celor două subşiruri se vor obţine rezultatele şi
care, combinate (procedura Obtinsolutiefinală), vor conduce la soluţia α a problemei iniţiale.
Parametrii procedurii divide Et Impera au următoarea semnificaţie:
p- indexul primului element din şir
q- indexul ultimului element al şirului
d-numărul de elemente care permit efectuarea prelucrării
Procedura DivideEtImpera(p,q,α)
13
Daca (q-p < d) atunci
Prelucrare(p,q,α)
Altfel
Divide(p,q,m)
DivideEtImpera(p,m,β)
DivideEtImpera(m+1, q, ¥)
Obținsoluțiefinala(β, ¥, α)
SfDacă
Sfârsit DivideEtImpera
"În cele mai frecvente cazuri, procedurile Divide, Obținsoluțiefinala și Prelucrare, sunt
compuse dintr-un număr redus de instrucțiuni, nemotivându-se descrierea și apelul lor separat
ca proceduri în corpul procedurii Divide Et impera " [15]
1.3.2.2. Metoda backtracking
Metoda backtraking constituie una dintre cele mai des folosite pentru căutarea soluției
<<optime>>, pentru o problemă, atunci când mulțimea soluțiilor posibile este cunoscută se
generează în spațiul de valori. O analiză <<necontrolată>>, printr-o parcugere după o metodă
oarecare a mulţimii soluţiilor este costisitoare ca timp de execuţie impune astfel a se evita
generarea şi verificarea tuturor soluţiilor posibile :
Problemă. Se consideră n≥3, mulţimi nevide şi finite A1, A2, …, An şi m1,m2,…., mn,
cardinalele acestor mulţimi. Considerăm o funcție f: A1 X A2 X….X An→R. O soluție a
problemei este n-uplu de forma x=(x1,x 2,….,x n,) ϵ A1 X A2 X….X An care optimizează
(conform unor criterii specificate) funcția f.
Soluția. Mulțimea A= A1 X A2 X….X An se numește spațiul soluțiilor posibile ale
problemei. Condiția de optim pe care trebuie s-o îndeplinească o soluție, este exprimată
prin forma funcției f. O soluție posibilă, care optimizează funcția f, adică satisface
condițiile interne ale problemei, se numește soluție rezultat sau soluția problemei.
Construirea unei soluții constă în determinarea, componentelor vectorului x.
Construirea primei soluții, începe întotdeauna cu construirea primului element al
vectorului x. La un moment dat se va alege un element dintr-o mulțime, pe care
14
convenim să o numim mulțime curentă și presupunând că elementele fiecărei mulțimi
Ai ( 1i  n) sunt ordonate elementul care se adaugă la vectorul x îl vom numi
elementul curent. Următorul algoritm descrie metoda backtraking la nivel conceptual:
Pas1. Considerăm prima mulțime A1 ca fiind mulțime curentă
Pas2. Trecem la următorul element din mulțimea curentă (când o mulțime devine
mulțime curentă, pentru prima dată, prin trecerea de la o mulțime anterioară ei, acesta va fi
primul element din acea mulțime).
Pas 3. Verificăm dacă un asemenea element există (adică nu s-au epuizat elementele
mulțimii curente).
pas 4. Dacă nu există un asemenea element, atunci mulțimea curentă devine mulțimea
anterioară celei curente; când o asemenea mulțime nu există, algoritmul se oprește (nu
se mai pot obține soluții);
pas 5. Dacă există, atunci verificăm dacă elementul curent din mulțimea curentă,
împreună cu componentele vectorului x determinate anterior, pot conduce la o soluție.
În vederea construirii soluției optime:
Dacă <<Da>> (condițiile de continuare sunt îndeplinite), următoarea mulțime devine .
mulțime curentă și se continuă cu Pas2.
Altfel se continuă cu pas3.
i= 1; //luăm prima mulțime A1 adică A[. ,1]
Index[i]= 1; //puncteaza la primul element
A[index[i], i]
X[i]= A[index[i], i] //punem primul element în soluţie
Cât timp (mai am mulţimi de selectat) execută
{
//atât timp cât mai există elemente în A[..,i]
Câttimp(index[i]≤ nr_elemente[i]) execută
{ Dacă (valid […] ) atunci //Dacă elementul este corect
//putem trece la următoarea mulţime
15
Dacă (i==n) atunci //suntem la ultima mulțime
Afișare _soluție();
altfel
{ i++ // trecem la următoarea mulțime
Index [i]= 1;// în anumite cazuri se poate și Index [i]++
}
X[i]= A[index[i], i];
//Bucla While s-a terminat deci mulțimea A[.,i] nu mai are elemente care să participe la
//formarea soluției. Trebuie să ne intoarcem, înainte de a schimba valoarea lui i vom
//inițializa indexul de căutare în această mulțime cu -1. Aceasta înseamnă că o nouă
//căutare în mulțime se va
// face din nou, de la primul element și nu vom pune nimic în soluție.
Index [i]= -1;
x [i]=0;
i-- ; // Întoarcerea la mulțimea anterioară
Index [i]++; // măresc indexul de căutare în mulțimea curentă
Dacă (Index [i] ≤ nr_elemente[i] ) //verific din nou dacă indexul este valid
x[i]=A[index[i], i];
} câttimp(i!=0); [7]
Avem şi un caz particular :
"Procedura backtracking
i:= 1;
k:=0; {k=0 are semnificaţia k1=0 }
Repetă
Repetă
k=k+1
16
Dacă (k≥ mk) atunci
k=0 {k=0 are semnificaţia ki=0 }
i=i-1 { se realizează și << întoarcerea >>}
altfel
xi = aik
Dacă ( x1, x2, .., xi conduce la optim) atunci
i=i+1 // se verifică testul de continuare
Sfdacă
Sfdacă
Pânăcând ( i>n sau i=0 )
Dacă ( i>n )
Atunci << afișare soluție >>
i= n;
Sfdacă
Pânăcând ( i=0 )
Sfârsit ". (M. Talmaciu, p.34)
1.3.2.3. Metoda Greedy
Metoda Greedy permite găsirea unei singure soluții pornind de la un anumit
criteriu de optim.La aceste probleme soluția se construiește ca o submulțime de mai
multe date ordinul de complexitate al unui algoritm este micșorat considerabil.
Aceasta deoarece se încearcă găsirea soluției printr-o singură parcurgere a mulțimii
din care se încearcă construirea soluției optime, asupra cărora se fac prelucrări.
17
Enunț:
Se dă o mulțime A de cardinal n și o funcție f:P(A)→R.Să se determine o
mulțime BϵP(A), de cardinal k,B={b1,b2,…,bk}, 1≤ k≤ n, astfel încât k_uplul
(b1,b2,….,bk), să optimizeze funcția f.
Soluție. Familia părților finite A, notată P(A), se numește spațiul soluțiilor
problemei.
Condiția de optim pe care trebuie s-o îndeplinească o soluție, este exprimată
printr-un set de relații între anumite elemente ale mulțimii A.Relațiile sunt exprimate
prin funcția f. O soluție care poate conduce la obținerea unei valori optime se
numește soluție posibilă. Prin urmare și mulțimea vidă poate fi considerată o soluție
posibilă. Descriere metodă:
start
Pas 1. Considerăm mulțimea B, ca fiind mulțime vidă ;
Pas 2. Se alege un element aϵA, neales anterior;
Pas 3. Verificăm dacă submulțimea B Ս{a} conduce la o soluție
posibilă.
-dacă da, atunci adăugăm elementul ales la mulțimea B (B:= B Ս {a}).
-se continuă cu pas 2, până când nici un element al mulțimii A nu
mai poate fi adăugat la B sau adăugarea lui nu mai poate îmbunătăți
valoarea funcției f.
altfel stop.
Algoritmul prezentat conduce la obținerea unei soluții pornind de la
mulțimea vidă și căutând în fiecare pas să îmbunătățim soluția deja obținută.
Această tehnică de obținere a soluției, care a dat și denumirea metodei ( greedy =
lacom), în cele mai frecvente cazuri, conduce la îndepărtarea involuntară de optim.
Acest aspect al tehnicii greedy a condus la disocierea algoritmilor:
- Algoritmul cu atingerea optimului global
- Algoritmii ale căror soluții converg către optimul global. Această din
urmă categorie de algoritmi generează soluții mulțumitoare, dar și soluții
catastrofale.
De aceea se folosește o prelucrare prealabilă a elementelor mulțimii A
care să modifice ordinea alegerii elementelor submulțimii B.
Procedura greedy
18
k: =0;
B: =ф;
Repetă
Alege a ϵ A
Dacă (B Ս{a} este soluție posibilă ) atunci
k:=k+1;
B:=B Ս {a};
Sfdacă
Pânăcând ( nu se mai pot alege elemente din A)
Sfârsit.
Exemplul 2( funcția maxim ). Secdă o mulțime A cu n elemente
pozitive și o funcție f de forma f( x1, x2,….,xk )= c1x1+ c2x2+….+ ckxk,( c ϵ
R, 1≤k≤ n ). Să se găsească o combinație a elementelor din A, pentru care
funcția f să ia valoarea maximă.
În programul Pascal:
Fișierul de intrare mulțime.txt va avea forma:
a1, a2,………, an - mulțimea A
c1, c2,………, cn - coeficienții funcției f
Fișierul de ieșire va conține solutie.out :
Soluția x =( b1, b2,………, bk )
Valoarea maximă a funcției este v.
" Soluție. Această problemă constituie un exemplu ilustrativ complex,
pentru cazul în care, prin aplicarea metodei greedy, se obține valoarea optimă
a funcției f.Algoritmul necesită o pregătire prealabilă a mulțimii A în vederea
aplicării procedurii de alegere succesivă a elementelor submulțimii B.
- se va ordona crescător mulțimea A;
- pornind de la B:= ф, vom selecta elementele din A astfel:
- cât timp printre coeficienții ck ai funcției f există numere negative (
cărora nu li s-a asociat un element din A, ca valoare xi corespunzătoare ),
executăm: celui mai mic
coeficient neasociat unui element din A, îi atașăm cel mai mic număr
din A încă nese- lectat ca valoare;
- pentru ceilalți coeficienți ( pozitivi ) ai funcției f, cărora nu lixes-a
19
asociat un element din A ( ca valoare xi ) se alege, pentru cel mai mare coeficient
neasociat unui element din A, cel mai mare număr din A încă neselectat ".[8]
1.4. Metoda programării dinamice
Metoda programării dinamice, după numele ei permite determinarea unei
soluții, în urma luării unor decizii și prelucrări, realizând o continuă dinamică în
căutarea soluției pentru o problemă inițială.
Problemă. Noțiunea de algoritm, așa cum a fost prezentată în lucrare,
presupune entități distincte în existența unui set de date de intrare. Folosind metode de
transformare succesivă a acestora, pentru obținerea unui set de date de ieșire ca
rezultat al tuturor prelucrărilor.
Abordarea celor trei elemente ca un sistem presupune existența unor
intercondiționări între acestea . Corelațiile sunt identificate, ca metodă de abordare a
algoritmilor de rezolvare a unor clase de probleme. În programarea dinamică, există
un sistem de subprobleme ce se condiționează reciproc.
Soluție. Pentru o problemă dată, fie S0 starea sistemului format din datele
de intrare și de lucru ( intermediare ) precum și din corelațiile existente între acestea.
O decizie d1 de transformare a datelor orientată în direcția obținerii unei soluții
optime pentru o problemă produce o prelucrare a stării S0, determinând transformarea
acesteia într-o nouă stare S1. Suntem în acest moment puși în fața mai multor
subprobleme similare cu cea inițială și care, printr-o nouă decizie de prelucrare,
conduc la o nouă stare. Schimbarea stării sistemului va continua până la obținerea
unei stări finale, din care se deduce soluția optimă a problemei inițiale.
În general fiecare nouă decizie de transformare a stării sistemului depinde de
deciziile luate anterior .
Fie d1, d2,………, dn-1, dn o secvență de decizii optime care determină
trecerea succesivă a sistemului din starea inițială S0 la starea finală Sn prin
intermediul stărilor S0, S1, S2, .., Sn-1. O modalitate naturală de abordare a problemei
constă în luarea succesivă de decizii optime de prelucrare în ordinea d1, d2, ………, di-1,
pornind de la starea inițială S0. Decizia următoare di, depinde de sirul de decizii
optime deja luate d1, d2,………, di-1 . Spunem în acest caz că se aplică metoda spre
înapoi .
Dacă se determină stabilirea stării sistemului Sn din care se deduce
20
soluția optimă, care este de dorit să determine o decizie dn pentru o stare Sn-1.Se
ajunge la starea Sn, în urma aplicării deciziei dn, se va determina inversa unei decizii
și starea sistemului anterioară luării acestei decizii. Fiecare secvență de decizii optime
di+1, di+2, ………, dn care fac sistemul din starea Si-1, în starea Si, va depinde de șirul
de decizii inițiale .Spunem în acest caz că se aplică metoda spre înainte.
A treia modalitate de abordare sugerează determinarea a două decizii optime
di și di+1 având două subșiruri optime de decizii:
- di+2, di+3,………..….., dn care conduc sistemul din starea Si+1 în starea finală
Sn prin intermediul stărilor Si+1, Si+2, Si+3, .., Sn-1 .
- d1, d2,……….., di-1 șir de decizii optime care determină crearea sistemului
din starea inițială S0 la starea finală Si-1.Spunem în acest caz că se aplică metoda
mixtă ( explozivă ).
"Cele trei modalități de abordare au, la bază principiul optimalității.Dacă
d1,d2,………,dn este un șir, optim de decizii, care determină, trecerea sistemului din starea
inițială S0, la starea finală, Sn, atunci sunt adevărate următoarele afirmații:
- di+1, , di+2,…., dn este un sir optim, de decizii care determină trecerea
sistemului de la starea Si, la starea finală Sn , oricare i, 1≤ i≤ n;
-d1, ,d2,……….., ,di este un sir optim de decizii care determină, trecerea sistemului de
la starea inițială S0, la starea Si , oricare i, 1≤ i≤ n". [9]
21
Cap 2. Protecția bazelor de date în rețea
2.1. Ce este o bază de date?
Informațiile sunt colectate și organizate în baze de date. Bazele de date pot
stoca informații despre persoane, produse, comenzi sau orice entitate. Multe baze de date
încep ca o listă într-un program de procesare a textului sau o foaie de calcul.Pe măsură
ce lista se mărește, datele încep să conțină redundanțe și inconsistențe.Ele devin greu
de înțeles sub formă de listă și există modalități limitate de a căuta sau a extrage
subseturi de date pentru revizuire.După ce încep să apară aceste probleme, este o idee
bună să transferați datele într-o bază de date creată de un sistem de gestionare a
bazelor de date ( SGBD ), cum ar fi M.S Access . O bază de date poate conține mai
multe tabele.Un sistem de urmărire a inventarului care utilizează trei tabele reprezintă
trei baze de date, o singură tabelă cu conținutul celor trei Access stochează tabelele
proprii într-un singur fișier, împreună cu alte obiecte: formulare, rapoarte,
macrocomenzi şi module.Bazele de date create în formatul Access 2007( care este
utilizat și de Access 2016, Access 2013 și chiar Access 2010) au extensia de fișier
.accdb.Bazele de date create în formatele de Access mai vechi au extensia de fișier
.mdb.Puteți utiliza Access 2016, Access 2013,Access 2010 sau Access 2007 pentru a
creea fișiere în formate mai vechi ( de exemplu, Access 2000 și Access 2002--2003 ) .
Utilizând Access, aveți următoarele posibilități:
⚫ Adăugaţi la o bază de date, noi înregistrări de exemplu un element nou într-
un inventar.
⚫ Editaţi date existente în baza de date, cum ar fi modificarea locației curente a
unui element.
⚫ Ștergeţi informații, de exemplu, un element să fie eliminat din listă.
⚫ Organizați și vizualizați datele din tabele.
22
⚫ Datele să fie partajate prin intermediul rapoartelor, al mesajelor de email, al
unui Intranet sau al Internetului.
2.2. Ce este o baza de date în rețea și cum o partajăm.
O rețea de calculatoare este alcătuită dintr-un grup de echipamente de calcul ce
pot partaja în comun resurse hardware ( echipamente) și software (fișiere, foldere,
servicii). Ea are următoarele elemente definitorii:
• " Tipul resurselor partajabile – depind de tipul participanților în cadrul rețelei :
- furnizorii de servicii (sunt combinații hardware/software ce au un rol specific
asociat unor servicii)
- beneficiarii de servicii – echipamente ce solicită servicii de la furnizori" [10]
Într-o reţea se găsesc următorii participanți: serverul (furnizează servicii), clientul
(cere servicii de la server). Aceștia determină următoarea clasificare a rețelelor:
- rețeaua fără server, de tip Peer-to-Peer (de la egal la egal) – orice echipament din rețea
poate îndeplini rolul de server sau client;
.- rețeaua Client-Server (bazată pe server) – doar serverele sunt entități ce furnizează
servicii, celelalte echipamente îndeplinind doar rolul de client.
În cadrul unei rețele pot fi oferite următoarele servicii de bază:
1.servicii de fișiere (transfer, stocare, actualizare, arhivare);
2.servicii de listare (cozi de listare, partajare imprimantă, servicii fax);
3. servicii mesagerie (poștă electronică);
4. servicii pentru aplicații (permit executarea aplicaţiilor în regim partajat);
5. servicii pentru lucrul cu baze de date.
⚫ Calea fizică de transmitere a informației – reprezintă legătura fizică prin care
se realizează comunicarea în rețea (cablu, satelit sau rețele telefonice închiriate pentru
rețele WAN). Alegerea structurii fizice a mediului de transmisie are importanță majoră
în lucrul de rețea, ea determinând modul de implementare a celorlalte componente.
⚫ Tipul de protocol de comunicație folosit
"1.2. Protocolul se referă la regulile de comunicație între echipamente. Acestea vor
stabili modul de transmisie, de verificare a corectitudinii recepției, cantitatea și viteza de
transmitere a datelor, modalitatea de tratare a erorilor". [17]
23
Tipuri de servere :
⚫ File server pune la dispoziția utilizatorilor din rețea informațiile memorate
pe mediile sale de stocare;
⚫ Print Server calculator sau dispozitiv special ce pune la dispoziția
utilizatorilor imprimantele la care este conectat;
⚫ Server de comunicații pune la dispoziția utilizatorilor dispozitivele de
comunicație la care este conectat ( ex. modem ) .
Staţiile de lucru – echipamente de calcul ce beneficiază de serviciile oferite de
unul sau mai multe servere şi care au acces la resursele hardware şi software
partajate.
⚫ Resursele partajate – sunt echipamente hardware sau resurse software ce pot fi
folosite de toți participanții dintr-o rețea (ex. imprimante, unități CD-ROM, modem,
hard-discuri, foldere și fișiere). Resursele partajate sunt conectate la un server sau
stocate pe un server.
Observație: în funcție de echipamentul la care sunt conectate, perifericele se
vor împărţi în:
⚫ Periferice locale – conectate la porturile locale ale echipamentului de calcul
⚫ Periferice remote (la distanță) – nu sunt conectate la mașina locală și sunt
accesibile numai prin intermediul rețelei
⚫ Alte elemente de rețea – repetoare, huburi, etc cu rol în asigurarea
conectivității rețelei.
Din punct de vedere software, o rețea necesită :
⚫ Sistem de operare pentru rețea – este instalat pe serverele din rețea și asigură
funcționalitatea serviciilor în rețea (ex. MS Windows NT Server, Novell Netware);
⚫ Software de pe stațiile de lucru: sistem de operare uzual, software client ce
asigură acces la serviciile rețelei;
⚫ Aplicații de rețea – sunt programe ce permit accesul simultan a mai multor
utilizatori la informații ce se găsesc memorate pe o resursă partajată.Aceste aplicații
au două componente: prima se instalează pe server și a doua pe mașina client. La
solicitarea unor informații de pe server,către mașina locală se vor trimite doar
rezultatele, procesarea desfășurându-se pe server. Va rezulta o reducere substanțială a
traficului de rețea.
Din punct de vedere al utilizatorilor există:
⚫ Administratori – persoane responsabile de întreținerea rețelei și care au drepturi
24
depline în rețea;
⚫ Utilizatori privilegiați – care au drepturi depline doar pentru o anumită funcție
în rețea (ex. administrator pentru imprimantele partajate – au drepturi depline doar
pentru imprimantele partajate din domeniul său).
⚫ Utilizatorii obișnuiți – beneficiază de serviciile si resursele partajate ale rețelei.
Au acces, de regulă,doar la datele proprii și la anumite resurse partajabile (imprimante
modem-uri, fax-uri, foldere, etc.).[11]
Drepturile utilizatorului. Accesul într-un cont utilizator se realizează prin:
⚫ nume utilizator
⚫ parola de acces.
În cadrul unei reţele toate datele şi informaţiile ( drepturi, mod de configurare a
mediului de lucru) referitoare la conturile utilizatorilor sunt memorate într-o bază de
date cu caracter administrativ. Pentru reţelele de tip client-server baza de date este
stocată pe server, iar pentru cele peer-to-peer pe maşina locală (deoarece aceasta poate
juca rolul de server).
Conectarea la reţea se realizează printr-o operaţie numită login sau logon.
Aceasta presupune autentificarea utilizatorului prin cele 2 elemente de acces la
cont (nume şi parola). Dacă informaţiile introduse de utilizator coincide cu cele
stocate în baza de date administrativă, acesta va avea acces la resursele ce vor fi
alocate în reţea.
2.3. Integritate și securitate
2.3.1. Integritate
Integritatea bazelor de date se referă la corectitudinea informaţiilor şi presupune
detectarea, corectarea şi prevenirea diferitelor erori care pot afecta datele introduse în
bazele de date. Când facem referiri la integritatea datelor, înţelegem că datele sunt
considerate relativ la toate restricţiile formulate anterior. Condiţiile de integritate
numite şi reguli sau restricţii de integritate nu permit introducerea în baza de date a
unor informații aberante şi sunt exprimate prin condiţii puse asupra datelor. În general
sunt acceptate mai multe criterii de clasificare a regulilor de integritate.
O serie de condiţii sunt de tip structural, legate de anumite egalităţi între valori
25
şi exprimate prin dependenţe funcţionale sau prin declararea unor câmpuri cu valori
unice (de cele mai multe ori aceste câmpuri sunt chei). O altă serie de condiţii se
clasifică după unitatea la care se aplică restricţia. În acest caz, există restricţii pe
domenii (ce privesc anumite valori pentru atribute) sau restricţii pe tabele (relaţii).
Restricţiile pe tabele pot fi unituplu (se referă la fiecare tuplu în parte) sau multituplu
(se referă la combinaţii de mai multe tupluri).
O restricţie de integritate de relaţie unituplu impune ca în fiecare tuplu al unei
relaţii de bază, în câmpurile corespunzătoare cheii primare. "Sunt valori diferite de
valorile nule. Această regulă se mai poate enunţa şi sub forma: într-o bază de date
relaţională nu se înregistrează nici o informaţie despre ceva ce nu poate fi identificat"
[12].
Un exemplu de restricţie de integritate de tip multituplu este restricţia
referenţială care se exprimă prin următoarea condiţie. Pentru cheile externe, dacă nu
sunt nule, să se admită valori corespunzătoare uneia dintre cheile primare existente în
relaţia referită. Verificarea acestei condiţii este făcută de câte ori se inserează un nou
tuplu ce conţine o cheie externă. Se modifică valoarea unei chei externe a unui tuplu.
Se semnalează eventualele neconcordanţe şi anulând modificările. Verificarea unicității
cheii primare şi restricţiile rezultate din dependenţele funcţionale şi multivaloare sunt
alte exemple de acelaşi tip.
Un alt criteriu de clasificare este acela prin care se deosebesc regulile de
interitate ce se referă la diferitele stări ale bazei de date. Aceste reguli se referă la
tranziţia dintr-o stare în alta. Restricţiile pot fi clasificate şi din punct de vedere al
momentului în care se aplică , astfel avem reguli imediate (ce se verifică în momentul
în care se efectuează operaţia indicată) sau reguli amânate (ce se verifică numai după
ce au fost executate şi alte operaţii asociate dar înainte de a se modifica baza de
date).In funcţie de aria de aplicare, restricţiile sunt împărţite în restricţii generale,
aplicabile tuturor relaţiilor din baza de date şi restricţii particulare, care se pot aplica
numai la anumite relaţii. Regulile de integritate sunt aplicabile relaţiilor de bază în
care sunt reprezentate efectiv datele bazei de date. Dintre regulile generale cel mai des
folosite în modelul relaţional sunt regulile ce privesc cheile primare ( unicitatea valorilor
cheilor primare în cadrul relaţiei) şi cheile externe. Să analizăm în continuare câteva
tipuri de restricţii de integritate. Restricţii pentru integritatea entităţii.
Enunţ: Intr-o relaţie de bază nici un atribut al unei chei primare nu poate
avea valori nule. Deja cunoaştem că se cere ca valorile cheilor primare să fie unice.
26
In majoritatea SGBD unicitatea cheii primare şi integritatea entităţii sunt condiţii
obligatorii. Restricţii pentru integritatea referenţială.
Enunţ: Dacă există o cheie externă într-o relaţie, ori valoarea acesteia trebuie
să se potrivească cu valoarea unei chei candidat a vreunui tuplu în relaţia de origine,
ori valoarea cheii externe trebuie să fie nulă.
Cu alte cuvinte, dacă o valoare există într-o relaţie pe post de cheie externă,
ori ea trebuie să se potrivească cu valoarea unei chei primare dintr-o altă relaţie ori
să fie nulă. Probleme serioase apar în momentul când trebuie efectuate modificări sau
ştergeri de valori ale cheilor primare.
Dacă se actualizează o cheie primară sau se şterge întregul tuplu şi
valoarea cheii primare nu apare nicăieri ca şi cheie externă
atunci se permite efectuarea operaţiei
altfel nu se permite efectuarea operaţiei
Sfdacă
Situaţiile descrise anterior pot fi rezolvate în cadrul aplicaţiei sau se pot
include în SGBD utilizând mecanismul trigger-elor. Mai multe SGBD-uri permit să se
creeze şi să se memoreze procedurile referitoare la baza de date şi aceste proceduri
pot fi invocate când au loc anumite evenimente, cum ar fi actualizări şi ştergeri ale
unor atribute. Standardul SQL furnizează controale pentru integritatea referenţială în
declaraţiile de creare a tabelelor.
2.3.2.Restricţiile de domeniu
Aceste restricţii sunt întotdeauna restricţii de stare imediate. Aceste restricţii se
pot referi la tipul de date pentru un atribut, la o listă de valori posibile, la un ordin
de mărime, la un format sau o formă, la o condiţie exprimată cu o formulă logică.
O procedură este apelată de câte ori are loc o modificare pentru domeniul specificat.
27
2.3.3. Securitatea bazelor de date
Prin securitatea bazelor de date se înțelege protejarea bazelor de date împotriva
folosirii neautorizate a lor și în special a modificărilor și distrugerilor nedorite de
date și a citirilor nepermise de date. Pentru realizarea securității datelor din baza de
date se utilizează controale tehnice și administrative.
Securitatea este în general asociată cu următoarele situații:
⚫ acces fraudulos la date,
⚫ pierderea confidențialității (secretului) datelor,
⚫ pierderea caracterului privat al datelor,
⚫ pierderea integrității datelor,
⚫ pierderea disponibilității datelor
Este mai dificilă protejarea datelor împotriva accesului răuvoitor, intenționat. Se
recunoaște că de fapt nu există protecție absolut sigură ci doar protecții și măsuri de
securitate mai eficiente sau mai puțin eficiente.
Forme de acces intenționat și răuvoitor la datele unei baze de date:
- citirea neautorizată a unor date,
- modificări neautorizate de date,
- distrugeri de date.
Noțiunea de securitate a bazei de date este de obicei asociată cu îndepărtarea
accesului răuvoitor, pe când integritatea se referă la evitarea pierderilor accidentale de
consistență.
Pentru protecția bazei de date se pot lua măsuri de asigurare a securității la mai
multe nivele:
⚫ la nivel fizic: locurile în se află calculatoarele trebuie protejate de accesul
persoanelor neautorizate;
⚫ la nivel uman:este recomandabil să se acorde autorizații de acces cu multă
grijă și să se țină evidențe stricte ale persoanelor autorizate;
⚫ la nivel sistem de operare: slăbiciunile trebuie eliminate sau compensate de
alte măsuri;
⚫ la nivel SGBD: sistemul oferă anumite facilități care sprijină protecţia datelor.
Tehnici de asigurare a securității datelor :
a) Identificarea utilizatorilor. Fiecărui utilizator în parte i se acordă anumite
drepturi de operare pe diferite porțiuni din baza de date la diferite nivele cum ar fi
28
relația, înregistrarea, pagina, atributul, etc. Drepturile se referă la posibilitatea citirii,
inserării, ștergerii sau modificările datelor respective. Identificarea se face prin parole .
b) Protejarea datelor prin codificare (criptare). Deoarece s-ar putea ajunge la date
și prin alte mijloace, se poate face o protecție prin păstrarea codificată a datelor pe
mediu magnetic. Decodificarea datelor se poate face numai după identificarea
utilizatorului.
Utilizarea view-urilor în aplicaţii.
Abilitatea view-urilor de a <<ascunde>> o parte din informațiile din baza de date
poate fi utilizată și pentru stabilirea unui anumit grad de securitate a datelor. Astfel
se poate vorbi de acces la nivel de relație ( tabelă ) sau acces la nivel de view. În
unele sisteme nu vor fi acceptate modificări prin intermediul view-urilor. Astfel de
view- uri se numesc read-only( numai pentru citire ) și sunt utilizate în aplicațiile în
care datele pot fi citite de toți utilizatorii ( bazelor de date publice) dar modificările
se fac numai cu aprobarea administratorului/proprietarului bazei de date. Modificările
din view-uri nu sunt în general admise deoarece pot duce la efecte laterale ce privesc
părţi din baza de date ce nu apar în view-uri. De exemplu ştergerea unui element din
view poate să ducă la eliminarea unui alt element care va fi singura legătură cu
elementul şters şi care nu se află în view.
2.3.4.Administrarea și transmiterea drepturilor.
Se ține evidenţa strict a drepturilor de acces ale fiecărui utilizator la porţiuni
din baza de date şi se fixează reguli de transmitere de la un utilizator la altul a
dreptului de acces.
Forme de autorizare:
• autorizare la citire ( consultare );
• autorizare la inserare ( adăugare );
• autorizare la actualizare ( care exclude ştergerile );
• autorizare la ştergeri ( la nivel de tuplu ).
În situaţiile de mai sus nu se pune problema modificărilor la nivel de schemă a
bazei de date.
29
Dacă se consideră și acest aspect putem vorbi de:
⚫ autorizare la nivel de index ( creare-ştergere de indecși);
⚫ autorizare la nivel de relații ( creare );
⚫ autorizare de modificări la nivel de relații ( ştergeri sau adăugări de atribute în
cadrul relațiilor);
⚫ autorizări de ștergeri ale relațiilor.
Diferitele protecții pot fi indicate prin intermediul limbajului de prelucrare a
datelor. Porțiunile din baza de date ce pot fi folosite de utilizator pot fi definite prin
operaţii de selecţie şi proiecţie care fac invizibile alte porţiuni ale bazei de date.
"Conducerea organizaţiei care este proprietara bazei de date, trebuie să ia măsuri de
securitate care reduc riscul de a se pierde date sau de a se distruge informaţii. Prin
pierderea datelor se poate înţelege că se pierde caracterul privat al informaţiilor, ele
devin accesibile unui grup mai mare de persoane decât cel prevăzut. Nu întotdeauna
<< scurgerile >> de informaţii lasă urme. Nu se materializează întotdeauna în schimbări
detectabile la nivelul bazei de date. Privind securitatea rețelei sunt cuprinse aspecte
legale, sociale şi etice, aspecte privind controlul fizic ( paza şi posibilităţile de blocare
a accesulu la terminale), aspecte de strategie ( fixarea condiţiilor de acces). Aspectele
operaţionale ( modul de stabilire a parolelor ), aspecte privind controlul hard ( modul
de acces hard la diferite componente ). Securitatea sistemului de operare (protejarea
informaţiilor şi anularea rezultatelor intermediare pentru păstrarea secretului datelor),
aspecte privind noţiunea de proprietate asupra datelor din baza de date şi altele
asemănătoare. Trebuie să menţionăm aici că furturile și fraudele nu sunt neapărat
legate de baza de date, ele sunt un factor de risc pentru întreaga organizaţie,
gravitatea acestor fapte depinzând şi de profilul organizaţiei în cauză". [13]
In Comunitatea Europeană există o preocupare serioasă legată de actualizarea
legislaţiei referitoare la utilizarea intensivă a calculatoarelor. Se încearcă în principal
să se adopte legi care să protejeze persoana sau organizaţia şi să ţină seama de
nevoia că anumite informaţii să aibă caracter privat. Acestea să nu fie accesibile
publicului larg sau nici măcar unui grup relativ restrâns, pentru că ar dăuna
proprietarului informaţiilor respective. Există aici o paletă largă de domenii care
lucrează cu informaţii a căror caracter privat trebuie neapărat păstrat: domeniul
bancar, domeniul medical, evidenţe administrativ-financiare, domeniul producţiei în
majoritatea firmelor de marcă, etc.
30
2.3.5. Tehnici de Firewall
Firewall-ul este un software sau o utilitate hardware, proiectată în mod
special pentru securizarea reţelei. Monitorizează tot traficul ce ar intra şi ar pleca din
reţeaua privată. Oprind orice conexiune neautorizată. De obicei, acest software să fie
considerat ca fiind un strat de protecţie extra, care ajută la păstrarea la distanţă a
hackerilor şi a altor ameninţări cibernetice . "După cum recomandă experţii din
informatică, să utilizăm în conjuncţie cu unul dintre aceste programe de securitate "
[14].
2.3.6. Antivirușii calculatoarelor
Antivirusul este un program de calculator, conceput pentru a detecta, indica,
elimina și a preveni infecțiile cibernetice.Programe care fac parte din această categorie
au fost în curs de dezvoltare de-a lungul anilor, în mod continuu de învățare și se
adaptează la noile provocări.Începând cu sfârșitul anilor '80, aceste programe au
devenit o parte inseparabilă a milioane de calculatoare din întreaga lume.Chiar și
astăzi, creatorii lor trebuie să fie rapizi pentru a reacționa la versiuni malware fără
sfârșit și noi versiuni ale infecțiilor deja existente.Aproximativ 390.000 de potențiale
programe periculoase intră pe web de zi cu zi.Succesul unui antivirus va conferi
creatorilor de viruși, motivația de a continua căutarea pentru alte modalități de a ocoli
apărarea. Acest război cybernetic pentru siguranța calculatoarelor noastre este practic
fără sfârșit. Pentru că avem de a face cu aceste programe în fiecare zi, e benefic să
aflăm mai multe despre ele, modul în care acestea funcționează. Afirmația << ce tipuri
de antiviruși există >>? Ce vă protejează împotriva infestării cu viruși și care sunt
vulnerabilitățile lor? Care sunt principalele funcții ale unui antivirus? Metodele primare
de lupta împotriva virușilor sunt:
A)de detectare a malware-ului de sistem, de eliminare a virusului de apărare
pentru a fi capabil să detecteze fișierele sau programele rău intenționate. Software-ul
trebuie să fie echipat cu un sistem de scanare puternic, care va descoperi tendințe
potențial periculoase în directoare sau fișiere specifice. Desi chiar și cel mai bun
scanner antivirus ar fi inutil, fără o bază de date adecvată a virusului.
B)Actualizări regulate, descrierile de viruși sunt cruciale pentru a realiza
potențialul său maxim. Din fericire, cele mai multe utilități antivirus permit
programarea actualizării.
31
C)scanări ale sistemului ce pot fi programate, din timp în timp.Se poate
personaliza frecvența și focalizarea acestor scanări în funcție de nevoi. Când este
vorba de eliminarea infecțiilor deja detectate, cele mai multe programe se ocupă de
întreaga situație în mod automat. Alte programe permit să țină fișierele în carantină,
înainte de a decide dacă doriți să le eliminați sau nu.Oricum, cele mai multe programe
vor afișa rezultatele de scanare și oferă statistici generale despre starea curentă a
computerului, deci poți evalua mai bine situația. "De detectarea virusului și de
îndepărtarea acestuia se ocupă un utilitar antivirus cunoscut. Rata de succes este,
probabil, unul dintre primele aspecte la care utilizatorii acordă atenție atunci când
decid să aleagă un antivirus.Potrivit utilizatorilor de calculatoare, software-ul antivirus
profesional ar trebui să fie în măsură să ofere o protecție în timp real în timpul
navigării online. ". [15]
2.3.7. Principalele funcții ale unui antivirus
Care sunt principalele funcții ale unui antivirus? Așa cum am menționat deja,
focarele primare ca utilitate permit lupta împotriva virusului sunt:de detectare a
malware-ului de sistem de eliminare a virusului de apărare pentru a fi capabil să
detecteze fișierele sau programele rău intenționate, software-ul trebuie să fie echipat cu
un sistem de scanare puternic, care va descoperi tendințe potențial periculoase în
directoare sau fișiere specifice. Desi chiar și cel mai bun scanner antivirus ar fi
inutil, fără o bază de date adecvată a virusului. Regulate actualizări descrieri de viruși
sunt cruciale pentru antivirus pentru a se realiza la potențialul său maxim. Din
fericire, cele mai multe utilități antivirus permit programarea actualizării, astfel încât
acesta este o altă intrare, deci din lista de lucruri de ţinut minte. Mai multe Scanări
ale sistemului pot fi programate, de asemenea. Puteți personaliza frecvența și
focalizarea acestor scanări în funcție de nevoile dumneavoastră. Aceasta înseamnă că
puteți alege pentru a scana întregul sistem sau să se concentreze pe o anumită
unitate, fișier, unitate de stocare externă, etc. Când să eliminăm infecţiile deja
detectate, de cele mai multe programe se va ocupa întreaga situație în mod automat.
Alte utilităţi pot permite să pună în carantină fișierele înainte de a decide dacă doriți
să le eliminați sau nu. Oricum, cele mai multe programe vor afișa rezultatele de
scanare și oferă statistici generale despre starea curentă a computerului, astfel încât ai
putea evalua mai bine situația. Cu toate că de detectarea virusului și îndepărtarea
32
acestuia sunt aspecte cruciale ale unui utilitar antivirus cunoscut. Rata de success, de
prevenire malware-ului să fie, probabil, unul dintre primele aspecte ca utilizatorii să
acorde atenție atunci când decid să obțină un apărător de virus. Potrivit utilizatorilor
de calculatoare, software-ul antivirus profesional ar trebui să fie în măsură să ofere o
protecție în timp real în timpul navigării online. Opriți de la intrarea paginilor
nesigure sau descărcare de software rău intenționat pe computer. Cele mai multe
programe nu fac doar asta, dar este important să se țină cont de faptul că există
numeroase moduri de scuturi de apărare ce pot fi folosite. Ulterior, vom spune mai
multe despre vulnerabilitățile software-ului antivirus. Antivirus este, probabil, termenul
cel mai general, pentru a defini software de combatere a virusului contemporan.
Numeroase software specializate, cum ar fi: anti-spyware, malware instrumente de
eliminare a firewall-uri etc. De obicei, aceste programe ca să intre în << antivirus >>pe
suport umbrelă de fapt, ele sunt de multe ori integrate în ceea ce se numește o
<<suită antivirus>>.Cu toate acestea, colaborarea lor ar trebui să facă un instrument
unic și foarte puternic. Un proverb vechi spune că prea mulți bucătari strică supa, ce
este într-adevăr adevărat pentru astfel de << apartamente >>.În afară de protecția
antivirus, există și alte câteva opțiuni pe care dezvoltatorii antivirus le oferă
utilizatorilor lor: Cloud Antivirus. "Această tehnologie antivirus se bazează pe un
software virtual, care este instalat pe calculatorul utilizatorului și poate fi accesat
numai atunci când există o conexiune de rețea disponibilă "[16].Beneficiul major la
astfel de software se datorează faptului că aproape nu ocupă spațiu pe computer și nu
încetinește performanțele sale în timp ce rulează scanarea, deoarece cea mai mare
parte din analiză este realizată pe serverul furnizorului de antivirus la distanță.Mai
mult, această tehnologie permite ca datele să fie investigate cu mai multi antivirusi și
motoare de detecție malware simultan, crescând detectarea virusului și rata de
eliminare. Cu fiecare scanare Online este similar cu serviciul lui Nod antivirus, deși
funcționează mult mai mult ca un utilitar antivirus obișnuit. Acesta permite scanarea
calculatoarelor cu capacități de performanță mai mici, alegând anumite zone sau
întregul dispozitiv la un moment dat. Ar trebui să fii atent pentru că, deși există
numeroase utilități antivirus false, care se presupune că oferă facilități pentru a scana
computerul, dar și a instala malware suplimentar în loc.
33
2.3.8. Criptarea bazelor de date.
Pentru securizarea sistemelor este bine să instalăm Linux pe calculatoare, sau al
doilea sistem de boot_are să fie LINUX_ul. Atacurile asupra serverelor WEB de pe
stațiile de lucru care ruleaza sunt de două categorii: intruziuni în scripturile C I
(Commonggate Interface) și depășirea bufferilor( Buffer Overflow ).Modurile de
intruziuni pe care le cunosc administratorii de rețea sunt:Compromiterea contului Root ,
Atacurile de tipul refuz de servicii( Denial of Services, Dos), Adrese false, Furtul
sesiunii, Ascultarea pe rețea, Caii troieni, Criptanaliza și atacurile în forță brută.
2.3.9. Compromiterea contului Root
Intrusul reușește să obțină privilegii de root prin folosirea uneia din următoarele
abordări:
" Captează parola de root pe rețea
Ghicește parola de root
Examinează jurnalele sistemului pentru a căuta apariții accidentale ale parolei
de root. Înscenează un atac cu depășire de buffer asupra unei aplicații vulnerabile
pentru a obține parola de root " (R.J. Hontanon, p.22).
Este foarte greu să ascunzi parola, probabil că ar trebui, să te loghezi ca root
doar de la consola ta. În loc să vă conectați ca root, pentru a realiza sarcinile ca
administrator, utilizați comanda SUDO.Această comandă e folosită pentru a permite
utilizatorilor să aibă privilegii de root.
2.3.10.Atacurile de tipul refuz de servicii ( Denial of Services, Dos)
Atacurile de tip refuz de servicii au intrat de mult timp în atenția mass-media,
datorită accesării abuzive a site-urilor web importante. Scopul unor asemenea atacuri,
nu este de a fura sau de a schimba conținutul privat care se află pe server, ci de a
scoate din uz un server public, pe care se află scris conținutul destinat publicului.
O metodă preferată de a scoate din uz un server de Linux, este de a-l încărca cu o
cantitate mare de trafic fabricat. O variantă a atacului DOS propriu-zis este Dos
distribuit ( DDOS ) unde se utilizează un număr mare de surse de trafic, denumit
34
Fals trafic.
"Exemple de atacuri DoS :
Atacul teardrop: Atacatorul inundă victima cu un mare număr de pachete IP
impropriu fragmentate.
Atacul synflood: Atacatorul deschide pe jumătate un mare număr de conexiuni
TCP, până când bufferele de rețea ale sistemului victimă obosesc în așteptarea
încheierii conexiunii, devin indisponibile ". [5]
Deși nu puteți face prea multe pentru protejarea serverului de Linux, împotriva
unui nou atac DDOS, puteți împiedica preluarea lui fără voie, împotriva unor noi
atacuri. Prin implementarea de filtre de ieșire ( egress filters ) în routerele
dumneavoastră de Internet, vă puteți asigura că traficul care pleacă din rețeaua
dumneavoastră, nu are o adresă sursă în afara subrețelei, care alcătuiește rețeaua
dumneavoastră privată.
2.3.11. Adrese false
Acesta este atacul utilizat pentru firewall-urile de filtrare a pachetelor. Aceste
tipuri de filtre sunt configurate de obicei pentru a se asigura că doar adresele private-
adică cele cunoscute – au permisiunea de a iniția conexiuni prin intermediul
dispozitivului. Atunci este relativ ușor pentru atacatori să facă astfel încât adresele lor
IP sursă să pară că ar proveni din interior. Deși pachetele de retur nu vor fi înaintate
atacatorilor ( ei pretind a avea o adresă internă și acesta este locul unde va ajunge
răspunsul). Atacatorii pot face multe daune trimițând pachete orbește. De fapt, scopul
atacului este de obicei de a înscena o compromitere a contului root sau o depășire
de buffer care permite atacatorilor să deschidă un culuoar pe care să-l utilizeze pentru
a accesa mai târziu sistemul.
Să combateți adresele false de IP.Trebuie să înzestrați dispozitivul de filtrare a
pachetelor cu un filtru de intrare( ingress filter ).Acest lucru vă asigură că nu veți
accepta pachete ce intră în interfața publică a sistemului dumneavoastră .Ele au o sursă
din cadrul blocului dumneavoastră de adrese interne. Dar această apărare este în cel
mai bun caz o tactică improvizată.
" Soluția reală este de a evita folosirea autentificării adreselor ( filtrarea
pachetelor) și a recurge în schimb la autentificare criptată, cum ar fi de exemplu
SSH-ul ".[17]
35
2.3.12. Furtul Sesiunii
În această formă specializată de adresă capcană, un hoț de sesiune TCP
observă secvența de numere dintr-o conversație TCP ca să-și asume identitatea unuia
dintre participanți furnizând celeilalte părți secvența de numere așteptată. Atacatorul să
însceneze un atac DOS asupra părții care este imitată pentru a împiedica să continue
să ia parte la conversație. Când reușește, atacatorul să emită comenzi executabile pe
stația de lucru care se află la distanță ca și cum ar fi partea cea simulată.
Trebuie să vă pregătiți utilizatorii să recunoască simptomele furtului unei
sesiuni pentru ca ei să poată raporta aceste incidente. Cel mai adesea ei observă că
una din sesiunile lor nu mai răspund în timp ce alte sesiuni care au fost în așteptare
o anumită perioadă de timp și prezintă comenzi de ieșire neașteptate.Ca și în cazul
adreselor capcană, soluția reală pentru amenințarea furtului de sesiune să fie utilizată
o metodă de autentificare care nu se bazează pe adresele IP.
2.3.13. Ascultarea pe rețea
În plus trebuie să utilizăm suportul din Linux pentru tehnologia VPN, care
utilizează o puternică criptare pentru a proteja rețeaua și întreaga conversație din
sistemul dumneavoastră. Una din cele mai mari dificultăți în expansiunea Internetului
ca mediu global să fie natura sa publică, unde caracterul privat și securitatea unei
comunicații no să fie niciodată garantate. Să fie surprinzător de ușor să ascultați un
segment de rețea și să pescuiți informații confidențiale. De fapt revoluția Linux să
exacerbeze această problemă deoarece chiar și utilizatorul mai naiv să poată folosi
abilitatea acestui sistem de operare pentru a inspecta la întâmplare, fiecare pachet pe
care îl va observa pe rețea. Nu numai că intrușii vor să capteze sarcina utilă a
pachetelor de rețea în trecere, ci să capteze parole pe care le vor utiliza pentru a
înscena o compromitere a contului root al unui server nevinovat.
Atenție Niciodată, în nicio situație nu trebuie să permiteți ca parola de root a
serverului să traverseze rețeua necriptată.
" Pentru protejarea parolei de root, trebuie:
⚫ Să dezactivați conectările ca root din rețea
⚫ Să dezactivați serviciile telnet, rsh, rloghin și frp
⚫ Să utilizați doar SSH ( Secure Shell ) pentru conectările interactive
⚫ Să utilizați doar comanda secure copy( scp ) pentru a transfera fișiere din și
spre server". [5]
În plus trebuie să se utilizeze suportul din Linux pentru tehnologia VPN care
36
utilizează o puternică criptare pentru ca să protejați întreaga conversație dintre
serverul de LINUX și orice altă stație de lucru cu care trebuie să schimbe informații
confidențiale.
2.3.14. Turbolinux. Debian
Acest distribuitor este pe piața Linux din 1992 și a avut un mare succes pe
piețele asiatice și europene. Deși în Statele Unite el nu a fost adoptat pe scară atât
de largă ca Red Hat și Caldera, în ultimele luni a cunoscut un mare avânt în special
pe piața aplicațiilor de server de nivel înalt. Programul de lansare de noi versiuni
este semnificativ mai lung decât cel de la Red Hat și Caldera, însă ei mențin o listă
cu update-uri de securitate pentru fiecare versiune la http://www.turbolinux.com/security .
Ei includ de asemenea pe site-ul lor FTP un subdirector separat pentru fiecare update
de versiune.
Această distribuție de Linux este întreținută de un grup de circa 500 de pro
gramatori voluntari din toată lumea. Datorită naturii sale non profit, programul de
lansare de noi versiuni pentru distribuția Debian este diferit de cel al majorității
distribuitorilor focalizându-se mai curând asupra unor versiuni minore decât asupra
unor update-uri importante. Aceste mici versiuni sunt adesea motivate de câteva
rezolvări ale unor probleme de securitate și de obicei se situează la o distanță de 100
de zile. Spre deosebire de majoritatea distribuitorilor comerciali, Debian are o pagină
specială pentru securitate informațiilor la adresa http://security.debian.or pe care o
puteți utiliza în acest scop. Acesta este unul din cele mai directe site-uri ale unui
distribuitor de Linux. Conținutul este bine organizat și recomandările de securitate sunt
mai ușor de găsit decât cele ale altor distribuitori. În plus, pagina include link-uri la
arhivele listelor de mailling ale Debian pe probleme de securitate, care se întind pe
cel puțin 2 ani în urmă.
37
2.3.15. Înregistrarea evenimentelor de sistem prin syslog
Distribuția standard de Linux, vine cu utilitarul syslog configurat și daemonul
syslogt activat. Majoritatea mesajelor generice sunt direcționate către fișierul /var/log
/messages, deși administratorul de sistem poate alege ca destinație orice fișier.
a) var/log/messages Acesta este fișierul primar, pentru înregistrarea celor mai
comune evenimente ale sistemului.
b) var/log/secure. Aici sunt înregistrate eșecurile de autentificare pentru daemonii
lansați în execuție.
c) var/log/mailling - Daemonul sendmail este cunoscut a fi vorbăreț mai altfel
decât ar fi normal.[18]
2.3.16. Criptarea cu cheie publică şi privată
Cunoscută de asemenea sub numele de criptare cu cheie simetrică, criptarea
cu cheie privată permite utilizatorilor să selecteze o cheie secretă care poate fi apoi
utilizată pentru a genera un algoritm care să convertească anumite date ( în format
text în clar) în date criptate ( text cifrat). Procesul este reversibil astfel că același
utilizator, poate apoi decoda textul cifrat în textul original cu condiţia să poată
reproduce cheia de codare. Cu cât mai lungă este cheia, cu atât mai dificil este
pentru un atacator să decodeze textul cifrat pentru al obține pe cel original.
Standardul de facto pentru criptarea cu cheie privată este Data Encryption Standard
(DES ) dezvoltat de către IBM pentru a fi utilizat de către guvernul SUA în 1977.
Deși în acel timp cheia sa de 56 biți a fost considerată a fi mai mult suficientă, al
goritmul DES a fost spart de mai multe ori. Acest fapt a determinat Institutul
Național pentru Standarde și Tehnologie ( National Institute for Standards and
Technology – NIST) să coordoneze dezvoltarea standardului de criptare. generația
următoare numit AES ( Advanced Encryption Standard = Standardul Avansat de
Criptare) care utilizează chei de o lungime mult mai mare și este substanțial mai
robust.
Există mai multe aplicații de securitate în Linux care utilizează criptarea cu
cheie privată, incluzând și suita de instrumente de autentificare Kerberos. Deși
criptarea cu cheie privată este un mod eficace pentru a proteja anumite date, acesteia
îi lipsește versalitatea necesară pentru a proteja schimburile de date între două părți,
în special când aceste două părți nu se cunosc anterior. Acest fapt i-a determinat pe
38
Martin Hellman și Whitfield Diffie să dezvolte conceptul de criptare cu cheie publică
în lucrarea lor din 1976 << Noi direcții în criptografie >>, Tranzacții IEEE în Teoria
Informației.
Ideea este surprinzător de simplă:Expeditorul criptează un mesaj cu o cheie
publică binecunoscută a destinatarului. Numai destinatarul ( și nimeni altcineva ) poate
apoi decoda mesajul în textul original. " Acest fapt asigură confidențialitatea mesajului
fără ca expeditorul sau destinatarul să convină asupra unei chei private comune.
Deloc surprinzător, criptarea cu cheie publică este o tehnică obișnuită pentru protejarea
conținutului mesajelor de poștă electronică atunci când ele călătoresc pe Internet.
Pachetul Pretty Good Privacy (PGP) din cadrul Linux și echivalentul său open-source,
NU Privacy Guard ( PG ) oferă două exemple de aplicații de securitate cu cheie
publică". [19]
2.3.17. Criptarea sistemului de fișiere
Oricât de puternice măsuri de securitate fizică a sistemului se iau, va fi
necesară pregătirea pentru momentul când un utilizator are acces la fișierele altui
utilizator. Criptografia este ultima măsură de apărare. Prin criptarea unor directoare, se
poate proteja caracterul privat al datelor chiar si după o intruziune reușită. Se vor
descrie două moduri de criptare, bazate pe tehnologii cu cheie secretă ce utilizează al
goritmi de criptare standard.
Sistemul criptografic de fișiere (Criptographic File System, CFS) a fost dezvoltat de
către UNIX și constituie prima integrare completă a criptării cu cheie secretă în
sistemul de fișiere LINUX. Un avantaj important al CFS (Criptographic File System,
Sistemul criptografic de fișiere) este suportul său atât pentru sistemul local de fișiere
cât și pentru sistemele de fișiere aflate la distanță, de exemplu NFS. Acest suport
protejează datele pe durata în care se află pe server și atunci când călătoresc pe rețea
oriunde este partajat un punct de montare NFS. CFS suportă mai mulți algoritmi de
criptare ce includ DES, 3DES.
Dezavantaj important al CFS este performanța. Astfel criptarea cu algoritmul 3DES
determină o întârziere considerabilă a accesului la discul respectiv, în special pentru
fișierele mari. Aceasta se datorează faptului că CFS operează în spațiul utilizatorului
(în afara kernelului). Totuși, rularea în spațiul utilizatorului poate fi un avantaj deoarece
alte sisteme criptografice modulare de fișiere sunt oferite ca un patch pentru anumite
39
versiuni ale kernelului de LINUX și cel mai adesea nu se găsesc pentru ultimul
kernel stabil.
Utilizarea sistemul criptografic de fișiere (Criptographic File System, CFS)
Există trei comenzi care suportă operarea cu pachetul CFS:
cmkdir [-1][director_privat]
cattach[director_privat][director_in_clar]
cdetach[director_privat]
pas 1. Se creiază un director care să conțină toate informațiile confidențiale:
[ramon]$ cmkdir secret
Comanda cere o frază cheie care este apoi folosită pentru a genera o cheie de codare.
Este nevoie de această frază pentru a se accesa datele din acest director, am explicat
comenzile date.
În mod predefinit, CFS utilizează pentru criptare algoritmul 3DES. Acesta este vizibil
mai lent decât varianta DES. Algoritmul DES s-a dovedit a fi vulnerabil la atacurile în
forță brută. Dacă se criptează datele care se vor menține o perioadă de timp mai
îndelungată, aceste date se vor face mai rezistente posibil la o criptanaliză.
pas 2. Se atașează directorul nou creat arborelui principal CFS
[ramon]$ cattach secret decrypted.
"Comanda cere aceiași frază cheie care a fost furnizată când s-a creat directorul. Dacă
autentificarea reușește, directorul secret va fi pus la dispoziție în clar în locația
/crypt/decrypted/. După ce s-a terminat lucrul cu directorul în clar, acesta se blochează
prin comanda [ramon]$ cdetach secret.
Ca și în cazul oricărei criptări, este nevoie să se protejeze fraza folosită pentru
criptarea datelor. Să se asigure integritatea utilitarelor CFS (cmkdir, cattach, cdetach)
astfel să nu fie înlocuite cu versiuni de tip cal troian".[20]
Practical Privacy Disc Driver
O alternativă pentru CFS este PPDD (Practical Privacy Disc Driver). PPDD creează un
driver de disc similar unui disc fizic și controlează comportamentul acestuia. Există
suport pentru un singur algoritm de codare: Blowfish. Până în prezent Blowfish este
destul de rezistent la multiple încercări de a-l sparge atât prin criptanaliză cât și prin
atacuri în forță brută. Scopul acestui utilitar este de a oferi un dispozitiv de criptare
total transparent pentru utilizatorul care poate accesa directoarele protejate de PPDD
fără a fi nevoie de o procedură specială.
PPDD decriptează un întreg sistem de fișiere prin intermediul unei chei derivate dintr-o
40
singură frază cheie și permite utilizatorilor să acceseze fișierele din cadrul sistemului
de fișiere prin utilizarea permisiunilor modelului standard de LINUX. Astfel PPDD este
bun pentru protejarea discului unui server împotriva citirii de către un intrus și pentru
protecția mediilor de stocare care au intrat pe mâini neavenite.
CFS oferă o bună granularitate pentru protecția individuală a informației de utilizator.
PPDD este o metodă eficientă și transparentă pentru criptarea în masă a sistemelor de
fișiere ( și a copiilor de siguranță).
41
Cap III. Câteva activități metodice privind Protecția datelor în rețea
3.1. Securitatea conturilor de utilizator
Statisticile Biroului de securitate și infracțiuni pe computer (Computer Crime and
Security Survey) din cadrul CSI/FBI (http://www. ocsi.com/prelea_000321.htm) arată an
după an că marea majoritate a atacurilor reușite asupra unui sistem provin din interior.
Adică utilizatori fără privilegii înfuriați sau doar plictisiți. Aceștia reușesc să obțină
privilegii de root prin mijloace subversive. Chiar și atunci când atacul provine din
exterior, acapararea unui cont de utilizator greșit configurat sau stagnat este unul din
cele mai ușoare moduri de a forța accesul ca root. Este de asemenea importantă pentru
protejarea propriilor greșeli deoarece accesul ca root poate fi un instrument puternic și
periculos chiar în mâinile celor autorizați.
Trebuie să acordăm o atenție specială părților din politica proprie de securitate
care reglementează, crează și întreține conturile de utilizator. Recomandări pentru
gestionarea conturilor de pe serverul propriu de LINUX.
3.2. Dezactivarea conturilor nefolosite
Atacatorii caută conturi care nu au fost accesate de mult timp pentru a le utilize
în vederea scopurilor lor infame. Acest fapt dă atacatorilor posibilitatea să se instaleze
în acel cont și să-și ascundă faptele fără a fi observați sau raportați. "Majoritatea
distribuțiilor de LINUX specifică condițiile în care un cont să fie dezactivat. Se
recomandă dezactivarea conturilor imediat ce parola expiră. Utilizatorii au timp de o
saptămână să-și schimbe parolele înainte de expirarea lor".[21] Utilitarul linuxconf de la
Red Hut oferă o interfață grafică pentru specificarea acestei politici. De obicei se
setează parolele să expire la patru luni iar utilizatorii au la dispoziție șapte zile pentru
a-și schimba parola. Valoarea 0 pentru opțiunea Accout Expire After # Days (contul
expiră după # zile) direcționează sistemul să dezactiveze contul dacă parola expiră.
Valoarea predefinită -1 direcționează sistemul să nu dezactiveze niciodată contul.
Dezactivare acces root pe sistemele NFS montate
Să se acorde o atenție specială fișierului /etc/exports în care se declară sistemele
locale de fișiere pentru care se dorește partajare prin intermediul NFS(Network File
System) În mod predefinit , serverul de NFS pe majoritatea distribuțiilor de LINUX
alocă identitatea de utilizator 0 (ID 0, root) unui utilizator fără privilegii, cum ar fi
nobody (nimeni). "Acest comportament poate fi anulat de opțiunea no_root_squash din
42
fișierul /etc/exports al serverului NFS". [7]. Restricționarea utilizării contului root cu
excepția cazului când este absolute necesar. Să se evite conectarea root pentru a
executa o comandă administrativă și se menține conectarea root în continuare pentru a
executa comenzi de nivel utilizator. Conectarea root pentru un timp îndelungat mărește
expunerea la vulnerabilități: cai troieni, furt de sesiune.
3.3. Restricționarea conectării root doar la consola sistemului
"Pentru a monitoriza cine se conectează root, să se configureze fișierul
/etc/securetty pentru a permite accesul direct root doar la consolă. Această acțiune
forțează utilizatorii de root autorizați să folosească su sau sudo pentru a obține
privilegii de root permițând astfel înregistrarea ușoară a acestor evenimente.
Comportamentul standard implicit al sistemului LINUX este de a permite conectările ca
root doar de la cele opt console virtuale (accesibile cu tastele funcțiilor de pe
tastatură) ".[22]
Să se utilizeze un prompt distinct pentru utilizatorul root. Atunci când sunt
active mai multe terminale în cadrul sesiunii X, este important să se spună imediat care
dintre ele sunt terminale root . " Astfel se evită să se execute din greșeală o comandă
de nivel de utilizator la un terminal root". [8]
Promptul de root să fie suficient de distinctiv și să includă un caracter specific
utilizatorului root, de exemplu caracterul diez (#)
Să se utilizeze o variabilă SPATH minimă pentru contul root
Un atac comun asupra contului de root este de a plasa versiuni de tip cal
troian ale utilitarelor frecvent utilizate intr-un director care este inclus în variabila
SPATH a contului root. Acesta este un atac foarte subtil și singurul mod de protejare
împotriva lui este să se știe conținutul variabilei SPATH și conținutul directoarelor
incluse în ea. Pentru a minimiza șansa de a rula un cal troian să se evite a avea
directoare în variabila SPATH care pot fi scrise de alt utilizator decât root.
Să se utilizeze conturi de sistem cu scop special
"Un operator care pur și simplu trebuie să închidă sistemul nu are nevoie de
privilegii complete de root. Acesta este scopul conturilor predefinite de LINUX".
(A. Dascăl, p.58)
Să se utilizeze apartenența la grupuri
"Un administrator de LINUX trebuie să pună un fișier sau un director la
dispoziția unui grup de membri, pentru scriere și citire. Este usor de făcut ca toată
43
lumea să aibă acces la aceste resurse. Să nu se facă. Mai bine să se definească alt
grup. Fișierele cu permisiuni foarte mari sunt vulnerabilități care așteaptă să fie
exploatate" .[8]
3.4. Securitatea bazelor de date corporatiste
" Bazele de date constituie unul din componentele cele mai importante a
oricărui sistem informatic mare, care păstrează și prelucrează diverse date, informații.
Acestea pot fi sisteme de gestiunea documentelor și a evidenței contabile sisteme de
billing și de management al conținutului CMS, sisteme de gestiunea proceselor
tehnologice , la prelucrarea produselor ,etc. Deoarece bazele de date conțin toată
informația valorizând despre companie, clienții săi , activitatea financiară, ele reprezintă
unul din factorii critici în structura organizației, fapt care determină cerințele sporite de
confidențialitate, integritate și acces la date. Riscurile care pot interveni în acest
context pot apărea atât din mediul extern ( viruși, hackeri, concurenți, etc ) cât și
interni ( furtul, acțiuni ale lucrătorilor necinstiți , erori și scăpări din vedere ale
personalului de deservire și a utilizatorilor s.a.). De asemenea, e necesară luarea în
considerație și fiabilitatea sistemelor, a GBBD-urilor, mijloacelor tehnice care se pot
supune unor actori, cum ar fi: incendiile, calamități naturale, etc. Astfel, pentru a găsi
soluții, inițial e necesară stabilirea punctelor precare în bazele de date".[14]
1 Limbajul SQL – un instrument puternic de interogare a datelor, însă de
asemenea permite răufătorilor să efectueze spargerea sistemului.
⚫ Accesarea informației cu ajutorul deducțiilor logice, potrivirea sau
spargerea parolelor, utilizatorilor bazei de date a atacurilor îndreptate spre mărirea
privilegiilor în sistem;
⚫ Agregarea datelor, atacurile de tip SQL injection;
⚫ Modificarea, înlocuirea datelor, etc
2. Gestiunea controlul accesului la SGBD/BD/Server
⚫ Erori și scăpări din vedere ale personalului de deservire și a
utilizatorilor.
⚫ Acțiunile lucrătorilor necinstiți, ofensați, acțiunile persoanelor străine.
⚫ Furtul fizic, distrugerea informației, etc
3. Atacul asupra informației care circulă în rețea
44
⚫ Utilizarea conexiunilor existente la baza de date prin rețea, stabilite de
utilizatori și autentificați
⚫ Interceptarea informației în timpul parcurgerii ei prin rețea
4. Alte tipuri de atacuri
⚫ Asupra sistemului de operare;
⚫ Blocarea accesului către date:
⚫ Supraîncărcarea buferului
⚫ Hackerii și virusurile
Securitatea bazelor de date poate fi asigurată, prin intermediul aplicării unor
modele care mai mult sau mai puțin corespund domeniului activității, politicii de
securitate, importanței informației în organizaţie. Un model simplu ar fi compus din
două elemente :
⚫ controlul accesului -- unde fiecărui utilizator sau proces informațional al
sistemului, i se poate atribui un set de acțiuni permise, pe care le poate efectua, în
raport cu anumite obiecte;
⚫ controlul autenticității -- realizează dacă utilizatorul sau procesul care
încearcă să efectueze o acțiune sau alta este anume acela pe care îl reprezintă. Un alt
model mai sofisticat este acela de multinivel al securității bazei de date, care
reprezintă un instrument foarte puternic, însă aduce unele incomodități, în ușurința
utilizării, productivitate, costuri, etc. În așa fel tipurile de sisteme informatice sunt
clasificate, în diverse clase de importanță și, de obicei, se utilizează modelul lui Bill-
Laladula, care gestionează subiecții, procesele, obiectele.
Aplicarea modelelor se poate efectua fie direct în SGBD-ul /baza de date
respectivă, fie în sisteme informatice aparte, proiectate și exploatate în special pentru
a asigura protejarea informației. Metodologii de combaterea riscurilor și atacurilor
asupra bazei de date le putem clasifica în linii mari în 3 categorii:
1. Securitatea bazei de date și a SGBD – securitatea DB, auditul
vulnerabilităților, monitorizarea activităților, controlul accesului.
2. Auditul vulnerabilităților rețelei și a sistemului de operare – mecanisme
bazate pe scanarea rețelei și exteriorul DB-ului. Rezultatele sunt examinări, rapoarte,
determinarea punctelor slabe.
3. Criptarea bazei de date – care include un sistem de management al cheilor
ce suportă variante de algoritmi de criptare.De asemenea am putea impărți metodele
și după modul de aplicare.
45
Tehnice:
1. Amplasarea serverelor de BD în segmente de rețea protejate și securizarea
lor.
2. Back_up. Aplicarea tehnologiilor de Cluster Systems. Tirajarea datelor.
3. Utilizarea metodelor eficiente de autentificare ( server/OS autentification,
parole cu un număr suficient de simboluri, certificate, chei criptate, dispozitive-chei, etc
).
Administrative:
1. Standardizarea cu ISO 17799, ISO 27001 ( Certificarea oficială a sistemelor de
securitate informațională ).
2. Urmărirea transmiterii informației prin canalele de comunicație. Înregistrarea
evenimentelor desfășurate în sistemul informatic. Auditul cererilor către SGBD.
3.Înregistrarea activităților utilizatorilor –permite depistarea în unele cazuri
potențialele acțiuni de atac asupra bazei de date sau de a investiga încălcările comise
anterior.
4. Determinarea cazurilor când informația nu este utilizată corect.
5. Delimitarea mediilor de administrare și dezvoltare.
6. Excluderea cazurilor de integrare a diverselor servicii corporative pe serverul
unde este instalat SGBD_ul.
7. Organizarea unei politici eficiente de acordare a drepturilor pentru diverse
grupuri de utilizatori. După standardele internaționale se disting 3 categorii de roluri:
Proprietarul informației; răspunzătorul de securitatea informației; cel ce utilizează
informația Software.
1. Configurarea mecanismelor proprii de protecție a bazelor de date ( drepturi de
access, privilegiile).
Avantaje: precizia, acoperirea totală ( a scopurilor ).
Dezavantaje: viteză, complexitate ( dimensiuni )
2. În etapa de proiectare să se ia în considerație de către proiectanți/
programatori evitarea afișării mesajelor de eroare clienților într-un mod care ar putea
divulga unele detalii despre sistem, scheme, etc .
3. Cifrarea bazei de date.
Avantaje: un sistem sporit de securitate;
Dezavantaje: în caz că se defectează serverul sau cade sistemul, e greu de
46
restabilit dacă are nevoie de o aplicație. În plus care va gestiona cheile, viteza,
indexarea.
4. Analiza protecției bazelor de date cu ajutorul unor instrumente, aplicații
sisteme de audit și control de acces care pot permite: analiza evenimentelor critice,
modelarea acțiunilor răufăcătorilor externi, analiza optimizărilor efectuate în SGBD și OS,
identificarea utilizatorilor necunoscuți, scanarea centralizată, viziune asupra securității
rețelei dintr-o parte etc. Se pot răspunde la întrebări de tipul: Ce baze de date sunt în
rețea? Cât de corect este configurat SGBD-ul? E posibil atacul SGBD-ului
dumneavoastră prin rețea? Corespunde configurarea SGBD-ului dumneavoastră cu
politica de securitate? Care e rezultatul așteptării la SGBD a diverselor mecanisme de
protecție? Etc. Dezavantajele acestor tipuri de sisteme sunt: viteza, costurile pentru
aplicații, computatoare, necoerența informației.
" Prin urmare, e greu de zis că există 100% măsuri de protecție a informației
din bazele de date, cel puțin se observă o tendință către acesta. La un moment
diversitatea activităților organizațiilor, structura rețelelor și a fluxurilor informaționale,
nu permite apariția unor metode universale de a soluționa securitatea bazelor de date."
[22]
3.5. Revizia parolelor
Prin examinarea fișierelor de înregistrare și prin asigurarea integrității fișierelor
se poate întări securitatea serverului, însă este ușor să cadă pradă sindromului << tare
la exterior și moale la interior >>.Cea mai slabă verigă în serverele de LINUX o
constituie utilizatorii și mai ales alegerea parolelor lor. Deși politica de securitate
trebuie să includă o secțiune ce prezintă proprietățile unei bune parole, trebuie să se
ia o atitudine activă față de securitatea parolelor și să se realizeze periodic revizii ale
parolelor tuturor utilizatorilor.Ca în orice sistem Unix, parolele în LINUX sunt stocate
ca rezultat al unei criptări DES cu o singură trecere asupra parolei originale în clar
(unele sisteme LINUX suportă și criptare MD5 pentru protecția parolelor). Acest lucru
înseamnă că parola efectivă niciodată nu este stocată în clar. Oricând un utilizator
încearcă să se conecteze în sistem, programul login criptează parola introdusă și
compară rezultatul cu cel găsit în fișierul /etc/passwd (sau /etc/shadow). Doar dacă cele
două parole sunt identice utilizatorului îi este permis accesul la sistem. Există mai
multe instrumente de revizie a parolelor pentru LINUX. Aceste instrumente au ca
47
intrare un fișier de parole criptate și urmăresc să ghicească parola fiecărui utilizator
înscenând un atac de dicționar unde un anumit număr de cuvinte utilizate frecvent
sunt criptate unul câte unul cu algoritmul DES și rezultatele sunt comparate cu
intrările din fișierul /etc/passwd. Dacă se găsește vreo identitate, numele de utilizator
este înregistrat și inclus în raportul destinat administratorului de securitate .
3.6. Securitatea serverului syslog
"Modelul LINUX este unul în care serviciile pot transcende cu ușurință serverele fizice
și facilitate syslog nu face excepție. Atunci când în mesajele de urgență ale kernerului
se specifică acțiunea @loghost acest fapt implică existența unui sistem denumit
(eventual desemnat printr-un alias) loghost care ascultă cererile syslog sosite la portul
UDP 514.
Deși această facilitate face un mecanism de înregistrare mai robust, ea de asemenea
introduce o vulnerabilitate cunoscută în care atacatorii pot ținti portul UDP 514
trimițând fișiere foarte mari acestui serviciu pentru a umple discurile și a scoate
serverul din funcțiune. Acest fapt poate fi urmat de un atac nedetectabil asupra
serverelor ale căror mesaje erau înregistrate de computerul loghost. Dacă se utilizează
servere syslogd la distanță, se recomandă să se ia cel puțin una dintre următoarele
precauții:
⚫ Să se protejeze accesul la portul UDP 514 și numai la serverele autorizate să se
permită scrierea (<<Firewall-uri pentru stratul de rețea>>).
⚫ Să se conecteze serverul syslogd aflat la distanță într-un segment dedicat de
rețea care este exclusive pentru utilizarea sa (de exemplu o rețea de management
10.0.0/24)
⚫ Să se utilizeze o partiție dedicată pentru a scrie mesajele syslogd de la distanță.
Această partiție se poate umple completa fără nici un fel de efect advers asupra sistemului.
(Să se rețină că atunci când fișierele de înregistrare se umplu, sistemul nu mai este util).
Recomandare: Pentru a se permite serverului syslogd aflat la distanță să accepte mesaje
de la alte mașini, să se utilizeze flag-ul –r atunci când se invocă syslog .[23]
48
3.7.Înregistrarea evenimentelor de sistem prin syslog
Utilitarul syslog permite administratorului de sistem să estioneze și să
configureze dintr-o locație centrală fișierele de înregistrare generate de diverse utilitare
de sistem și aplicații. Distribuția standard de LINUX vine cu utilitarul syslog
configurat și daemonul syslogd activ în momentul pornirii. În fișierul /etc/syslog.conf
administratorul de sistem specifică mesajele pe care le dorește înregistrate iar aplicația
direcționează mesajul către fișierul de înregistrare adecvat. Majoritatea mesajelor
generice sunt direcționate către fișierul /var/log/messages, deși administratorul de sistem
poate alege ca destinație orice fișier. În general LINUX utilizează următoarele fișiere
pentru a înregistra în ele mesajele:
1) "Var/log/messages Acesta este fișierul primar de înregistrare, utilizat pentru
înregistrarea celor mai comune evenimente ale sistemului.
2) Var/log /secure În acest fișier sunt înregistrate eșecurile de autentificare
pentru daemonii lansați în execuție din /etc/inetd.conf.
3) Var/log/maillog Daemonul sendmail este cunoscut a fi vorbăreț (și adesea
foarte ocupat) astfel că este normal să-i fie dedicat acest fișier de înregistrare separat
pentru a păstra urma operațiunilor de livrare a mesajelor de poștă electronică.
4) Var/log/spooler Acesta este fișierul în care își înregistrează mesaje alți
daemoni cum ar fi UUCP și News (NNTP).
5) Var/log/bootlog În acest fișier sunt înregistrate de obicei mesajele de
boot apărute în timpul pornirii sistemului ".[24]
Aceste cinci fișiere de înregistrare sunt automat rotite de sistem prin intermediul
scriptului /etc/logrotate.d/syslo . Rotirea înseamnă în esență redenumirea fișierului de
înregistrate curent cu ceva de genul logfile.1 și crearea unui fișier nou (gol) denumit
logfile pentru a înregistra doar acele evenimente care au avut loc începând cu ultima
rotație. La rotația următoare, fișierul logfile.1 este redenumit logfile.2 iar fișierul
logfile.1 (dacă păstrați doar 10 fișiere de înregistrare) este șters.
49
3.8. Poșta electronică
Securitatea aplicațiilor examinează aplicații de poștă electronică, instalarea,
configurarea și impactul lor asupra securității generale a serverului. Traficul pe WORLD
WIDE WEB (HTTP) a crescut mai mult decât în cazul oricărui alt protocol din istoria
recentă a Internetului, pachetele de poștă electronică (SMTP) depășesc ca număr orice
alt protocol utilizat astăzi .
O dată cu recentele hotărâri legislative în favoarea valabilității semnăturilor
electronice, poșta electronică va avea o creștere mai mare pe măsură ce companiile vor
utiliza Internetul pentru distribuția și semnarea documentelor cu valoare legală și a
materialelor adiacente. Poșta electronică este una din aplicațiile cel mai greu de securizat
datorită naturii publice și răspândite a acestui serviciu. Serverele de poșta electronică
trebuie adesea să manipuleze mesaje de mărimi, origini și compoziții foarte diferite.
Poșta electronică este partea serverului căreia i se cuvine zilnic atenție deosebită
deoarece este aplicația care experimentează cea mai mare cantitate de trafic. În
continuare se vor explora trei agenții de transport de poșta electronică populare (Mail
Transport Agents, MTA) : Sendmail, Qmail și Postfix și se vor descrie două tipuri de
protocoale de accesare a poștei electronice: Post Office Protocol v.3 (POP3) și Internet
Mail Access Protocol (IMAP).
Sendmail a fost standardul de facto Unix pentru agenții de transport ai poștei
electronice pentru Internet chiar de la apariția primei versiuni Berkeley Unix pentru
TCP/IP în 1984. Agentul Sendmail este utilizat și astăzi, alimentat de un grup bine
organizat de dezvoltatori care alcătuiesc Consorțiul Sendmail (Sendmail Consortium,
www.sendmail.org). Primele versiuni de Sendmail au fost sufficient de puternice pentru
a face față sarcinilor extrem de grele, dar ele nu au fost proiectate cu accentual pe
securitate deoarece Internetul nu era mediul foarte prezent și riscant ca în prezent.
Începând cu versiunea 8.9 dezvoltatorii Sendmail au adoptat o poziție mai defensivă. În
lumina creșterii incidenței de descoperire a punctelor slabe de securitate, majoritatea
alimentate de popularitatea sa în creștere. S-a obținut o distribuție mult mai sigură
pentru modul în care este protejată împotriva configurărilor greșite care pot duce la defecte de
securitate. Versiunile 8.10 și 8.11 de Sendmail au făcut un pas mai departe prin
implementarea unei apărări multilaterale împotriva mesajelor comerciale nesolicitate
numite spam. Versiunea Sendmail 8.11 a fost prima versiune care a încorporat suport
pentru autentificarea SMTP.
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted
Lucrare grad i gidioi ionel  cup e 15  iumie_bun-converted

More Related Content

Similar to Lucrare grad i gidioi ionel cup e 15 iumie_bun-converted

Programa scolara tic-st-naturii_12
Programa scolara tic-st-naturii_12Programa scolara tic-st-naturii_12
Programa scolara tic-st-naturii_12profadeinfo41
 
Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M...
 Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M... Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M...
Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M...Marketing Communication Health &Medicine
 
Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...
Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...
Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...Andrei Berariu
 
Prog informormatica doctorat_upsc
Prog informormatica doctorat_upscProg informormatica doctorat_upsc
Prog informormatica doctorat_upscTatiana Chiriac
 
Programa scolara tic-st-sociale_11
Programa scolara tic-st-sociale_11Programa scolara tic-st-sociale_11
Programa scolara tic-st-sociale_11profadeinfo41
 
Modulul 1 it
Modulul 1   itModulul 1   it
Modulul 1 it08alesa
 
Date structurate, aplicarea modelului linked data
Date structurate, aplicarea modelului linked dataDate structurate, aplicarea modelului linked data
Date structurate, aplicarea modelului linked dataionut_ignatescu
 
Implementarea sistemelor informatice pl2 a partea i
Implementarea sistemelor informatice  pl2 a partea iImplementarea sistemelor informatice  pl2 a partea i
Implementarea sistemelor informatice pl2 a partea iGABI formatori Stanciu
 
MANAGEMENTUL ECHIPAMENTELOR.pdf
MANAGEMENTUL ECHIPAMENTELOR.pdfMANAGEMENTUL ECHIPAMENTELOR.pdf
MANAGEMENTUL ECHIPAMENTELOR.pdfpvirgil
 
0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdf
0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdf0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdf
0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdfDanielaPintilie1
 
Bazele tehnologiei informatiei - Tema.docx
Bazele tehnologiei informatiei - Tema.docxBazele tehnologiei informatiei - Tema.docx
Bazele tehnologiei informatiei - Tema.docxMariusUrea2
 
IT & C, Volumul 2, Numărul 3, Septembrie 2023 - Rezumate
IT & C, Volumul 2, Numărul 3, Septembrie 2023 - RezumateIT & C, Volumul 2, Numărul 3, Septembrie 2023 - Rezumate
IT & C, Volumul 2, Numărul 3, Septembrie 2023 - RezumateNicolae Sfetcu
 
Modulul v mtcp i
Modulul v   mtcp iModulul v   mtcp i
Modulul v mtcp iIoanaK2
 
Tendinte in proiectarea si dezvoltarea aplicatiilor Web
Tendinte in proiectarea si dezvoltarea aplicatiilor WebTendinte in proiectarea si dezvoltarea aplicatiilor Web
Tendinte in proiectarea si dezvoltarea aplicatiilor WebSabin Buraga
 

Similar to Lucrare grad i gidioi ionel cup e 15 iumie_bun-converted (20)

Programa scolara tic-st-naturii_12
Programa scolara tic-st-naturii_12Programa scolara tic-st-naturii_12
Programa scolara tic-st-naturii_12
 
Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M...
 Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M... Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M...
Noi tendinte in activitatea de birotica Proiect de Licenta Patrascu Frincu M...
 
Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...
Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...
Asamblarea si intretinerea componentelor pe placa de baza a unui calculator B...
 
Informatica111 rom
Informatica111 romInformatica111 rom
Informatica111 rom
 
Proiect flexform
Proiect flexformProiect flexform
Proiect flexform
 
Prog informormatica doctorat_upsc
Prog informormatica doctorat_upscProg informormatica doctorat_upsc
Prog informormatica doctorat_upsc
 
Programa scolara tic-st-sociale_11
Programa scolara tic-st-sociale_11Programa scolara tic-st-sociale_11
Programa scolara tic-st-sociale_11
 
Modulul 1 it
Modulul 1   itModulul 1   it
Modulul 1 it
 
Date structurate, aplicarea modelului linked data
Date structurate, aplicarea modelului linked dataDate structurate, aplicarea modelului linked data
Date structurate, aplicarea modelului linked data
 
Implementarea sistemelor informatice pl2 a partea i
Implementarea sistemelor informatice  pl2 a partea iImplementarea sistemelor informatice  pl2 a partea i
Implementarea sistemelor informatice pl2 a partea i
 
Informatica intensiv10 liceu
Informatica intensiv10 liceuInformatica intensiv10 liceu
Informatica intensiv10 liceu
 
Limajul c
Limajul cLimajul c
Limajul c
 
MANAGEMENTUL ECHIPAMENTELOR.pdf
MANAGEMENTUL ECHIPAMENTELOR.pdfMANAGEMENTUL ECHIPAMENTELOR.pdf
MANAGEMENTUL ECHIPAMENTELOR.pdf
 
0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdf
0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdf0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdf
0_Sisteme_Informatice_Pentru_Management_de_Proiect.pdf
 
Bazele tehnologiei informatiei - Tema.docx
Bazele tehnologiei informatiei - Tema.docxBazele tehnologiei informatiei - Tema.docx
Bazele tehnologiei informatiei - Tema.docx
 
IT & C, Volumul 2, Numărul 3, Septembrie 2023 - Rezumate
IT & C, Volumul 2, Numărul 3, Septembrie 2023 - RezumateIT & C, Volumul 2, Numărul 3, Septembrie 2023 - Rezumate
IT & C, Volumul 2, Numărul 3, Septembrie 2023 - Rezumate
 
Modulul v mtcp i
Modulul v   mtcp iModulul v   mtcp i
Modulul v mtcp i
 
Plan1 Unitate Ep
Plan1 Unitate EpPlan1 Unitate Ep
Plan1 Unitate Ep
 
Tendinte in proiectarea si dezvoltarea aplicatiilor Web
Tendinte in proiectarea si dezvoltarea aplicatiilor WebTendinte in proiectarea si dezvoltarea aplicatiilor Web
Tendinte in proiectarea si dezvoltarea aplicatiilor Web
 
Modulul 1 ecdl
Modulul 1 ecdlModulul 1 ecdl
Modulul 1 ecdl
 

Recently uploaded

Literatura polonă pentru copii tradusă în limba română
Literatura polonă pentru copii tradusă în limba românăLiteratura polonă pentru copii tradusă în limba română
Literatura polonă pentru copii tradusă în limba românăBibliotecaMickiewicz
 
Igiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-aIgiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-aCMB
 
Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10CrciunAndreeaMaria
 
Catalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptxCatalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptxCori Rus
 
Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11CMB
 
ziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantuluiziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantuluiAndr808555
 
Strategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptxStrategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptxMoroianuCristina1
 

Recently uploaded (7)

Literatura polonă pentru copii tradusă în limba română
Literatura polonă pentru copii tradusă în limba românăLiteratura polonă pentru copii tradusă în limba română
Literatura polonă pentru copii tradusă în limba română
 
Igiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-aIgiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-a
 
Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10
 
Catalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptxCatalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptx
 
Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11
 
ziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantuluiziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantului
 
Strategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptxStrategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptx
 

Lucrare grad i gidioi ionel cup e 15 iumie_bun-converted

  • 1. 1 LUCRARE METODICO-ŞTIINŢIFICĂ PENTRU OBŢINEREA GRADULUI DIDACTIC I COORDONATOR ŞTIINŢIFIC : Prof.univ.dr Mihai Talmaciu CANDIDAT : Prof.Gâdioi Călinescu Ionel SPECIALIZAREA: Informatică
  • 2. 2 ▪ Considerații metodice privind Protecția Bazelor de Date în Rețea COORDONATOR ŞTIINŢIFIC : Prof.univ.dr Mihai Talmaciu CANDIDAT : Prof.Gâdioi Călinescu Ionel SPECIALIZAREA: Informatică
  • 3. 3 Cuprins I Informatica din societatea Informațională 1.1.Introducere……………………………………………………………………………………………………………6 1.2.Ce este informatica?................................................................................................7 1.2.3.E-educația ……………………………………………………………………………………………….………10 1.3.Noțiuni de bază în Informatică …...……………………………………………………………………11 1.3.1.Instrucțiuni ale limbajului Pseudocod............................................................11 1.3.2.Metode de elaborare a algoritmilor………………….………………..…....12 1.3.2.1.Metoda divide et impera…………………………..…………...…..……..12 1.3.2.2.Metoda backtracking……………………………..……………………...13 1.3.2.3.Metoda Greedy ……………………………..…………………………….16 1.4.Metoda programării dinamice ………………………………….……….……19 II.Protecția bazelor de date în rețea 2.1.Ce este o baza de date?............................................……………………..…...21 2.2.Ce este o baza de date in Retea si cum o partajăm ……………………….….22 2.3.Integritate și securitate …………………………………..……………….….24 2.3.1.Integritate ………………………………………………………….…….…24 2.3.2.Restricţiile de domeniu …………………………………………………....26 2.3.3.Securitatea bazelor de date……………………………………….……….27 2.3.4.Administrarea și transmiterea drepturilor.…………………………………28 2.3.5.Tehnici de Firewall ………………………………………………..………30 2.3.6.Antivirușii calculatoarelor …………………………………………...……30 2.3.7.Principalele funcții ale unui antivirus ………………………………..……31 2.3.8.Criptarea bazelor de date …………….………………………………..…33 2.3.9.Compromiterea contului Root …………………………………….…….….…33 2.3.10. Atacurile de tipul refuz de servicii (Denial of Services, Dos)……………….33
  • 4. 4 2.3.11.Adrese False…………………………………………………………..………34 2.3.12.Furtul sesiunii…………………………………………………………………35 2.3.13.Ascultarea pe rețea…………………………………………………………...35 2.3.14.Turbolinux. Debian…………………………………………………………...36 2.3.15. Înregistrarea evenimentelor de sistem prin syslog ……………………...…37 2.3.16.Criptarea cu cheie publică și privată……………………………………….37 2.3.17.Criptarea sistemului de fișiere………………………………………………..38 III. Câteva activități metodice privind Protecția datelor in rețea 3.1.Securitatea conturilor de utilizator………………………………….………...…41 3.2. Dezactivarea conturilor nefolosite …………………………………………..…41 3.3. Restricționarea conectării root doar la consola sistemului ……………………...42 3.4. Securitatea bazelor de date corporatiste …………………………………….…43 3.5.Revizia parolelor…………………………………………………………………46 3.6. Securitatea serverului syslog …………………………………………………….47 3.7. Înregistrarea evenimentelor de sistem prin syslog……………………………….48 3.8.Poșta electronică…………………………………………………………………49 3.9. Retransmiterea sigură a poștei electronice prin intermediul autentificării SMTP.50 3.10.Qmail ……………………………………………………………………………50 3.11. Protocolul de poștă electronică(Post Office Protocol, POP3)………………….51 ……3.12. APOP …………………………………………………………………………52 3.13. Monitorizarea rețelei ………………………………………………………...…52 3.13.1.Configurarea și rularea clientului Nessus …………………………………52 3.13. 2.Portsentry…………………………………………….……………………….53 3.13.2.1. Instalarea aplicaţiei PortSentry ……………………………………...…….54 3.13.2.2. Configurarea aplicaţiei PortSentry ………………………………………...55 3.14. Analiza comparativă pentru diferite sisteme de baze de date ………………….56
  • 5. 5 3.15.Ce face Firewall_ul ? ………………………………………………………......57 3.16. Care este modul de funcționare a firewall-urilor? …………………………....58 3.17. Care sunt tipurile de Firewall_oluri? ……… ……………..…………………58 3.18. Care sunt tehnicile de filtrare a traficului? …………………………........….59 3.19. Să vedem nivelurile ISO ……………………………………………………...60 3.19.1. Modelul arhitectural TCP/IP …………………………………………………62 3.19.2. Modelul OSI comparat cu Modelul TCP/IP …………………….…………...63 3.20. Atacuri asupra rețelei de comunicații ……………………..……………...…66 3.20.1 Atacul la distanţă …………………………………………………………...…68 3.20.2. Atacurile active …………………………………………………………...…70 3.21.Activitatea cercului de informatică……………………………………………72 3.22.Instruirea si evaluarea asistată de calculator…………………………………73 3.22.1. Crearea unui chestionar………………………………………..……………74 3.22.2. Tipuri de întrebări …………………………………………………...……..76 3.23. Prezentarea programului de testare <<Tester de rețele>……………….……78 3.24.Intrebări recapitulative………………………………………………………….87 3.25.Răspunsuri la întrebări………………………………………………………….88 3.26.Programul meu de criptare …………………………………………..………..91 IV.Descrierea bazei de date cu substanțe chimice 4.1.Administrea site_urilor ce aparțin școlii…………………………………………..95 4.2.Planuri de lecții și fișe de lucru……………………………………..………..…96 4.3.Crearea bazei de date cu elemente chimice…………………………..…..……106 V.Concluzii……………………………………………………………………..………110 Anexa 1…………………………………………………………………….….…..……113 Anexa 2……………………………………………………………………………....…116 Anexa 3………………………………………………………………………..……..…119 Bibliografie…………………………………………..…………………………………122
  • 6. 6 Cap I . Informatica din societatea Informațională 1.1. Introducere Să descriem câteva definiții mai importante. Pedagogia este știința implicată în studiul metodelor de educație și instruire a oamenilor . Psihologia este știința care se ocupă cu studiul particularităților psihice umane. Metodica este parte a didacticii care analizează principiile, metodele și formele de predare, adaptate fiecărui obiect de învățământ. Didactica este parte a pedagogiei care se ocupă cu principiile și metodele predării materiilor precum și cu organizarea învățământului. Din punctul de vedere al unui cadru didactic , să vedem aceste științe în egală măsură cu obiectele de predare stăpânite simultan. Cunoștințele acumulate, oricât de vaste tot nu sunt suficiente pentru desfășurarea procesului de instruire. Pentru ca activitatea profesorului să aibă rezultatul dorit, trebuie să creeze un mediu corespunzător dar și mult talent împletit cu perseverență. Putem spune că didactica generală studiază aspectele teoretice, instructiv-educative de care se ocupă învățământul. Ele se referă la modul însușirii de către elevi a deprinderilor, priceperilor și atribuțiilor lor. Caracterul instructiv a învățământului, precum și la metodele și formele de organizare ale acestuia. Metodica poate fi văzută ca o parte integrantă a didacticii. "Obiectul de studiu al Didacticii Predării Informaticii îl constituie obiectele de informatică, precum și sarcinile care îi revin. Aceste sarcini revin din obiectivele generale ale învățământului".[9] Câteva idei principale privind aspectul viitoarei societăți sunt prezentate în continuare și rolul profesorului. "Economiile se generează prin frecventarea în mod generalizat a învățământului decât forma de frecventare <<la distanță>>. De exemplu un singur supercalculator foarte performant/ server costă mai puțin decât întreținerea mai multor săli de învățământ de tip școală, însă profesorul va explica mai pe înțeles. Calculatorul obligă să creăm un limbaj
  • 7. 7 comun cu o terminologie specifică, pe care o vom descrie în continuare. Un calculator este o mașină programabilă . Caracteristicile principale sunt două: • bine precizată, mulțimea de interacțiuni ce răspunde într-un mod bine definit. • listă de instrucțiuni păstrate anterior într-o memorie se execută programat pe baza unor pași de execuție. Știința calculatoarelor se ocupă cu studiul calculatoarelor incluzând atât proiectarea (cea de soft) cât și cea de hard.>> " [1]. Societatea informațională este societatea viitorului în care calculatoarele vor participa la viața de zi cu zi. "Noile tehnici trebuie să fie folosite în permanență cu profesionalism de către orice membru al societății. Un sistem inteligent de învățare este un concept ce definește o nouă versiune asupra relației profesor-elev- calculator." [2]. Arhitectura sa este compusă din patru subarhitecturi: • Baza de cunoştinţe existentă iniţial, împreună cu contextul acesteia; • Baza de cunoştinţe care va trebui să fie achiziţionată pe parcursul utilizării sistemului; • Informaţiile colaterale presupuse a fi fost deja asimilate; • Interfaţa disponibilă dintre elev şi profesor. 1.2 .Ce este informatica ? 1.2.1.Definiții Termenul <<Informatica>> a fost identificat cu noţiunile de <<știința calculatoarelor>>, <<ingineria calculatoarelor>>, ș.a. Aceste definiții informale pot deveni mai detaliate sau mai sintetizate fără a fi mai complete. ca exemplu obiectul Informaticii: ⚫ studiază calculatoarele precum și alte fenomene din jurul acestora ⚫ reprezintă suma cunoștințelor acumulate despre calculatoare și despre calcule matematice; are componente teoretice, experimentale și de proiectare , include: ▪ teorii despre echipamentele de calcul, programe și sisteme;
  • 8. 8 ▪ experiențe referitoare la testarea și dezvoltarea conceptelor; ▪ reguli, metode de proiectare algoritmi, unelte pentru aplicații practice particulare; ▪ metode de analiză a realizărilor care îndeplinesc condițiile cerute; ⚫ se ocupă cu studiul implementării cunoștințelor și a reprezentării acestora ⚫ studiază complexitatea cunoștințelor și modelele lor ⚫ studiază procesele algoritmice care descriu și transformă informația (teoria informației), studiază analiza, proiectarea și aplicarea acestora. Se mai întâlnesc și alte descrieri ale conceptului <<Informatica>>. Important este să știm dacă <<Informatica>> este o știință inginerească sau una abstractă. O știință abstractă pune accent pe analiză și doar accidental pe modelare. O știință inginerească pune accent pe modelare și proiectare. În continuare se evidențiază caracteristici ale teoriei, modelării și proiectării pentru a se observa dacă Informatica aparţine exclusiv unui anumit domeniu. De exemplu teoria își are rădăcinile în matematică. Pentru a fi validă, o teorie trebuie să urmărească etapele: ⚫ să caracterizeze obiectele de studiu (definiția); ⚫ să caracterizeze relațiile posibile dintre obiectele de studiu (teorema); ⚫ să determine dacă relațiile stabilite sunt adevărate (demonstrația); ⚫ să interpreteze rezultatele obținute (verificarea practică). Dacă apar erori, aceste etape se vor relua. Teoria descrie și demonstrează relațiile dintre obiecte. Din punctul de vedere al teoriei, calculatorul ajută la: demonstrarea teoremelor, verificarea specificațiilor, furnizarea contraexemplelor, verificarea anumitor calcule de test, efectuarea de calcule simbolice. Modelarea își are rădăcinile în științele experimentale, având drept scop investigarea unui fenomen în câteva etape:
  • 9. 9 ▪ formarea unei ipoteze de lucru ▪ construirea unui model formal (abstract) ▪ proiectarea și realizarea unui experiment și colectarea datelor ▪ analiza rezultatelor. Îmbunătățirea modelului și înlăturarea erorilor, se vor realiza prin reluarea etapelor menționate anterior. Modelarea utilizează calculatorul începând cu modul de prezentare și terminând cu evaluarea corectitudinii. Proiectarea își are rădăcinile în inginerie, în construirea oricărui sistem fiind necesare următoarele etape: a) elaborarea specificațiilor de stare și a relațiilor între stări b) proiectarea efectivă și implementarea sistemului c) testarea sistemului în medii de lucru reale. Proiectarea utilizează calculatorul în orice etapă. Fără calculator proiectare este mare consumatoare de timp, energie, resurse umane și materiale. Toate cele trei procese (teoria, modelarea și proiectarea) interacționează astfel. Teoria apare în fiecare etapă de modelare și eventual în fiecare etapă de proiectare; modelarea are un rol foarte important atât în teorie cât și în proiectare; proiectarea este parte componentă a fiecărei etape de teorie și modelare. Fiecare dintre cele trei procese (teoria, modelarea și proiectarea) poate demonstra că „Informatica” îi aparține și că dezvoltarea acesteia se face numai în cadrul unui anumit proces. "Din punctul de vedere al Informaticii aceasta conține în egală măsură teorie, modelare și proiectare. Informatica se dezvoltă la granițele acestor procese și prin urmare utilizează metodele de cercetare ale acestora pe lângă metodele proprii, specifice. Prin urmare, Informatica, este o știință de sine stătătoare, lucru confirmat de realitatea ultimelor decenii". [3] "Informatica ca și disciplină de sine stătătoare (opțională/ facultativă/ obligatorie) are ca scop împlementarea planurilor de învățământ școlare ce urmăresc:
  • 10. 10 • capacitățile de dezvoltare a utilizării unui limbaj informatic specific și de folosire a tehnicii de calcul pentru însușirea de noi cunoștințe; • mijloacele de modelare pentru înțelegerea informaticii, a fenomenelor realității înconjurătoare și de simulare a acestora; • parcurgerea principalelor etape de dezvoltare a informaticii ca știință, pentru dezvoltarea, nivelului de cultură generală; • motivații intrinseci duc la dezvoltarea studiului informaticii; • crearea unei atitudini favorabile activității de rezolvare a problemelor cu ajutorul calculatorului prin deprinderea strategiilor de abordare a acestora și tratarea lor într-un mod riguros; • autoinstruirea dezvoltarea unor capacități de învățare autodidactă; • atitudini pozitive privind importanța deosebită a creării în lumea informaticii pentru dezvoltarea în domeniile vieții economico-sociale".[3] 1.2.3.E-educația "E-educația este o opțiune importantă în societatea contemporană. Se vorbește astfel despre Distribuited Lerning Object Repository Network (DLORN), despre Electronic Learning Object (ELO) sau despre Learning Management System (LMS). Ceea ce trebuie reținut este faptul că trebuie să avem un context special, pentru ca educația electronică să capete un contur social. În privința componentelor de învățare, problemele actuale sunt legate în principal de standardizările privind refolosirea și interoperabilitatea diferitelor instrumente existente. Legăturile actuale dintre cei care învață și cei care predau, cei care întrețin și cei ce actualizează bazele de informații, ar trebui monitorizate. În privința tehnologiilor de învățare, există câteva grupuri de standarde admise ISO/TEC, JTCI, SC36, IEEE LTSC și CEN/ISSLearning Technology Workshop (WS-LT), deși cel mai popular standard acceptat este probabil SCORM (Schareable Content Object Reference Model). Acesta ar promova inițiativa ADL (Advanced Distributed Learning), care include atât asigurarea posibilității de acces simplificat a tuturor membrilor societății la
  • 11. 11 materialele de învățare cât și personalul de asistență cu un nivel înalt de pregătire, ce are ca scop crearea unei piețe viguroase". [4] Învățarea în timp real și învățarea colaborativă se bucură de implementări pe servere EDCOMNET (un sistem internațional de tip utilizabil în statele U E pentru educația permanentă). 1.3. Noțiuni de bază în Informatică "Algoritmul este ansamblul de transformări programate, pentru rezolvarea unei probleme. Asupra unui set de date de intrare se vor face modificări după o succesiune de pași și vom obține datele de ieșire, deci rezolvarea dorită. Algoritmii sunt reprezentați folosind pseudocodul sau schemele logice. Dacă scriem programul în pseudocod, putem să-l verificăm , gândind precum calculatorul".[5] 1.3.1. Instrucțiuni ale limbajului Pseudocod. Să prezentăm câteva instrucțiuni din cadrul limbajului pseudocod. A). Instrucțiunea de decizie Dacă (condiție îndeplinită) atunci Bloc instrucțiuni Sfdacă B). Instrucțiunea repetitivă cu test inițial Câtimp (condiție îndeplinită) execută Bloc instrucțiuni Sfcâtimp C) Instrucțiunea repetitivă cu test final Repetă Bloc instrucțiuni Pânăcând (condiție îndeplinită) D).Instrucțiunea repetitivă cu contor
  • 12. 12 Contor:= valoare_inițială Câtimp (contor<= valoare_finală) execută Bloc instrucțiuni Contor:= contor + pas Sfcâtimp 1.3.2. Metode de elaborare a algoritmilor Elaborarea unui algoritm de rezolvare a unei probleme, exprimă o capacitate de sinteză ca o formă de manifestare a inteligenţei. Reuşita algoritmilor este dovadă a standardizării modului de elaborare a acestora. Vom prezenta câteva metode de proiectare a algoritmilor. 1.3.2.1. Metoda divide et impera "Metoda divide et impera a fost sugerată de ideea firească a unei probleme care e împărţită în două sau mai multe enunțuri mai simple. Această divizare poate fi aplicată succesiv noilor probleme,până la nivel de detaliu de la care obţinerea soluţiilor este facilă. În mod natural, totul se finalizează cu reconstituirea de jos în sus a soluţiilor parţiale, la enunțurile separate". [6]. Enunţ Exerciţiu. Să considerăm n>=1 elemente x1, x2,..,xn şi un subsir al acestuia ap,ap+1,ap+2,…..,aq, cu 1<=p<q<=n, asupra căruia avem de efectuat o prelucrare oarecare (procedura prelucrare). Soluție. Metoda divide et impera de rezolvare a acestei probleme presupune împărţirea şirului (p,q), în două subşiruri (p,m) şi (m+1 , q), cu p<m<q asupra cărora să se poată efectua mai uşor prelucrarea. Prin prelucrarea celor două subşiruri se vor obţine rezultatele şi care, combinate (procedura Obtinsolutiefinală), vor conduce la soluţia α a problemei iniţiale. Parametrii procedurii divide Et Impera au următoarea semnificaţie: p- indexul primului element din şir q- indexul ultimului element al şirului d-numărul de elemente care permit efectuarea prelucrării Procedura DivideEtImpera(p,q,α)
  • 13. 13 Daca (q-p < d) atunci Prelucrare(p,q,α) Altfel Divide(p,q,m) DivideEtImpera(p,m,β) DivideEtImpera(m+1, q, ¥) Obținsoluțiefinala(β, ¥, α) SfDacă Sfârsit DivideEtImpera "În cele mai frecvente cazuri, procedurile Divide, Obținsoluțiefinala și Prelucrare, sunt compuse dintr-un număr redus de instrucțiuni, nemotivându-se descrierea și apelul lor separat ca proceduri în corpul procedurii Divide Et impera " [15] 1.3.2.2. Metoda backtracking Metoda backtraking constituie una dintre cele mai des folosite pentru căutarea soluției <<optime>>, pentru o problemă, atunci când mulțimea soluțiilor posibile este cunoscută se generează în spațiul de valori. O analiză <<necontrolată>>, printr-o parcugere după o metodă oarecare a mulţimii soluţiilor este costisitoare ca timp de execuţie impune astfel a se evita generarea şi verificarea tuturor soluţiilor posibile : Problemă. Se consideră n≥3, mulţimi nevide şi finite A1, A2, …, An şi m1,m2,…., mn, cardinalele acestor mulţimi. Considerăm o funcție f: A1 X A2 X….X An→R. O soluție a problemei este n-uplu de forma x=(x1,x 2,….,x n,) ϵ A1 X A2 X….X An care optimizează (conform unor criterii specificate) funcția f. Soluția. Mulțimea A= A1 X A2 X….X An se numește spațiul soluțiilor posibile ale problemei. Condiția de optim pe care trebuie s-o îndeplinească o soluție, este exprimată prin forma funcției f. O soluție posibilă, care optimizează funcția f, adică satisface condițiile interne ale problemei, se numește soluție rezultat sau soluția problemei. Construirea unei soluții constă în determinarea, componentelor vectorului x. Construirea primei soluții, începe întotdeauna cu construirea primului element al vectorului x. La un moment dat se va alege un element dintr-o mulțime, pe care
  • 14. 14 convenim să o numim mulțime curentă și presupunând că elementele fiecărei mulțimi Ai ( 1i  n) sunt ordonate elementul care se adaugă la vectorul x îl vom numi elementul curent. Următorul algoritm descrie metoda backtraking la nivel conceptual: Pas1. Considerăm prima mulțime A1 ca fiind mulțime curentă Pas2. Trecem la următorul element din mulțimea curentă (când o mulțime devine mulțime curentă, pentru prima dată, prin trecerea de la o mulțime anterioară ei, acesta va fi primul element din acea mulțime). Pas 3. Verificăm dacă un asemenea element există (adică nu s-au epuizat elementele mulțimii curente). pas 4. Dacă nu există un asemenea element, atunci mulțimea curentă devine mulțimea anterioară celei curente; când o asemenea mulțime nu există, algoritmul se oprește (nu se mai pot obține soluții); pas 5. Dacă există, atunci verificăm dacă elementul curent din mulțimea curentă, împreună cu componentele vectorului x determinate anterior, pot conduce la o soluție. În vederea construirii soluției optime: Dacă <<Da>> (condițiile de continuare sunt îndeplinite), următoarea mulțime devine . mulțime curentă și se continuă cu Pas2. Altfel se continuă cu pas3. i= 1; //luăm prima mulțime A1 adică A[. ,1] Index[i]= 1; //puncteaza la primul element A[index[i], i] X[i]= A[index[i], i] //punem primul element în soluţie Cât timp (mai am mulţimi de selectat) execută { //atât timp cât mai există elemente în A[..,i] Câttimp(index[i]≤ nr_elemente[i]) execută { Dacă (valid […] ) atunci //Dacă elementul este corect //putem trece la următoarea mulţime
  • 15. 15 Dacă (i==n) atunci //suntem la ultima mulțime Afișare _soluție(); altfel { i++ // trecem la următoarea mulțime Index [i]= 1;// în anumite cazuri se poate și Index [i]++ } X[i]= A[index[i], i]; //Bucla While s-a terminat deci mulțimea A[.,i] nu mai are elemente care să participe la //formarea soluției. Trebuie să ne intoarcem, înainte de a schimba valoarea lui i vom //inițializa indexul de căutare în această mulțime cu -1. Aceasta înseamnă că o nouă //căutare în mulțime se va // face din nou, de la primul element și nu vom pune nimic în soluție. Index [i]= -1; x [i]=0; i-- ; // Întoarcerea la mulțimea anterioară Index [i]++; // măresc indexul de căutare în mulțimea curentă Dacă (Index [i] ≤ nr_elemente[i] ) //verific din nou dacă indexul este valid x[i]=A[index[i], i]; } câttimp(i!=0); [7] Avem şi un caz particular : "Procedura backtracking i:= 1; k:=0; {k=0 are semnificaţia k1=0 } Repetă Repetă k=k+1
  • 16. 16 Dacă (k≥ mk) atunci k=0 {k=0 are semnificaţia ki=0 } i=i-1 { se realizează și << întoarcerea >>} altfel xi = aik Dacă ( x1, x2, .., xi conduce la optim) atunci i=i+1 // se verifică testul de continuare Sfdacă Sfdacă Pânăcând ( i>n sau i=0 ) Dacă ( i>n ) Atunci << afișare soluție >> i= n; Sfdacă Pânăcând ( i=0 ) Sfârsit ". (M. Talmaciu, p.34) 1.3.2.3. Metoda Greedy Metoda Greedy permite găsirea unei singure soluții pornind de la un anumit criteriu de optim.La aceste probleme soluția se construiește ca o submulțime de mai multe date ordinul de complexitate al unui algoritm este micșorat considerabil. Aceasta deoarece se încearcă găsirea soluției printr-o singură parcurgere a mulțimii din care se încearcă construirea soluției optime, asupra cărora se fac prelucrări.
  • 17. 17 Enunț: Se dă o mulțime A de cardinal n și o funcție f:P(A)→R.Să se determine o mulțime BϵP(A), de cardinal k,B={b1,b2,…,bk}, 1≤ k≤ n, astfel încât k_uplul (b1,b2,….,bk), să optimizeze funcția f. Soluție. Familia părților finite A, notată P(A), se numește spațiul soluțiilor problemei. Condiția de optim pe care trebuie s-o îndeplinească o soluție, este exprimată printr-un set de relații între anumite elemente ale mulțimii A.Relațiile sunt exprimate prin funcția f. O soluție care poate conduce la obținerea unei valori optime se numește soluție posibilă. Prin urmare și mulțimea vidă poate fi considerată o soluție posibilă. Descriere metodă: start Pas 1. Considerăm mulțimea B, ca fiind mulțime vidă ; Pas 2. Se alege un element aϵA, neales anterior; Pas 3. Verificăm dacă submulțimea B Ս{a} conduce la o soluție posibilă. -dacă da, atunci adăugăm elementul ales la mulțimea B (B:= B Ս {a}). -se continuă cu pas 2, până când nici un element al mulțimii A nu mai poate fi adăugat la B sau adăugarea lui nu mai poate îmbunătăți valoarea funcției f. altfel stop. Algoritmul prezentat conduce la obținerea unei soluții pornind de la mulțimea vidă și căutând în fiecare pas să îmbunătățim soluția deja obținută. Această tehnică de obținere a soluției, care a dat și denumirea metodei ( greedy = lacom), în cele mai frecvente cazuri, conduce la îndepărtarea involuntară de optim. Acest aspect al tehnicii greedy a condus la disocierea algoritmilor: - Algoritmul cu atingerea optimului global - Algoritmii ale căror soluții converg către optimul global. Această din urmă categorie de algoritmi generează soluții mulțumitoare, dar și soluții catastrofale. De aceea se folosește o prelucrare prealabilă a elementelor mulțimii A care să modifice ordinea alegerii elementelor submulțimii B. Procedura greedy
  • 18. 18 k: =0; B: =ф; Repetă Alege a ϵ A Dacă (B Ս{a} este soluție posibilă ) atunci k:=k+1; B:=B Ս {a}; Sfdacă Pânăcând ( nu se mai pot alege elemente din A) Sfârsit. Exemplul 2( funcția maxim ). Secdă o mulțime A cu n elemente pozitive și o funcție f de forma f( x1, x2,….,xk )= c1x1+ c2x2+….+ ckxk,( c ϵ R, 1≤k≤ n ). Să se găsească o combinație a elementelor din A, pentru care funcția f să ia valoarea maximă. În programul Pascal: Fișierul de intrare mulțime.txt va avea forma: a1, a2,………, an - mulțimea A c1, c2,………, cn - coeficienții funcției f Fișierul de ieșire va conține solutie.out : Soluția x =( b1, b2,………, bk ) Valoarea maximă a funcției este v. " Soluție. Această problemă constituie un exemplu ilustrativ complex, pentru cazul în care, prin aplicarea metodei greedy, se obține valoarea optimă a funcției f.Algoritmul necesită o pregătire prealabilă a mulțimii A în vederea aplicării procedurii de alegere succesivă a elementelor submulțimii B. - se va ordona crescător mulțimea A; - pornind de la B:= ф, vom selecta elementele din A astfel: - cât timp printre coeficienții ck ai funcției f există numere negative ( cărora nu li s-a asociat un element din A, ca valoare xi corespunzătoare ), executăm: celui mai mic coeficient neasociat unui element din A, îi atașăm cel mai mic număr din A încă nese- lectat ca valoare; - pentru ceilalți coeficienți ( pozitivi ) ai funcției f, cărora nu lixes-a
  • 19. 19 asociat un element din A ( ca valoare xi ) se alege, pentru cel mai mare coeficient neasociat unui element din A, cel mai mare număr din A încă neselectat ".[8] 1.4. Metoda programării dinamice Metoda programării dinamice, după numele ei permite determinarea unei soluții, în urma luării unor decizii și prelucrări, realizând o continuă dinamică în căutarea soluției pentru o problemă inițială. Problemă. Noțiunea de algoritm, așa cum a fost prezentată în lucrare, presupune entități distincte în existența unui set de date de intrare. Folosind metode de transformare succesivă a acestora, pentru obținerea unui set de date de ieșire ca rezultat al tuturor prelucrărilor. Abordarea celor trei elemente ca un sistem presupune existența unor intercondiționări între acestea . Corelațiile sunt identificate, ca metodă de abordare a algoritmilor de rezolvare a unor clase de probleme. În programarea dinamică, există un sistem de subprobleme ce se condiționează reciproc. Soluție. Pentru o problemă dată, fie S0 starea sistemului format din datele de intrare și de lucru ( intermediare ) precum și din corelațiile existente între acestea. O decizie d1 de transformare a datelor orientată în direcția obținerii unei soluții optime pentru o problemă produce o prelucrare a stării S0, determinând transformarea acesteia într-o nouă stare S1. Suntem în acest moment puși în fața mai multor subprobleme similare cu cea inițială și care, printr-o nouă decizie de prelucrare, conduc la o nouă stare. Schimbarea stării sistemului va continua până la obținerea unei stări finale, din care se deduce soluția optimă a problemei inițiale. În general fiecare nouă decizie de transformare a stării sistemului depinde de deciziile luate anterior . Fie d1, d2,………, dn-1, dn o secvență de decizii optime care determină trecerea succesivă a sistemului din starea inițială S0 la starea finală Sn prin intermediul stărilor S0, S1, S2, .., Sn-1. O modalitate naturală de abordare a problemei constă în luarea succesivă de decizii optime de prelucrare în ordinea d1, d2, ………, di-1, pornind de la starea inițială S0. Decizia următoare di, depinde de sirul de decizii optime deja luate d1, d2,………, di-1 . Spunem în acest caz că se aplică metoda spre înapoi . Dacă se determină stabilirea stării sistemului Sn din care se deduce
  • 20. 20 soluția optimă, care este de dorit să determine o decizie dn pentru o stare Sn-1.Se ajunge la starea Sn, în urma aplicării deciziei dn, se va determina inversa unei decizii și starea sistemului anterioară luării acestei decizii. Fiecare secvență de decizii optime di+1, di+2, ………, dn care fac sistemul din starea Si-1, în starea Si, va depinde de șirul de decizii inițiale .Spunem în acest caz că se aplică metoda spre înainte. A treia modalitate de abordare sugerează determinarea a două decizii optime di și di+1 având două subșiruri optime de decizii: - di+2, di+3,………..….., dn care conduc sistemul din starea Si+1 în starea finală Sn prin intermediul stărilor Si+1, Si+2, Si+3, .., Sn-1 . - d1, d2,……….., di-1 șir de decizii optime care determină crearea sistemului din starea inițială S0 la starea finală Si-1.Spunem în acest caz că se aplică metoda mixtă ( explozivă ). "Cele trei modalități de abordare au, la bază principiul optimalității.Dacă d1,d2,………,dn este un șir, optim de decizii, care determină, trecerea sistemului din starea inițială S0, la starea finală, Sn, atunci sunt adevărate următoarele afirmații: - di+1, , di+2,…., dn este un sir optim, de decizii care determină trecerea sistemului de la starea Si, la starea finală Sn , oricare i, 1≤ i≤ n; -d1, ,d2,……….., ,di este un sir optim de decizii care determină, trecerea sistemului de la starea inițială S0, la starea Si , oricare i, 1≤ i≤ n". [9]
  • 21. 21 Cap 2. Protecția bazelor de date în rețea 2.1. Ce este o bază de date? Informațiile sunt colectate și organizate în baze de date. Bazele de date pot stoca informații despre persoane, produse, comenzi sau orice entitate. Multe baze de date încep ca o listă într-un program de procesare a textului sau o foaie de calcul.Pe măsură ce lista se mărește, datele încep să conțină redundanțe și inconsistențe.Ele devin greu de înțeles sub formă de listă și există modalități limitate de a căuta sau a extrage subseturi de date pentru revizuire.După ce încep să apară aceste probleme, este o idee bună să transferați datele într-o bază de date creată de un sistem de gestionare a bazelor de date ( SGBD ), cum ar fi M.S Access . O bază de date poate conține mai multe tabele.Un sistem de urmărire a inventarului care utilizează trei tabele reprezintă trei baze de date, o singură tabelă cu conținutul celor trei Access stochează tabelele proprii într-un singur fișier, împreună cu alte obiecte: formulare, rapoarte, macrocomenzi şi module.Bazele de date create în formatul Access 2007( care este utilizat și de Access 2016, Access 2013 și chiar Access 2010) au extensia de fișier .accdb.Bazele de date create în formatele de Access mai vechi au extensia de fișier .mdb.Puteți utiliza Access 2016, Access 2013,Access 2010 sau Access 2007 pentru a creea fișiere în formate mai vechi ( de exemplu, Access 2000 și Access 2002--2003 ) . Utilizând Access, aveți următoarele posibilități: ⚫ Adăugaţi la o bază de date, noi înregistrări de exemplu un element nou într- un inventar. ⚫ Editaţi date existente în baza de date, cum ar fi modificarea locației curente a unui element. ⚫ Ștergeţi informații, de exemplu, un element să fie eliminat din listă. ⚫ Organizați și vizualizați datele din tabele.
  • 22. 22 ⚫ Datele să fie partajate prin intermediul rapoartelor, al mesajelor de email, al unui Intranet sau al Internetului. 2.2. Ce este o baza de date în rețea și cum o partajăm. O rețea de calculatoare este alcătuită dintr-un grup de echipamente de calcul ce pot partaja în comun resurse hardware ( echipamente) și software (fișiere, foldere, servicii). Ea are următoarele elemente definitorii: • " Tipul resurselor partajabile – depind de tipul participanților în cadrul rețelei : - furnizorii de servicii (sunt combinații hardware/software ce au un rol specific asociat unor servicii) - beneficiarii de servicii – echipamente ce solicită servicii de la furnizori" [10] Într-o reţea se găsesc următorii participanți: serverul (furnizează servicii), clientul (cere servicii de la server). Aceștia determină următoarea clasificare a rețelelor: - rețeaua fără server, de tip Peer-to-Peer (de la egal la egal) – orice echipament din rețea poate îndeplini rolul de server sau client; .- rețeaua Client-Server (bazată pe server) – doar serverele sunt entități ce furnizează servicii, celelalte echipamente îndeplinind doar rolul de client. În cadrul unei rețele pot fi oferite următoarele servicii de bază: 1.servicii de fișiere (transfer, stocare, actualizare, arhivare); 2.servicii de listare (cozi de listare, partajare imprimantă, servicii fax); 3. servicii mesagerie (poștă electronică); 4. servicii pentru aplicații (permit executarea aplicaţiilor în regim partajat); 5. servicii pentru lucrul cu baze de date. ⚫ Calea fizică de transmitere a informației – reprezintă legătura fizică prin care se realizează comunicarea în rețea (cablu, satelit sau rețele telefonice închiriate pentru rețele WAN). Alegerea structurii fizice a mediului de transmisie are importanță majoră în lucrul de rețea, ea determinând modul de implementare a celorlalte componente. ⚫ Tipul de protocol de comunicație folosit "1.2. Protocolul se referă la regulile de comunicație între echipamente. Acestea vor stabili modul de transmisie, de verificare a corectitudinii recepției, cantitatea și viteza de transmitere a datelor, modalitatea de tratare a erorilor". [17]
  • 23. 23 Tipuri de servere : ⚫ File server pune la dispoziția utilizatorilor din rețea informațiile memorate pe mediile sale de stocare; ⚫ Print Server calculator sau dispozitiv special ce pune la dispoziția utilizatorilor imprimantele la care este conectat; ⚫ Server de comunicații pune la dispoziția utilizatorilor dispozitivele de comunicație la care este conectat ( ex. modem ) . Staţiile de lucru – echipamente de calcul ce beneficiază de serviciile oferite de unul sau mai multe servere şi care au acces la resursele hardware şi software partajate. ⚫ Resursele partajate – sunt echipamente hardware sau resurse software ce pot fi folosite de toți participanții dintr-o rețea (ex. imprimante, unități CD-ROM, modem, hard-discuri, foldere și fișiere). Resursele partajate sunt conectate la un server sau stocate pe un server. Observație: în funcție de echipamentul la care sunt conectate, perifericele se vor împărţi în: ⚫ Periferice locale – conectate la porturile locale ale echipamentului de calcul ⚫ Periferice remote (la distanță) – nu sunt conectate la mașina locală și sunt accesibile numai prin intermediul rețelei ⚫ Alte elemente de rețea – repetoare, huburi, etc cu rol în asigurarea conectivității rețelei. Din punct de vedere software, o rețea necesită : ⚫ Sistem de operare pentru rețea – este instalat pe serverele din rețea și asigură funcționalitatea serviciilor în rețea (ex. MS Windows NT Server, Novell Netware); ⚫ Software de pe stațiile de lucru: sistem de operare uzual, software client ce asigură acces la serviciile rețelei; ⚫ Aplicații de rețea – sunt programe ce permit accesul simultan a mai multor utilizatori la informații ce se găsesc memorate pe o resursă partajată.Aceste aplicații au două componente: prima se instalează pe server și a doua pe mașina client. La solicitarea unor informații de pe server,către mașina locală se vor trimite doar rezultatele, procesarea desfășurându-se pe server. Va rezulta o reducere substanțială a traficului de rețea. Din punct de vedere al utilizatorilor există: ⚫ Administratori – persoane responsabile de întreținerea rețelei și care au drepturi
  • 24. 24 depline în rețea; ⚫ Utilizatori privilegiați – care au drepturi depline doar pentru o anumită funcție în rețea (ex. administrator pentru imprimantele partajate – au drepturi depline doar pentru imprimantele partajate din domeniul său). ⚫ Utilizatorii obișnuiți – beneficiază de serviciile si resursele partajate ale rețelei. Au acces, de regulă,doar la datele proprii și la anumite resurse partajabile (imprimante modem-uri, fax-uri, foldere, etc.).[11] Drepturile utilizatorului. Accesul într-un cont utilizator se realizează prin: ⚫ nume utilizator ⚫ parola de acces. În cadrul unei reţele toate datele şi informaţiile ( drepturi, mod de configurare a mediului de lucru) referitoare la conturile utilizatorilor sunt memorate într-o bază de date cu caracter administrativ. Pentru reţelele de tip client-server baza de date este stocată pe server, iar pentru cele peer-to-peer pe maşina locală (deoarece aceasta poate juca rolul de server). Conectarea la reţea se realizează printr-o operaţie numită login sau logon. Aceasta presupune autentificarea utilizatorului prin cele 2 elemente de acces la cont (nume şi parola). Dacă informaţiile introduse de utilizator coincide cu cele stocate în baza de date administrativă, acesta va avea acces la resursele ce vor fi alocate în reţea. 2.3. Integritate și securitate 2.3.1. Integritate Integritatea bazelor de date se referă la corectitudinea informaţiilor şi presupune detectarea, corectarea şi prevenirea diferitelor erori care pot afecta datele introduse în bazele de date. Când facem referiri la integritatea datelor, înţelegem că datele sunt considerate relativ la toate restricţiile formulate anterior. Condiţiile de integritate numite şi reguli sau restricţii de integritate nu permit introducerea în baza de date a unor informații aberante şi sunt exprimate prin condiţii puse asupra datelor. În general sunt acceptate mai multe criterii de clasificare a regulilor de integritate. O serie de condiţii sunt de tip structural, legate de anumite egalităţi între valori
  • 25. 25 şi exprimate prin dependenţe funcţionale sau prin declararea unor câmpuri cu valori unice (de cele mai multe ori aceste câmpuri sunt chei). O altă serie de condiţii se clasifică după unitatea la care se aplică restricţia. În acest caz, există restricţii pe domenii (ce privesc anumite valori pentru atribute) sau restricţii pe tabele (relaţii). Restricţiile pe tabele pot fi unituplu (se referă la fiecare tuplu în parte) sau multituplu (se referă la combinaţii de mai multe tupluri). O restricţie de integritate de relaţie unituplu impune ca în fiecare tuplu al unei relaţii de bază, în câmpurile corespunzătoare cheii primare. "Sunt valori diferite de valorile nule. Această regulă se mai poate enunţa şi sub forma: într-o bază de date relaţională nu se înregistrează nici o informaţie despre ceva ce nu poate fi identificat" [12]. Un exemplu de restricţie de integritate de tip multituplu este restricţia referenţială care se exprimă prin următoarea condiţie. Pentru cheile externe, dacă nu sunt nule, să se admită valori corespunzătoare uneia dintre cheile primare existente în relaţia referită. Verificarea acestei condiţii este făcută de câte ori se inserează un nou tuplu ce conţine o cheie externă. Se modifică valoarea unei chei externe a unui tuplu. Se semnalează eventualele neconcordanţe şi anulând modificările. Verificarea unicității cheii primare şi restricţiile rezultate din dependenţele funcţionale şi multivaloare sunt alte exemple de acelaşi tip. Un alt criteriu de clasificare este acela prin care se deosebesc regulile de interitate ce se referă la diferitele stări ale bazei de date. Aceste reguli se referă la tranziţia dintr-o stare în alta. Restricţiile pot fi clasificate şi din punct de vedere al momentului în care se aplică , astfel avem reguli imediate (ce se verifică în momentul în care se efectuează operaţia indicată) sau reguli amânate (ce se verifică numai după ce au fost executate şi alte operaţii asociate dar înainte de a se modifica baza de date).In funcţie de aria de aplicare, restricţiile sunt împărţite în restricţii generale, aplicabile tuturor relaţiilor din baza de date şi restricţii particulare, care se pot aplica numai la anumite relaţii. Regulile de integritate sunt aplicabile relaţiilor de bază în care sunt reprezentate efectiv datele bazei de date. Dintre regulile generale cel mai des folosite în modelul relaţional sunt regulile ce privesc cheile primare ( unicitatea valorilor cheilor primare în cadrul relaţiei) şi cheile externe. Să analizăm în continuare câteva tipuri de restricţii de integritate. Restricţii pentru integritatea entităţii. Enunţ: Intr-o relaţie de bază nici un atribut al unei chei primare nu poate avea valori nule. Deja cunoaştem că se cere ca valorile cheilor primare să fie unice.
  • 26. 26 In majoritatea SGBD unicitatea cheii primare şi integritatea entităţii sunt condiţii obligatorii. Restricţii pentru integritatea referenţială. Enunţ: Dacă există o cheie externă într-o relaţie, ori valoarea acesteia trebuie să se potrivească cu valoarea unei chei candidat a vreunui tuplu în relaţia de origine, ori valoarea cheii externe trebuie să fie nulă. Cu alte cuvinte, dacă o valoare există într-o relaţie pe post de cheie externă, ori ea trebuie să se potrivească cu valoarea unei chei primare dintr-o altă relaţie ori să fie nulă. Probleme serioase apar în momentul când trebuie efectuate modificări sau ştergeri de valori ale cheilor primare. Dacă se actualizează o cheie primară sau se şterge întregul tuplu şi valoarea cheii primare nu apare nicăieri ca şi cheie externă atunci se permite efectuarea operaţiei altfel nu se permite efectuarea operaţiei Sfdacă Situaţiile descrise anterior pot fi rezolvate în cadrul aplicaţiei sau se pot include în SGBD utilizând mecanismul trigger-elor. Mai multe SGBD-uri permit să se creeze şi să se memoreze procedurile referitoare la baza de date şi aceste proceduri pot fi invocate când au loc anumite evenimente, cum ar fi actualizări şi ştergeri ale unor atribute. Standardul SQL furnizează controale pentru integritatea referenţială în declaraţiile de creare a tabelelor. 2.3.2.Restricţiile de domeniu Aceste restricţii sunt întotdeauna restricţii de stare imediate. Aceste restricţii se pot referi la tipul de date pentru un atribut, la o listă de valori posibile, la un ordin de mărime, la un format sau o formă, la o condiţie exprimată cu o formulă logică. O procedură este apelată de câte ori are loc o modificare pentru domeniul specificat.
  • 27. 27 2.3.3. Securitatea bazelor de date Prin securitatea bazelor de date se înțelege protejarea bazelor de date împotriva folosirii neautorizate a lor și în special a modificărilor și distrugerilor nedorite de date și a citirilor nepermise de date. Pentru realizarea securității datelor din baza de date se utilizează controale tehnice și administrative. Securitatea este în general asociată cu următoarele situații: ⚫ acces fraudulos la date, ⚫ pierderea confidențialității (secretului) datelor, ⚫ pierderea caracterului privat al datelor, ⚫ pierderea integrității datelor, ⚫ pierderea disponibilității datelor Este mai dificilă protejarea datelor împotriva accesului răuvoitor, intenționat. Se recunoaște că de fapt nu există protecție absolut sigură ci doar protecții și măsuri de securitate mai eficiente sau mai puțin eficiente. Forme de acces intenționat și răuvoitor la datele unei baze de date: - citirea neautorizată a unor date, - modificări neautorizate de date, - distrugeri de date. Noțiunea de securitate a bazei de date este de obicei asociată cu îndepărtarea accesului răuvoitor, pe când integritatea se referă la evitarea pierderilor accidentale de consistență. Pentru protecția bazei de date se pot lua măsuri de asigurare a securității la mai multe nivele: ⚫ la nivel fizic: locurile în se află calculatoarele trebuie protejate de accesul persoanelor neautorizate; ⚫ la nivel uman:este recomandabil să se acorde autorizații de acces cu multă grijă și să se țină evidențe stricte ale persoanelor autorizate; ⚫ la nivel sistem de operare: slăbiciunile trebuie eliminate sau compensate de alte măsuri; ⚫ la nivel SGBD: sistemul oferă anumite facilități care sprijină protecţia datelor. Tehnici de asigurare a securității datelor : a) Identificarea utilizatorilor. Fiecărui utilizator în parte i se acordă anumite drepturi de operare pe diferite porțiuni din baza de date la diferite nivele cum ar fi
  • 28. 28 relația, înregistrarea, pagina, atributul, etc. Drepturile se referă la posibilitatea citirii, inserării, ștergerii sau modificările datelor respective. Identificarea se face prin parole . b) Protejarea datelor prin codificare (criptare). Deoarece s-ar putea ajunge la date și prin alte mijloace, se poate face o protecție prin păstrarea codificată a datelor pe mediu magnetic. Decodificarea datelor se poate face numai după identificarea utilizatorului. Utilizarea view-urilor în aplicaţii. Abilitatea view-urilor de a <<ascunde>> o parte din informațiile din baza de date poate fi utilizată și pentru stabilirea unui anumit grad de securitate a datelor. Astfel se poate vorbi de acces la nivel de relație ( tabelă ) sau acces la nivel de view. În unele sisteme nu vor fi acceptate modificări prin intermediul view-urilor. Astfel de view- uri se numesc read-only( numai pentru citire ) și sunt utilizate în aplicațiile în care datele pot fi citite de toți utilizatorii ( bazelor de date publice) dar modificările se fac numai cu aprobarea administratorului/proprietarului bazei de date. Modificările din view-uri nu sunt în general admise deoarece pot duce la efecte laterale ce privesc părţi din baza de date ce nu apar în view-uri. De exemplu ştergerea unui element din view poate să ducă la eliminarea unui alt element care va fi singura legătură cu elementul şters şi care nu se află în view. 2.3.4.Administrarea și transmiterea drepturilor. Se ține evidenţa strict a drepturilor de acces ale fiecărui utilizator la porţiuni din baza de date şi se fixează reguli de transmitere de la un utilizator la altul a dreptului de acces. Forme de autorizare: • autorizare la citire ( consultare ); • autorizare la inserare ( adăugare ); • autorizare la actualizare ( care exclude ştergerile ); • autorizare la ştergeri ( la nivel de tuplu ). În situaţiile de mai sus nu se pune problema modificărilor la nivel de schemă a bazei de date.
  • 29. 29 Dacă se consideră și acest aspect putem vorbi de: ⚫ autorizare la nivel de index ( creare-ştergere de indecși); ⚫ autorizare la nivel de relații ( creare ); ⚫ autorizare de modificări la nivel de relații ( ştergeri sau adăugări de atribute în cadrul relațiilor); ⚫ autorizări de ștergeri ale relațiilor. Diferitele protecții pot fi indicate prin intermediul limbajului de prelucrare a datelor. Porțiunile din baza de date ce pot fi folosite de utilizator pot fi definite prin operaţii de selecţie şi proiecţie care fac invizibile alte porţiuni ale bazei de date. "Conducerea organizaţiei care este proprietara bazei de date, trebuie să ia măsuri de securitate care reduc riscul de a se pierde date sau de a se distruge informaţii. Prin pierderea datelor se poate înţelege că se pierde caracterul privat al informaţiilor, ele devin accesibile unui grup mai mare de persoane decât cel prevăzut. Nu întotdeauna << scurgerile >> de informaţii lasă urme. Nu se materializează întotdeauna în schimbări detectabile la nivelul bazei de date. Privind securitatea rețelei sunt cuprinse aspecte legale, sociale şi etice, aspecte privind controlul fizic ( paza şi posibilităţile de blocare a accesulu la terminale), aspecte de strategie ( fixarea condiţiilor de acces). Aspectele operaţionale ( modul de stabilire a parolelor ), aspecte privind controlul hard ( modul de acces hard la diferite componente ). Securitatea sistemului de operare (protejarea informaţiilor şi anularea rezultatelor intermediare pentru păstrarea secretului datelor), aspecte privind noţiunea de proprietate asupra datelor din baza de date şi altele asemănătoare. Trebuie să menţionăm aici că furturile și fraudele nu sunt neapărat legate de baza de date, ele sunt un factor de risc pentru întreaga organizaţie, gravitatea acestor fapte depinzând şi de profilul organizaţiei în cauză". [13] In Comunitatea Europeană există o preocupare serioasă legată de actualizarea legislaţiei referitoare la utilizarea intensivă a calculatoarelor. Se încearcă în principal să se adopte legi care să protejeze persoana sau organizaţia şi să ţină seama de nevoia că anumite informaţii să aibă caracter privat. Acestea să nu fie accesibile publicului larg sau nici măcar unui grup relativ restrâns, pentru că ar dăuna proprietarului informaţiilor respective. Există aici o paletă largă de domenii care lucrează cu informaţii a căror caracter privat trebuie neapărat păstrat: domeniul bancar, domeniul medical, evidenţe administrativ-financiare, domeniul producţiei în majoritatea firmelor de marcă, etc.
  • 30. 30 2.3.5. Tehnici de Firewall Firewall-ul este un software sau o utilitate hardware, proiectată în mod special pentru securizarea reţelei. Monitorizează tot traficul ce ar intra şi ar pleca din reţeaua privată. Oprind orice conexiune neautorizată. De obicei, acest software să fie considerat ca fiind un strat de protecţie extra, care ajută la păstrarea la distanţă a hackerilor şi a altor ameninţări cibernetice . "După cum recomandă experţii din informatică, să utilizăm în conjuncţie cu unul dintre aceste programe de securitate " [14]. 2.3.6. Antivirușii calculatoarelor Antivirusul este un program de calculator, conceput pentru a detecta, indica, elimina și a preveni infecțiile cibernetice.Programe care fac parte din această categorie au fost în curs de dezvoltare de-a lungul anilor, în mod continuu de învățare și se adaptează la noile provocări.Începând cu sfârșitul anilor '80, aceste programe au devenit o parte inseparabilă a milioane de calculatoare din întreaga lume.Chiar și astăzi, creatorii lor trebuie să fie rapizi pentru a reacționa la versiuni malware fără sfârșit și noi versiuni ale infecțiilor deja existente.Aproximativ 390.000 de potențiale programe periculoase intră pe web de zi cu zi.Succesul unui antivirus va conferi creatorilor de viruși, motivația de a continua căutarea pentru alte modalități de a ocoli apărarea. Acest război cybernetic pentru siguranța calculatoarelor noastre este practic fără sfârșit. Pentru că avem de a face cu aceste programe în fiecare zi, e benefic să aflăm mai multe despre ele, modul în care acestea funcționează. Afirmația << ce tipuri de antiviruși există >>? Ce vă protejează împotriva infestării cu viruși și care sunt vulnerabilitățile lor? Care sunt principalele funcții ale unui antivirus? Metodele primare de lupta împotriva virușilor sunt: A)de detectare a malware-ului de sistem, de eliminare a virusului de apărare pentru a fi capabil să detecteze fișierele sau programele rău intenționate. Software-ul trebuie să fie echipat cu un sistem de scanare puternic, care va descoperi tendințe potențial periculoase în directoare sau fișiere specifice. Desi chiar și cel mai bun scanner antivirus ar fi inutil, fără o bază de date adecvată a virusului. B)Actualizări regulate, descrierile de viruși sunt cruciale pentru a realiza potențialul său maxim. Din fericire, cele mai multe utilități antivirus permit programarea actualizării.
  • 31. 31 C)scanări ale sistemului ce pot fi programate, din timp în timp.Se poate personaliza frecvența și focalizarea acestor scanări în funcție de nevoi. Când este vorba de eliminarea infecțiilor deja detectate, cele mai multe programe se ocupă de întreaga situație în mod automat. Alte programe permit să țină fișierele în carantină, înainte de a decide dacă doriți să le eliminați sau nu.Oricum, cele mai multe programe vor afișa rezultatele de scanare și oferă statistici generale despre starea curentă a computerului, deci poți evalua mai bine situația. "De detectarea virusului și de îndepărtarea acestuia se ocupă un utilitar antivirus cunoscut. Rata de succes este, probabil, unul dintre primele aspecte la care utilizatorii acordă atenție atunci când decid să aleagă un antivirus.Potrivit utilizatorilor de calculatoare, software-ul antivirus profesional ar trebui să fie în măsură să ofere o protecție în timp real în timpul navigării online. ". [15] 2.3.7. Principalele funcții ale unui antivirus Care sunt principalele funcții ale unui antivirus? Așa cum am menționat deja, focarele primare ca utilitate permit lupta împotriva virusului sunt:de detectare a malware-ului de sistem de eliminare a virusului de apărare pentru a fi capabil să detecteze fișierele sau programele rău intenționate, software-ul trebuie să fie echipat cu un sistem de scanare puternic, care va descoperi tendințe potențial periculoase în directoare sau fișiere specifice. Desi chiar și cel mai bun scanner antivirus ar fi inutil, fără o bază de date adecvată a virusului. Regulate actualizări descrieri de viruși sunt cruciale pentru antivirus pentru a se realiza la potențialul său maxim. Din fericire, cele mai multe utilități antivirus permit programarea actualizării, astfel încât acesta este o altă intrare, deci din lista de lucruri de ţinut minte. Mai multe Scanări ale sistemului pot fi programate, de asemenea. Puteți personaliza frecvența și focalizarea acestor scanări în funcție de nevoile dumneavoastră. Aceasta înseamnă că puteți alege pentru a scana întregul sistem sau să se concentreze pe o anumită unitate, fișier, unitate de stocare externă, etc. Când să eliminăm infecţiile deja detectate, de cele mai multe programe se va ocupa întreaga situație în mod automat. Alte utilităţi pot permite să pună în carantină fișierele înainte de a decide dacă doriți să le eliminați sau nu. Oricum, cele mai multe programe vor afișa rezultatele de scanare și oferă statistici generale despre starea curentă a computerului, astfel încât ai putea evalua mai bine situația. Cu toate că de detectarea virusului și îndepărtarea
  • 32. 32 acestuia sunt aspecte cruciale ale unui utilitar antivirus cunoscut. Rata de success, de prevenire malware-ului să fie, probabil, unul dintre primele aspecte ca utilizatorii să acorde atenție atunci când decid să obțină un apărător de virus. Potrivit utilizatorilor de calculatoare, software-ul antivirus profesional ar trebui să fie în măsură să ofere o protecție în timp real în timpul navigării online. Opriți de la intrarea paginilor nesigure sau descărcare de software rău intenționat pe computer. Cele mai multe programe nu fac doar asta, dar este important să se țină cont de faptul că există numeroase moduri de scuturi de apărare ce pot fi folosite. Ulterior, vom spune mai multe despre vulnerabilitățile software-ului antivirus. Antivirus este, probabil, termenul cel mai general, pentru a defini software de combatere a virusului contemporan. Numeroase software specializate, cum ar fi: anti-spyware, malware instrumente de eliminare a firewall-uri etc. De obicei, aceste programe ca să intre în << antivirus >>pe suport umbrelă de fapt, ele sunt de multe ori integrate în ceea ce se numește o <<suită antivirus>>.Cu toate acestea, colaborarea lor ar trebui să facă un instrument unic și foarte puternic. Un proverb vechi spune că prea mulți bucătari strică supa, ce este într-adevăr adevărat pentru astfel de << apartamente >>.În afară de protecția antivirus, există și alte câteva opțiuni pe care dezvoltatorii antivirus le oferă utilizatorilor lor: Cloud Antivirus. "Această tehnologie antivirus se bazează pe un software virtual, care este instalat pe calculatorul utilizatorului și poate fi accesat numai atunci când există o conexiune de rețea disponibilă "[16].Beneficiul major la astfel de software se datorează faptului că aproape nu ocupă spațiu pe computer și nu încetinește performanțele sale în timp ce rulează scanarea, deoarece cea mai mare parte din analiză este realizată pe serverul furnizorului de antivirus la distanță.Mai mult, această tehnologie permite ca datele să fie investigate cu mai multi antivirusi și motoare de detecție malware simultan, crescând detectarea virusului și rata de eliminare. Cu fiecare scanare Online este similar cu serviciul lui Nod antivirus, deși funcționează mult mai mult ca un utilitar antivirus obișnuit. Acesta permite scanarea calculatoarelor cu capacități de performanță mai mici, alegând anumite zone sau întregul dispozitiv la un moment dat. Ar trebui să fii atent pentru că, deși există numeroase utilități antivirus false, care se presupune că oferă facilități pentru a scana computerul, dar și a instala malware suplimentar în loc.
  • 33. 33 2.3.8. Criptarea bazelor de date. Pentru securizarea sistemelor este bine să instalăm Linux pe calculatoare, sau al doilea sistem de boot_are să fie LINUX_ul. Atacurile asupra serverelor WEB de pe stațiile de lucru care ruleaza sunt de două categorii: intruziuni în scripturile C I (Commonggate Interface) și depășirea bufferilor( Buffer Overflow ).Modurile de intruziuni pe care le cunosc administratorii de rețea sunt:Compromiterea contului Root , Atacurile de tipul refuz de servicii( Denial of Services, Dos), Adrese false, Furtul sesiunii, Ascultarea pe rețea, Caii troieni, Criptanaliza și atacurile în forță brută. 2.3.9. Compromiterea contului Root Intrusul reușește să obțină privilegii de root prin folosirea uneia din următoarele abordări: " Captează parola de root pe rețea Ghicește parola de root Examinează jurnalele sistemului pentru a căuta apariții accidentale ale parolei de root. Înscenează un atac cu depășire de buffer asupra unei aplicații vulnerabile pentru a obține parola de root " (R.J. Hontanon, p.22). Este foarte greu să ascunzi parola, probabil că ar trebui, să te loghezi ca root doar de la consola ta. În loc să vă conectați ca root, pentru a realiza sarcinile ca administrator, utilizați comanda SUDO.Această comandă e folosită pentru a permite utilizatorilor să aibă privilegii de root. 2.3.10.Atacurile de tipul refuz de servicii ( Denial of Services, Dos) Atacurile de tip refuz de servicii au intrat de mult timp în atenția mass-media, datorită accesării abuzive a site-urilor web importante. Scopul unor asemenea atacuri, nu este de a fura sau de a schimba conținutul privat care se află pe server, ci de a scoate din uz un server public, pe care se află scris conținutul destinat publicului. O metodă preferată de a scoate din uz un server de Linux, este de a-l încărca cu o cantitate mare de trafic fabricat. O variantă a atacului DOS propriu-zis este Dos distribuit ( DDOS ) unde se utilizează un număr mare de surse de trafic, denumit
  • 34. 34 Fals trafic. "Exemple de atacuri DoS : Atacul teardrop: Atacatorul inundă victima cu un mare număr de pachete IP impropriu fragmentate. Atacul synflood: Atacatorul deschide pe jumătate un mare număr de conexiuni TCP, până când bufferele de rețea ale sistemului victimă obosesc în așteptarea încheierii conexiunii, devin indisponibile ". [5] Deși nu puteți face prea multe pentru protejarea serverului de Linux, împotriva unui nou atac DDOS, puteți împiedica preluarea lui fără voie, împotriva unor noi atacuri. Prin implementarea de filtre de ieșire ( egress filters ) în routerele dumneavoastră de Internet, vă puteți asigura că traficul care pleacă din rețeaua dumneavoastră, nu are o adresă sursă în afara subrețelei, care alcătuiește rețeaua dumneavoastră privată. 2.3.11. Adrese false Acesta este atacul utilizat pentru firewall-urile de filtrare a pachetelor. Aceste tipuri de filtre sunt configurate de obicei pentru a se asigura că doar adresele private- adică cele cunoscute – au permisiunea de a iniția conexiuni prin intermediul dispozitivului. Atunci este relativ ușor pentru atacatori să facă astfel încât adresele lor IP sursă să pară că ar proveni din interior. Deși pachetele de retur nu vor fi înaintate atacatorilor ( ei pretind a avea o adresă internă și acesta este locul unde va ajunge răspunsul). Atacatorii pot face multe daune trimițând pachete orbește. De fapt, scopul atacului este de obicei de a înscena o compromitere a contului root sau o depășire de buffer care permite atacatorilor să deschidă un culuoar pe care să-l utilizeze pentru a accesa mai târziu sistemul. Să combateți adresele false de IP.Trebuie să înzestrați dispozitivul de filtrare a pachetelor cu un filtru de intrare( ingress filter ).Acest lucru vă asigură că nu veți accepta pachete ce intră în interfața publică a sistemului dumneavoastră .Ele au o sursă din cadrul blocului dumneavoastră de adrese interne. Dar această apărare este în cel mai bun caz o tactică improvizată. " Soluția reală este de a evita folosirea autentificării adreselor ( filtrarea pachetelor) și a recurge în schimb la autentificare criptată, cum ar fi de exemplu SSH-ul ".[17]
  • 35. 35 2.3.12. Furtul Sesiunii În această formă specializată de adresă capcană, un hoț de sesiune TCP observă secvența de numere dintr-o conversație TCP ca să-și asume identitatea unuia dintre participanți furnizând celeilalte părți secvența de numere așteptată. Atacatorul să însceneze un atac DOS asupra părții care este imitată pentru a împiedica să continue să ia parte la conversație. Când reușește, atacatorul să emită comenzi executabile pe stația de lucru care se află la distanță ca și cum ar fi partea cea simulată. Trebuie să vă pregătiți utilizatorii să recunoască simptomele furtului unei sesiuni pentru ca ei să poată raporta aceste incidente. Cel mai adesea ei observă că una din sesiunile lor nu mai răspund în timp ce alte sesiuni care au fost în așteptare o anumită perioadă de timp și prezintă comenzi de ieșire neașteptate.Ca și în cazul adreselor capcană, soluția reală pentru amenințarea furtului de sesiune să fie utilizată o metodă de autentificare care nu se bazează pe adresele IP. 2.3.13. Ascultarea pe rețea În plus trebuie să utilizăm suportul din Linux pentru tehnologia VPN, care utilizează o puternică criptare pentru a proteja rețeaua și întreaga conversație din sistemul dumneavoastră. Una din cele mai mari dificultăți în expansiunea Internetului ca mediu global să fie natura sa publică, unde caracterul privat și securitatea unei comunicații no să fie niciodată garantate. Să fie surprinzător de ușor să ascultați un segment de rețea și să pescuiți informații confidențiale. De fapt revoluția Linux să exacerbeze această problemă deoarece chiar și utilizatorul mai naiv să poată folosi abilitatea acestui sistem de operare pentru a inspecta la întâmplare, fiecare pachet pe care îl va observa pe rețea. Nu numai că intrușii vor să capteze sarcina utilă a pachetelor de rețea în trecere, ci să capteze parole pe care le vor utiliza pentru a înscena o compromitere a contului root al unui server nevinovat. Atenție Niciodată, în nicio situație nu trebuie să permiteți ca parola de root a serverului să traverseze rețeua necriptată. " Pentru protejarea parolei de root, trebuie: ⚫ Să dezactivați conectările ca root din rețea ⚫ Să dezactivați serviciile telnet, rsh, rloghin și frp ⚫ Să utilizați doar SSH ( Secure Shell ) pentru conectările interactive ⚫ Să utilizați doar comanda secure copy( scp ) pentru a transfera fișiere din și spre server". [5] În plus trebuie să se utilizeze suportul din Linux pentru tehnologia VPN care
  • 36. 36 utilizează o puternică criptare pentru ca să protejați întreaga conversație dintre serverul de LINUX și orice altă stație de lucru cu care trebuie să schimbe informații confidențiale. 2.3.14. Turbolinux. Debian Acest distribuitor este pe piața Linux din 1992 și a avut un mare succes pe piețele asiatice și europene. Deși în Statele Unite el nu a fost adoptat pe scară atât de largă ca Red Hat și Caldera, în ultimele luni a cunoscut un mare avânt în special pe piața aplicațiilor de server de nivel înalt. Programul de lansare de noi versiuni este semnificativ mai lung decât cel de la Red Hat și Caldera, însă ei mențin o listă cu update-uri de securitate pentru fiecare versiune la http://www.turbolinux.com/security . Ei includ de asemenea pe site-ul lor FTP un subdirector separat pentru fiecare update de versiune. Această distribuție de Linux este întreținută de un grup de circa 500 de pro gramatori voluntari din toată lumea. Datorită naturii sale non profit, programul de lansare de noi versiuni pentru distribuția Debian este diferit de cel al majorității distribuitorilor focalizându-se mai curând asupra unor versiuni minore decât asupra unor update-uri importante. Aceste mici versiuni sunt adesea motivate de câteva rezolvări ale unor probleme de securitate și de obicei se situează la o distanță de 100 de zile. Spre deosebire de majoritatea distribuitorilor comerciali, Debian are o pagină specială pentru securitate informațiilor la adresa http://security.debian.or pe care o puteți utiliza în acest scop. Acesta este unul din cele mai directe site-uri ale unui distribuitor de Linux. Conținutul este bine organizat și recomandările de securitate sunt mai ușor de găsit decât cele ale altor distribuitori. În plus, pagina include link-uri la arhivele listelor de mailling ale Debian pe probleme de securitate, care se întind pe cel puțin 2 ani în urmă.
  • 37. 37 2.3.15. Înregistrarea evenimentelor de sistem prin syslog Distribuția standard de Linux, vine cu utilitarul syslog configurat și daemonul syslogt activat. Majoritatea mesajelor generice sunt direcționate către fișierul /var/log /messages, deși administratorul de sistem poate alege ca destinație orice fișier. a) var/log/messages Acesta este fișierul primar, pentru înregistrarea celor mai comune evenimente ale sistemului. b) var/log/secure. Aici sunt înregistrate eșecurile de autentificare pentru daemonii lansați în execuție. c) var/log/mailling - Daemonul sendmail este cunoscut a fi vorbăreț mai altfel decât ar fi normal.[18] 2.3.16. Criptarea cu cheie publică şi privată Cunoscută de asemenea sub numele de criptare cu cheie simetrică, criptarea cu cheie privată permite utilizatorilor să selecteze o cheie secretă care poate fi apoi utilizată pentru a genera un algoritm care să convertească anumite date ( în format text în clar) în date criptate ( text cifrat). Procesul este reversibil astfel că același utilizator, poate apoi decoda textul cifrat în textul original cu condiţia să poată reproduce cheia de codare. Cu cât mai lungă este cheia, cu atât mai dificil este pentru un atacator să decodeze textul cifrat pentru al obține pe cel original. Standardul de facto pentru criptarea cu cheie privată este Data Encryption Standard (DES ) dezvoltat de către IBM pentru a fi utilizat de către guvernul SUA în 1977. Deși în acel timp cheia sa de 56 biți a fost considerată a fi mai mult suficientă, al goritmul DES a fost spart de mai multe ori. Acest fapt a determinat Institutul Național pentru Standarde și Tehnologie ( National Institute for Standards and Technology – NIST) să coordoneze dezvoltarea standardului de criptare. generația următoare numit AES ( Advanced Encryption Standard = Standardul Avansat de Criptare) care utilizează chei de o lungime mult mai mare și este substanțial mai robust. Există mai multe aplicații de securitate în Linux care utilizează criptarea cu cheie privată, incluzând și suita de instrumente de autentificare Kerberos. Deși criptarea cu cheie privată este un mod eficace pentru a proteja anumite date, acesteia îi lipsește versalitatea necesară pentru a proteja schimburile de date între două părți, în special când aceste două părți nu se cunosc anterior. Acest fapt i-a determinat pe
  • 38. 38 Martin Hellman și Whitfield Diffie să dezvolte conceptul de criptare cu cheie publică în lucrarea lor din 1976 << Noi direcții în criptografie >>, Tranzacții IEEE în Teoria Informației. Ideea este surprinzător de simplă:Expeditorul criptează un mesaj cu o cheie publică binecunoscută a destinatarului. Numai destinatarul ( și nimeni altcineva ) poate apoi decoda mesajul în textul original. " Acest fapt asigură confidențialitatea mesajului fără ca expeditorul sau destinatarul să convină asupra unei chei private comune. Deloc surprinzător, criptarea cu cheie publică este o tehnică obișnuită pentru protejarea conținutului mesajelor de poștă electronică atunci când ele călătoresc pe Internet. Pachetul Pretty Good Privacy (PGP) din cadrul Linux și echivalentul său open-source, NU Privacy Guard ( PG ) oferă două exemple de aplicații de securitate cu cheie publică". [19] 2.3.17. Criptarea sistemului de fișiere Oricât de puternice măsuri de securitate fizică a sistemului se iau, va fi necesară pregătirea pentru momentul când un utilizator are acces la fișierele altui utilizator. Criptografia este ultima măsură de apărare. Prin criptarea unor directoare, se poate proteja caracterul privat al datelor chiar si după o intruziune reușită. Se vor descrie două moduri de criptare, bazate pe tehnologii cu cheie secretă ce utilizează al goritmi de criptare standard. Sistemul criptografic de fișiere (Criptographic File System, CFS) a fost dezvoltat de către UNIX și constituie prima integrare completă a criptării cu cheie secretă în sistemul de fișiere LINUX. Un avantaj important al CFS (Criptographic File System, Sistemul criptografic de fișiere) este suportul său atât pentru sistemul local de fișiere cât și pentru sistemele de fișiere aflate la distanță, de exemplu NFS. Acest suport protejează datele pe durata în care se află pe server și atunci când călătoresc pe rețea oriunde este partajat un punct de montare NFS. CFS suportă mai mulți algoritmi de criptare ce includ DES, 3DES. Dezavantaj important al CFS este performanța. Astfel criptarea cu algoritmul 3DES determină o întârziere considerabilă a accesului la discul respectiv, în special pentru fișierele mari. Aceasta se datorează faptului că CFS operează în spațiul utilizatorului (în afara kernelului). Totuși, rularea în spațiul utilizatorului poate fi un avantaj deoarece alte sisteme criptografice modulare de fișiere sunt oferite ca un patch pentru anumite
  • 39. 39 versiuni ale kernelului de LINUX și cel mai adesea nu se găsesc pentru ultimul kernel stabil. Utilizarea sistemul criptografic de fișiere (Criptographic File System, CFS) Există trei comenzi care suportă operarea cu pachetul CFS: cmkdir [-1][director_privat] cattach[director_privat][director_in_clar] cdetach[director_privat] pas 1. Se creiază un director care să conțină toate informațiile confidențiale: [ramon]$ cmkdir secret Comanda cere o frază cheie care este apoi folosită pentru a genera o cheie de codare. Este nevoie de această frază pentru a se accesa datele din acest director, am explicat comenzile date. În mod predefinit, CFS utilizează pentru criptare algoritmul 3DES. Acesta este vizibil mai lent decât varianta DES. Algoritmul DES s-a dovedit a fi vulnerabil la atacurile în forță brută. Dacă se criptează datele care se vor menține o perioadă de timp mai îndelungată, aceste date se vor face mai rezistente posibil la o criptanaliză. pas 2. Se atașează directorul nou creat arborelui principal CFS [ramon]$ cattach secret decrypted. "Comanda cere aceiași frază cheie care a fost furnizată când s-a creat directorul. Dacă autentificarea reușește, directorul secret va fi pus la dispoziție în clar în locația /crypt/decrypted/. După ce s-a terminat lucrul cu directorul în clar, acesta se blochează prin comanda [ramon]$ cdetach secret. Ca și în cazul oricărei criptări, este nevoie să se protejeze fraza folosită pentru criptarea datelor. Să se asigure integritatea utilitarelor CFS (cmkdir, cattach, cdetach) astfel să nu fie înlocuite cu versiuni de tip cal troian".[20] Practical Privacy Disc Driver O alternativă pentru CFS este PPDD (Practical Privacy Disc Driver). PPDD creează un driver de disc similar unui disc fizic și controlează comportamentul acestuia. Există suport pentru un singur algoritm de codare: Blowfish. Până în prezent Blowfish este destul de rezistent la multiple încercări de a-l sparge atât prin criptanaliză cât și prin atacuri în forță brută. Scopul acestui utilitar este de a oferi un dispozitiv de criptare total transparent pentru utilizatorul care poate accesa directoarele protejate de PPDD fără a fi nevoie de o procedură specială. PPDD decriptează un întreg sistem de fișiere prin intermediul unei chei derivate dintr-o
  • 40. 40 singură frază cheie și permite utilizatorilor să acceseze fișierele din cadrul sistemului de fișiere prin utilizarea permisiunilor modelului standard de LINUX. Astfel PPDD este bun pentru protejarea discului unui server împotriva citirii de către un intrus și pentru protecția mediilor de stocare care au intrat pe mâini neavenite. CFS oferă o bună granularitate pentru protecția individuală a informației de utilizator. PPDD este o metodă eficientă și transparentă pentru criptarea în masă a sistemelor de fișiere ( și a copiilor de siguranță).
  • 41. 41 Cap III. Câteva activități metodice privind Protecția datelor în rețea 3.1. Securitatea conturilor de utilizator Statisticile Biroului de securitate și infracțiuni pe computer (Computer Crime and Security Survey) din cadrul CSI/FBI (http://www. ocsi.com/prelea_000321.htm) arată an după an că marea majoritate a atacurilor reușite asupra unui sistem provin din interior. Adică utilizatori fără privilegii înfuriați sau doar plictisiți. Aceștia reușesc să obțină privilegii de root prin mijloace subversive. Chiar și atunci când atacul provine din exterior, acapararea unui cont de utilizator greșit configurat sau stagnat este unul din cele mai ușoare moduri de a forța accesul ca root. Este de asemenea importantă pentru protejarea propriilor greșeli deoarece accesul ca root poate fi un instrument puternic și periculos chiar în mâinile celor autorizați. Trebuie să acordăm o atenție specială părților din politica proprie de securitate care reglementează, crează și întreține conturile de utilizator. Recomandări pentru gestionarea conturilor de pe serverul propriu de LINUX. 3.2. Dezactivarea conturilor nefolosite Atacatorii caută conturi care nu au fost accesate de mult timp pentru a le utilize în vederea scopurilor lor infame. Acest fapt dă atacatorilor posibilitatea să se instaleze în acel cont și să-și ascundă faptele fără a fi observați sau raportați. "Majoritatea distribuțiilor de LINUX specifică condițiile în care un cont să fie dezactivat. Se recomandă dezactivarea conturilor imediat ce parola expiră. Utilizatorii au timp de o saptămână să-și schimbe parolele înainte de expirarea lor".[21] Utilitarul linuxconf de la Red Hut oferă o interfață grafică pentru specificarea acestei politici. De obicei se setează parolele să expire la patru luni iar utilizatorii au la dispoziție șapte zile pentru a-și schimba parola. Valoarea 0 pentru opțiunea Accout Expire After # Days (contul expiră după # zile) direcționează sistemul să dezactiveze contul dacă parola expiră. Valoarea predefinită -1 direcționează sistemul să nu dezactiveze niciodată contul. Dezactivare acces root pe sistemele NFS montate Să se acorde o atenție specială fișierului /etc/exports în care se declară sistemele locale de fișiere pentru care se dorește partajare prin intermediul NFS(Network File System) În mod predefinit , serverul de NFS pe majoritatea distribuțiilor de LINUX alocă identitatea de utilizator 0 (ID 0, root) unui utilizator fără privilegii, cum ar fi nobody (nimeni). "Acest comportament poate fi anulat de opțiunea no_root_squash din
  • 42. 42 fișierul /etc/exports al serverului NFS". [7]. Restricționarea utilizării contului root cu excepția cazului când este absolute necesar. Să se evite conectarea root pentru a executa o comandă administrativă și se menține conectarea root în continuare pentru a executa comenzi de nivel utilizator. Conectarea root pentru un timp îndelungat mărește expunerea la vulnerabilități: cai troieni, furt de sesiune. 3.3. Restricționarea conectării root doar la consola sistemului "Pentru a monitoriza cine se conectează root, să se configureze fișierul /etc/securetty pentru a permite accesul direct root doar la consolă. Această acțiune forțează utilizatorii de root autorizați să folosească su sau sudo pentru a obține privilegii de root permițând astfel înregistrarea ușoară a acestor evenimente. Comportamentul standard implicit al sistemului LINUX este de a permite conectările ca root doar de la cele opt console virtuale (accesibile cu tastele funcțiilor de pe tastatură) ".[22] Să se utilizeze un prompt distinct pentru utilizatorul root. Atunci când sunt active mai multe terminale în cadrul sesiunii X, este important să se spună imediat care dintre ele sunt terminale root . " Astfel se evită să se execute din greșeală o comandă de nivel de utilizator la un terminal root". [8] Promptul de root să fie suficient de distinctiv și să includă un caracter specific utilizatorului root, de exemplu caracterul diez (#) Să se utilizeze o variabilă SPATH minimă pentru contul root Un atac comun asupra contului de root este de a plasa versiuni de tip cal troian ale utilitarelor frecvent utilizate intr-un director care este inclus în variabila SPATH a contului root. Acesta este un atac foarte subtil și singurul mod de protejare împotriva lui este să se știe conținutul variabilei SPATH și conținutul directoarelor incluse în ea. Pentru a minimiza șansa de a rula un cal troian să se evite a avea directoare în variabila SPATH care pot fi scrise de alt utilizator decât root. Să se utilizeze conturi de sistem cu scop special "Un operator care pur și simplu trebuie să închidă sistemul nu are nevoie de privilegii complete de root. Acesta este scopul conturilor predefinite de LINUX". (A. Dascăl, p.58) Să se utilizeze apartenența la grupuri "Un administrator de LINUX trebuie să pună un fișier sau un director la dispoziția unui grup de membri, pentru scriere și citire. Este usor de făcut ca toată
  • 43. 43 lumea să aibă acces la aceste resurse. Să nu se facă. Mai bine să se definească alt grup. Fișierele cu permisiuni foarte mari sunt vulnerabilități care așteaptă să fie exploatate" .[8] 3.4. Securitatea bazelor de date corporatiste " Bazele de date constituie unul din componentele cele mai importante a oricărui sistem informatic mare, care păstrează și prelucrează diverse date, informații. Acestea pot fi sisteme de gestiunea documentelor și a evidenței contabile sisteme de billing și de management al conținutului CMS, sisteme de gestiunea proceselor tehnologice , la prelucrarea produselor ,etc. Deoarece bazele de date conțin toată informația valorizând despre companie, clienții săi , activitatea financiară, ele reprezintă unul din factorii critici în structura organizației, fapt care determină cerințele sporite de confidențialitate, integritate și acces la date. Riscurile care pot interveni în acest context pot apărea atât din mediul extern ( viruși, hackeri, concurenți, etc ) cât și interni ( furtul, acțiuni ale lucrătorilor necinstiți , erori și scăpări din vedere ale personalului de deservire și a utilizatorilor s.a.). De asemenea, e necesară luarea în considerație și fiabilitatea sistemelor, a GBBD-urilor, mijloacelor tehnice care se pot supune unor actori, cum ar fi: incendiile, calamități naturale, etc. Astfel, pentru a găsi soluții, inițial e necesară stabilirea punctelor precare în bazele de date".[14] 1 Limbajul SQL – un instrument puternic de interogare a datelor, însă de asemenea permite răufătorilor să efectueze spargerea sistemului. ⚫ Accesarea informației cu ajutorul deducțiilor logice, potrivirea sau spargerea parolelor, utilizatorilor bazei de date a atacurilor îndreptate spre mărirea privilegiilor în sistem; ⚫ Agregarea datelor, atacurile de tip SQL injection; ⚫ Modificarea, înlocuirea datelor, etc 2. Gestiunea controlul accesului la SGBD/BD/Server ⚫ Erori și scăpări din vedere ale personalului de deservire și a utilizatorilor. ⚫ Acțiunile lucrătorilor necinstiți, ofensați, acțiunile persoanelor străine. ⚫ Furtul fizic, distrugerea informației, etc 3. Atacul asupra informației care circulă în rețea
  • 44. 44 ⚫ Utilizarea conexiunilor existente la baza de date prin rețea, stabilite de utilizatori și autentificați ⚫ Interceptarea informației în timpul parcurgerii ei prin rețea 4. Alte tipuri de atacuri ⚫ Asupra sistemului de operare; ⚫ Blocarea accesului către date: ⚫ Supraîncărcarea buferului ⚫ Hackerii și virusurile Securitatea bazelor de date poate fi asigurată, prin intermediul aplicării unor modele care mai mult sau mai puțin corespund domeniului activității, politicii de securitate, importanței informației în organizaţie. Un model simplu ar fi compus din două elemente : ⚫ controlul accesului -- unde fiecărui utilizator sau proces informațional al sistemului, i se poate atribui un set de acțiuni permise, pe care le poate efectua, în raport cu anumite obiecte; ⚫ controlul autenticității -- realizează dacă utilizatorul sau procesul care încearcă să efectueze o acțiune sau alta este anume acela pe care îl reprezintă. Un alt model mai sofisticat este acela de multinivel al securității bazei de date, care reprezintă un instrument foarte puternic, însă aduce unele incomodități, în ușurința utilizării, productivitate, costuri, etc. În așa fel tipurile de sisteme informatice sunt clasificate, în diverse clase de importanță și, de obicei, se utilizează modelul lui Bill- Laladula, care gestionează subiecții, procesele, obiectele. Aplicarea modelelor se poate efectua fie direct în SGBD-ul /baza de date respectivă, fie în sisteme informatice aparte, proiectate și exploatate în special pentru a asigura protejarea informației. Metodologii de combaterea riscurilor și atacurilor asupra bazei de date le putem clasifica în linii mari în 3 categorii: 1. Securitatea bazei de date și a SGBD – securitatea DB, auditul vulnerabilităților, monitorizarea activităților, controlul accesului. 2. Auditul vulnerabilităților rețelei și a sistemului de operare – mecanisme bazate pe scanarea rețelei și exteriorul DB-ului. Rezultatele sunt examinări, rapoarte, determinarea punctelor slabe. 3. Criptarea bazei de date – care include un sistem de management al cheilor ce suportă variante de algoritmi de criptare.De asemenea am putea impărți metodele și după modul de aplicare.
  • 45. 45 Tehnice: 1. Amplasarea serverelor de BD în segmente de rețea protejate și securizarea lor. 2. Back_up. Aplicarea tehnologiilor de Cluster Systems. Tirajarea datelor. 3. Utilizarea metodelor eficiente de autentificare ( server/OS autentification, parole cu un număr suficient de simboluri, certificate, chei criptate, dispozitive-chei, etc ). Administrative: 1. Standardizarea cu ISO 17799, ISO 27001 ( Certificarea oficială a sistemelor de securitate informațională ). 2. Urmărirea transmiterii informației prin canalele de comunicație. Înregistrarea evenimentelor desfășurate în sistemul informatic. Auditul cererilor către SGBD. 3.Înregistrarea activităților utilizatorilor –permite depistarea în unele cazuri potențialele acțiuni de atac asupra bazei de date sau de a investiga încălcările comise anterior. 4. Determinarea cazurilor când informația nu este utilizată corect. 5. Delimitarea mediilor de administrare și dezvoltare. 6. Excluderea cazurilor de integrare a diverselor servicii corporative pe serverul unde este instalat SGBD_ul. 7. Organizarea unei politici eficiente de acordare a drepturilor pentru diverse grupuri de utilizatori. După standardele internaționale se disting 3 categorii de roluri: Proprietarul informației; răspunzătorul de securitatea informației; cel ce utilizează informația Software. 1. Configurarea mecanismelor proprii de protecție a bazelor de date ( drepturi de access, privilegiile). Avantaje: precizia, acoperirea totală ( a scopurilor ). Dezavantaje: viteză, complexitate ( dimensiuni ) 2. În etapa de proiectare să se ia în considerație de către proiectanți/ programatori evitarea afișării mesajelor de eroare clienților într-un mod care ar putea divulga unele detalii despre sistem, scheme, etc . 3. Cifrarea bazei de date. Avantaje: un sistem sporit de securitate; Dezavantaje: în caz că se defectează serverul sau cade sistemul, e greu de
  • 46. 46 restabilit dacă are nevoie de o aplicație. În plus care va gestiona cheile, viteza, indexarea. 4. Analiza protecției bazelor de date cu ajutorul unor instrumente, aplicații sisteme de audit și control de acces care pot permite: analiza evenimentelor critice, modelarea acțiunilor răufăcătorilor externi, analiza optimizărilor efectuate în SGBD și OS, identificarea utilizatorilor necunoscuți, scanarea centralizată, viziune asupra securității rețelei dintr-o parte etc. Se pot răspunde la întrebări de tipul: Ce baze de date sunt în rețea? Cât de corect este configurat SGBD-ul? E posibil atacul SGBD-ului dumneavoastră prin rețea? Corespunde configurarea SGBD-ului dumneavoastră cu politica de securitate? Care e rezultatul așteptării la SGBD a diverselor mecanisme de protecție? Etc. Dezavantajele acestor tipuri de sisteme sunt: viteza, costurile pentru aplicații, computatoare, necoerența informației. " Prin urmare, e greu de zis că există 100% măsuri de protecție a informației din bazele de date, cel puțin se observă o tendință către acesta. La un moment diversitatea activităților organizațiilor, structura rețelelor și a fluxurilor informaționale, nu permite apariția unor metode universale de a soluționa securitatea bazelor de date." [22] 3.5. Revizia parolelor Prin examinarea fișierelor de înregistrare și prin asigurarea integrității fișierelor se poate întări securitatea serverului, însă este ușor să cadă pradă sindromului << tare la exterior și moale la interior >>.Cea mai slabă verigă în serverele de LINUX o constituie utilizatorii și mai ales alegerea parolelor lor. Deși politica de securitate trebuie să includă o secțiune ce prezintă proprietățile unei bune parole, trebuie să se ia o atitudine activă față de securitatea parolelor și să se realizeze periodic revizii ale parolelor tuturor utilizatorilor.Ca în orice sistem Unix, parolele în LINUX sunt stocate ca rezultat al unei criptări DES cu o singură trecere asupra parolei originale în clar (unele sisteme LINUX suportă și criptare MD5 pentru protecția parolelor). Acest lucru înseamnă că parola efectivă niciodată nu este stocată în clar. Oricând un utilizator încearcă să se conecteze în sistem, programul login criptează parola introdusă și compară rezultatul cu cel găsit în fișierul /etc/passwd (sau /etc/shadow). Doar dacă cele două parole sunt identice utilizatorului îi este permis accesul la sistem. Există mai multe instrumente de revizie a parolelor pentru LINUX. Aceste instrumente au ca
  • 47. 47 intrare un fișier de parole criptate și urmăresc să ghicească parola fiecărui utilizator înscenând un atac de dicționar unde un anumit număr de cuvinte utilizate frecvent sunt criptate unul câte unul cu algoritmul DES și rezultatele sunt comparate cu intrările din fișierul /etc/passwd. Dacă se găsește vreo identitate, numele de utilizator este înregistrat și inclus în raportul destinat administratorului de securitate . 3.6. Securitatea serverului syslog "Modelul LINUX este unul în care serviciile pot transcende cu ușurință serverele fizice și facilitate syslog nu face excepție. Atunci când în mesajele de urgență ale kernerului se specifică acțiunea @loghost acest fapt implică existența unui sistem denumit (eventual desemnat printr-un alias) loghost care ascultă cererile syslog sosite la portul UDP 514. Deși această facilitate face un mecanism de înregistrare mai robust, ea de asemenea introduce o vulnerabilitate cunoscută în care atacatorii pot ținti portul UDP 514 trimițând fișiere foarte mari acestui serviciu pentru a umple discurile și a scoate serverul din funcțiune. Acest fapt poate fi urmat de un atac nedetectabil asupra serverelor ale căror mesaje erau înregistrate de computerul loghost. Dacă se utilizează servere syslogd la distanță, se recomandă să se ia cel puțin una dintre următoarele precauții: ⚫ Să se protejeze accesul la portul UDP 514 și numai la serverele autorizate să se permită scrierea (<<Firewall-uri pentru stratul de rețea>>). ⚫ Să se conecteze serverul syslogd aflat la distanță într-un segment dedicat de rețea care este exclusive pentru utilizarea sa (de exemplu o rețea de management 10.0.0/24) ⚫ Să se utilizeze o partiție dedicată pentru a scrie mesajele syslogd de la distanță. Această partiție se poate umple completa fără nici un fel de efect advers asupra sistemului. (Să se rețină că atunci când fișierele de înregistrare se umplu, sistemul nu mai este util). Recomandare: Pentru a se permite serverului syslogd aflat la distanță să accepte mesaje de la alte mașini, să se utilizeze flag-ul –r atunci când se invocă syslog .[23]
  • 48. 48 3.7.Înregistrarea evenimentelor de sistem prin syslog Utilitarul syslog permite administratorului de sistem să estioneze și să configureze dintr-o locație centrală fișierele de înregistrare generate de diverse utilitare de sistem și aplicații. Distribuția standard de LINUX vine cu utilitarul syslog configurat și daemonul syslogd activ în momentul pornirii. În fișierul /etc/syslog.conf administratorul de sistem specifică mesajele pe care le dorește înregistrate iar aplicația direcționează mesajul către fișierul de înregistrare adecvat. Majoritatea mesajelor generice sunt direcționate către fișierul /var/log/messages, deși administratorul de sistem poate alege ca destinație orice fișier. În general LINUX utilizează următoarele fișiere pentru a înregistra în ele mesajele: 1) "Var/log/messages Acesta este fișierul primar de înregistrare, utilizat pentru înregistrarea celor mai comune evenimente ale sistemului. 2) Var/log /secure În acest fișier sunt înregistrate eșecurile de autentificare pentru daemonii lansați în execuție din /etc/inetd.conf. 3) Var/log/maillog Daemonul sendmail este cunoscut a fi vorbăreț (și adesea foarte ocupat) astfel că este normal să-i fie dedicat acest fișier de înregistrare separat pentru a păstra urma operațiunilor de livrare a mesajelor de poștă electronică. 4) Var/log/spooler Acesta este fișierul în care își înregistrează mesaje alți daemoni cum ar fi UUCP și News (NNTP). 5) Var/log/bootlog În acest fișier sunt înregistrate de obicei mesajele de boot apărute în timpul pornirii sistemului ".[24] Aceste cinci fișiere de înregistrare sunt automat rotite de sistem prin intermediul scriptului /etc/logrotate.d/syslo . Rotirea înseamnă în esență redenumirea fișierului de înregistrate curent cu ceva de genul logfile.1 și crearea unui fișier nou (gol) denumit logfile pentru a înregistra doar acele evenimente care au avut loc începând cu ultima rotație. La rotația următoare, fișierul logfile.1 este redenumit logfile.2 iar fișierul logfile.1 (dacă păstrați doar 10 fișiere de înregistrare) este șters.
  • 49. 49 3.8. Poșta electronică Securitatea aplicațiilor examinează aplicații de poștă electronică, instalarea, configurarea și impactul lor asupra securității generale a serverului. Traficul pe WORLD WIDE WEB (HTTP) a crescut mai mult decât în cazul oricărui alt protocol din istoria recentă a Internetului, pachetele de poștă electronică (SMTP) depășesc ca număr orice alt protocol utilizat astăzi . O dată cu recentele hotărâri legislative în favoarea valabilității semnăturilor electronice, poșta electronică va avea o creștere mai mare pe măsură ce companiile vor utiliza Internetul pentru distribuția și semnarea documentelor cu valoare legală și a materialelor adiacente. Poșta electronică este una din aplicațiile cel mai greu de securizat datorită naturii publice și răspândite a acestui serviciu. Serverele de poșta electronică trebuie adesea să manipuleze mesaje de mărimi, origini și compoziții foarte diferite. Poșta electronică este partea serverului căreia i se cuvine zilnic atenție deosebită deoarece este aplicația care experimentează cea mai mare cantitate de trafic. În continuare se vor explora trei agenții de transport de poșta electronică populare (Mail Transport Agents, MTA) : Sendmail, Qmail și Postfix și se vor descrie două tipuri de protocoale de accesare a poștei electronice: Post Office Protocol v.3 (POP3) și Internet Mail Access Protocol (IMAP). Sendmail a fost standardul de facto Unix pentru agenții de transport ai poștei electronice pentru Internet chiar de la apariția primei versiuni Berkeley Unix pentru TCP/IP în 1984. Agentul Sendmail este utilizat și astăzi, alimentat de un grup bine organizat de dezvoltatori care alcătuiesc Consorțiul Sendmail (Sendmail Consortium, www.sendmail.org). Primele versiuni de Sendmail au fost sufficient de puternice pentru a face față sarcinilor extrem de grele, dar ele nu au fost proiectate cu accentual pe securitate deoarece Internetul nu era mediul foarte prezent și riscant ca în prezent. Începând cu versiunea 8.9 dezvoltatorii Sendmail au adoptat o poziție mai defensivă. În lumina creșterii incidenței de descoperire a punctelor slabe de securitate, majoritatea alimentate de popularitatea sa în creștere. S-a obținut o distribuție mult mai sigură pentru modul în care este protejată împotriva configurărilor greșite care pot duce la defecte de securitate. Versiunile 8.10 și 8.11 de Sendmail au făcut un pas mai departe prin implementarea unei apărări multilaterale împotriva mesajelor comerciale nesolicitate numite spam. Versiunea Sendmail 8.11 a fost prima versiune care a încorporat suport pentru autentificarea SMTP.