Documente Academic
Documente Profesional
Documente Cultură
Confidenţialitatea
1
RFC 2828 (Glosarul de securitate Internet) defineşte informaţia ca „fapte şi idei ce pot fi reprezentate
(codificate) sub diverse forme de date” iar datele ca „informaţii într-o reprezentare fizică specifică, de regulă o secvenţă
de simboluri ce au semnificaţie; în special o reprezentare a informaţiei care pot fi procesate sau produse de un
calculator”. Literatura din domeniul securităţii nu face de obicei o astfel de distincţie.
1
Securitatea informaţiei – Componente de bază
scramble) datele pentru a le face de neînţeles. O cheie criptografică controlează accesul la datele
neamestecate, însă cheia criptografică în sine devine un alt element ce trebuie protejat.
Accesul ilicit la informaţie poate fi împiedicat şi prin alte mecanisme dependente de sistem
(de exemplu sistemul de operare nu permite accesul unui utilizator la un fişier). Spre deosebire de
datele criptate, datele protejate doar prin astfel de metode pot fi accesate în cazul în care
mecanismele eşuează sau sunt ocolite. Astfel avantajul oferit este însoţit de un dezavantaj.
Controlul poate proteja secretul unor cantităţi mari de date, cu efort minim de calcul în raport cu
criptografia, însă dacă eşuează sau este eludat, datele devin imediat vizibile.
Confidenţialitatea se aplică şi în cazul existenţei datelor, care uneori este mai relevantă
decât datele în sine. Spre exemplu numărul exact al persoanelor care nu au încredere într-un om
politic poate fi mai puţin important decât cunoaşterea dacă sondajul a fost efectuat de colectivul de
campanie al respectivului om politic sau de altcineva. Mecanismele de control al accesului ascund
uneori simpla existenţă a datelor, ca nu cumva existenţa în sine să dezvăluie informaţii care ar
trebui să fie protejate.
Ascunderea resurselor este un alt aspect important al confidenţialităţii. De multe ori siturile
doresc să-şi ascundă configuraţia, precum şi sistemele pe care le folosesc; organizaţiile pot dori ca
alţii să nu cunoască ce echipamente specifice folosesc (pentru că ar putea fi folosite fără autorizaţie
sau în moduri nepotrivite), sau o companie ce închiriază diverse servicii de la un furnizor îşi poate
dori ca alţii să nu ştie ce resurse se utilizează. Mecanismele de control al accesului asigură şi astfel
de capabilităţi.
Toate mecanismele care impun confidenţialitatea necesită servicii suport din partea
sistemului. Se porneşte de la ipoteza că serviciile de securitate se pot baza pe nucleul sistemului de
operare şi alţi agenţi pentru a furniza datele corecte. Aceste ipoteze, precum şi încrederea stau la
baza mecanismelor de confidenţialitate.
2
Securitatea informaţiei – Componente de bază
Integritatea
Integritatea se referă la încrederea datelor sau resurselor şi aceasta are de regulă ca obiectiv
prevenirea modificări necorespunzătoare sau neautorizate a datelor. Integritatea include integritatea
datelor (conţinutul informaţiei) şi integritatea originii (sursa datelor, numită adesea autentificare).
Sursa informaţiilor poate fi caracterizată prin acurateţe, credibilitate şi încrederea în rândul
indivizilor. Credibilitatea ca aspect al integrităţii are un rol central în funcţionarea corespunzătoare
a sistemelor sigure.
Spre exemplu, un ziar poate publica o ştire obţinută din anumite scurgeri de informaţii de la
„Palatul Cotroceni” pe care însă o atribuie unei surse greşite. Informaţia este publicată exact aşa
cum a fost primită (conservând integritatea datelor), însă sursa nu este corectă (integritatea originii
este alterată).
analiza evenimentele din sistem (acţiuni ale utilizatorilor sau sistemului) pentru a detecta probleme
sau (mai frecvent), pot analiza datele în sine pentru a vedea dacă constrângerile necesare sau
aşteptate mai sunt valabile. Mecanismele pot raporta cauza reală a încălcării integrităţii (o anumită
secţiune dintr-un fişier a fost modificată), sau pot raporta pur şi simplu că fişierul a fost corupt.
Lucrul cu integritatea este foarte diferit de lucrul cu confidenţialitatea. În cazul
confidenţialităţii, datele sunt fie compromise fie nu. Integritatea însă include atât corectitudinea cât
şi credibilitatea datelor. Integritatea datelor poate fi afectată de originea datelor (cum şi de la cine au
fost obţinute), cât de bine au fost protejate datele înainte de a ajunge la gazda curentă şi cât de bine
sunt protejate datele pe gazda curentă. Astfel, evaluarea integrităţii este adesea foarte dificilă,
deoarece se bazează pe presupuneri despre sursa datelor şi despre încrederea în acea sursă.
Disponibilitatea
Disponibilitatea se referă la capacitatea de a utiliza informaţiile sau resursele dorite.
Disponibilitatea este un aspect important al fiabilităţii, precum şi al proiectării sistemelor, deoarece
un sistem indisponibil este cel puţin la fel de rău ca un sistem inexistent. Aspectul disponibilităţii
care este relevant pentru securitate este faptul că cineva poate bloca în mod deliberat accesul la date
sau la un serviciu făcându-l indisponibil. În proiectarea sistemelor se presupune, de obicei, un
anumit model statistic pentru a analiza profilului preconizat de utilizare, precum şi mecanisme de a
asigurare a disponibilităţii atâta timp cât modelul statistic rămâne valabil. Este posibil însă ca
profilul de utilizare să fie manipulat (sau parametrii ce controlează utilizarea, cum ar fi traficul din
reţea), astfel că ipotezele din modelul statistic nu mai sunt valabile. Aceasta înseamnă că
mecanismele pentru păstrarea disponibilităţii resurselor sau datelor nu mai funcţionează în mediul
pentru care au fost proiectate. Ca urmare, acestea pot adesea eşua.
4
Securitatea informaţiei – Componente de bază
Să presupunem că între două situri conectivitatea este asigurată prin intermediul unei
legături radio. Rata efectivă de transfer este variabilă şi depinde de caracteristicile de propagare
actuale pe canalul radio respectiv, care a fost proiectat folosind un model statistic. Tudor lansează
un atac de refuzare a serviciului folosind un dispozitiv de bruiere. Receptorul sesizează o scădere a
raportului semnal-zgomot însă atribuie acest fapt condiţiilor atmosferice nefavorabile din ziua
respectivă, condiţii ce care au generat disfuncţionalităţi şi în trecut ele fiind luate în calcul la
proiectarea sistemului.
Ameninţări
O ameninţare reprezintă o încălcare a securităţii. Pentru a fi considerată o ameninţare nu este
necesar ca încălcarea să aibă loc efectiv. Faptul că încălcarea poate să apară impune ca acţiunile
care o cauzează să fie preîntâmpinate. Aceste acţiuni sunt denumite atacuri. Cei care execută astfel
de acţiuni, sau le cauzează, sunt denumiţi atacatori sau intruşi.
- uzurpare (eng. usurpation) sau controlul neautorizat al unei părţi din sistem.
5
Securitatea informaţiei – Componente de bază
Aceste patru clase cuprind multe ameninţări comune. În continuare vom descrie câteva
dintre ele.
Deghizarea (eng. Masquerading, spoofing) , întruchiparea unei entităţi în alta, este atât o
formă de înşelăciune cât şi de uzurpare. Atacatorul ademeneşte o victimă să creadă că entitatea cu
care comunica este o entitate diferita. De exemplu, dacă un utilizator încearcă să se conecteze la un
calculator pe Internet, dar în schimb ajunge la un alt computer, care pretinde a fi cel dorit,
utilizatorul a fost tras pe sfoară. În mod similar, dacă un utilizator încearcă să citească un fişier, dar
un atacator a aranjat astfel încât utilizatorului să i se furnizeze un alt fişier, a avut loc o altă
înşelătorie. Acest atac poate fi pasiv (utilizatorul nu încearcă să autentifice destinatarul, ci doar îl
accesează), însă de cele mai multe ori este un atac activ (atacatorul deghizat furnizează răspunsuri
prin care induce în eroare utilizatorul cu privire la identitatea sa). Deşi este în primul rând o formă
de înşelăciune, deghizarea este adesea folosită pentru a uzurpa control unui sistem de către un
atacator care pretinde a fi un administrator sau operator autorizat. Serviciile de integritate (numite
"servicii de autentificare", în acest context) încearcă să contracareze această ameninţare.
6
Securitatea informaţiei – Componente de bază
Unele forme de deghizare sunt permise. Delegarea are loc atunci când o entitate autorizează
o a doua entitate să îndeplinească funcţii în numele său. Deosebirea între delegare şi deghizare este
importantă. În cazul în care Alina îi deleagă lui Tudor autoritatea de a acţiona în numele ei, atunci
Alina îi dă lui Tudor permisiunea de a efectua acţiuni specifice, ca şi cum le-ar îndeplini ea însăşi.
Toate părţile sunt conştienţi de delegare. Tudor nu va pretinde a fie Alina, ci mai degrabă, va spune,
"Eu sunt Tudor şi am autoritatea de a face acest lucru în numele Alinei." Dacă i se va se solicită,
Alina va verifica acest lucru. Pe de altă parte, în cazul deghizării, Tudor va pretinde a fie Alina. Nici
o altă parte (cu atât mai puţin Alina) nu va fi conştientă de deghizare, iar Tudor va spune, "Eu sunt
Alina." Dacă cineva descoperă că a interacţionat cu Tudor şi va întreba pe Alina despre acest lucru,
ea va nega faptul că ea l-a autorizat pe Tudor să acţioneze în numele ei. În termeni de securitate,
deghizarea este o încălcare a securităţii, în timp ce delegarea nu este.
Repudierea originii, o falsă negare a faptului că o entitate a trimis (sau creat) ceva, este o
formă de înşelăciune. Spre exemplu, să presupunem că un client trimite o scrisoare unui furnizor
prin care este de acord să plătească o sumă mare de bani pentru un produs. Furnizor livrează
produsul şi apoi solicită plata. Clientul contestă că ar fi comandat produsul şi conform legii are
dreptul să păstreze marfa nesolicitată, fără a o achita. Clientul a repudiat originea scrisorii. În cazul
în care vânzătorul nu poate dovedi că scrisoarea a venit de la client, atacul reuşeşte. O variantă a
acestui atac este negarea de către un utilizator care a creat informaţii sau entităţi specifice, cum ar fi
fişierele. Mecanisme de integritate încearcă să facă faţă acestor ameninţări.
Infirmarea primirii, o falsă negare a faptului că o entitate a primit unele informaţii sau un
mesaj, este o formă de înşelăciune. Să presupunem că un client comandă un produs scump, însă
vânzătorul solicită plata înainte de expediere. Clientul achită, iar vânzătorul livrează produsul.
Clientul îl întreabă pe vânzător când va primi produsul. În cazul în care clientul a primit deja
produsul, atunci întrebarea constituie o infirmare a primirii. Furnizorul se poate apăra împotriva
acestui atac doar dacă poate dovedi că acel client, în pofida infirmărilor sale, a primit produsul.
Mecanismele de integritate şi disponibilitatea protejează împotriva acestor atacuri.
7
Securitatea informaţiei – Componente de bază
Refuzul serviciului, o inhibare pe termen lung a serviciului, este o formă de uzurpare, deşi
este adesea utilizat împreună cu alte mecanisme pentru a înşela. Atacatorul împiedică furnizarea
unui serviciu de către un server. Refuzul poate să apară la sursă (prin împiedicarea serverul să
obţină resursele necesare pentru a îndeplini funcţia), la destinaţie (prin blocarea comunicaţiilor de la
server), sau de-a lungul caii intermediare (prin înlăturarea mesajelor clientului, serverului sau
ambilor). Refuzul serviciului reprezintă practic aceeaşi ameninţare ca şi întârzierea infinită.
Mecanismele de disponibilitate pot contracara această ameninţare.
Refuzul serviciului sau întârzierea poate rezulta din atacuri directe sau alte probleme fără
legătură cu securitatea. În cazul în care întârzierea sau refuzul serviciului compromit securitatea
sistemului, sau sunt parte dintr-o succesiune de evenimente care duc la compromiterea unui sistem,
atunci pot fi privite ca o încercare de încălcare a securităţii sistemului.
Malware este un termen general utilizat pentru a desemna forme de cod programat sau soft
ostil, intrus sau enervant. Malware este de fapt un acronim, provenit din contopirea cuvintelor din
limba engleză malicious software, ce reprezintă un cod programat (cod, script, conţinut activ sau alt
soft) proiectat pentru a distruge sau împiedica operarea, obţinerea de informaţii care duc la
încălcarea intimităţii sau exploatare, obţinerea accesului neautorizat la resursele sistemului sau alte
comportamente abuzive.
Spyware-ul (termen provenit din alăturarea cuvintelor din limba engleză spy=a spiona şi
software) reprezintă un tip de malware care poate fi instalat pe calculatoare şi care colectează
8
Securitatea informaţiei – Componente de bază
informaţii despre utilizatori fără ştirea acestora. Prezenţa spyware-ului este de regulă ascunsă
utilizatorului, fiind dificil de detectat. De obicei spyware-ul este instalat în secret pe calculatorul
personal al utilizatorului. Uneori însă spyware-uri cum ar fi înregistratoare de taste (eng. keylogger)
sunt instalate de proprietarul unui calculator partajat public/dintr-o corporaţie în scopul
monitorizării secrete a altor utilizatori.
Staţia gazdă compromisă poate fi înrolată într-o reţea de mii de dispozitive compromise,
cunoscute sub denumirea colectivă de botnet, controlată şi mânuită de atacatori în scopul
distribuirii de mesaje spam sau atacuri de tip denial-of-service distribuite.
Cea mai mare parte a malware-ului din ziua de azi se reproduce singur, asemenea
microorganismelor numite viruşi: după ce infectează o gazdă va căuta căi de intrare în alte gazde
din Internet, iar din noile gazde infectate vor căuta intrarea în şi mai multe gazde. Spre exemplu,
numărul de dispozitive infectate în 2003 de viermele Saphire/Slammer s-a dublat la fiecare 8,5
secunde în primele minute de răbufnire, infectând mai mult de 90% din gazdele vulnerabile în 10
minute [Moore 2003]. Malware-ul se poate răspândi sunt forma unui virus, vierme sau cal troian
[Skoudis 2004].
Un cal troian este un malware care reprezintă o componentă ascunsă a unui program
folositor.
Structura unui virus. Un virus poate să preceadă sau să succeadă codul binar (executabil) al
unui program, sau poate fi înglobat sub alte forme. Esenţa acestui mod de funcţionare este că
programul executabil, odată invocat, va executa mai întâi codul virusului şi abia după codul original
al programului. O descriere generală a structurii unui virus este prezentată mai jos. În acest caz,
codul virusului V precede programul infectat, şi se presupune că punctul de intrare în program este
reprezentat de prima linie a programului.
Program V :=
{goto main;
12345678;
9
Securitatea informaţiei – Componente de bază
Subrutină infectează-executabil :=
{loop:
fisier := alege-aleator-fisier-executabil;
If (prima-linie-din-fisier = 12345678)
then goto loop
else adauga V la fisier;
}
subrutina distruge :=
{efectueaza diverse distrugeri}
subrutina declansare-conditionata : =
{returneaza adevarat daca se indeplineste o conditie}
main: program-principal :=
{infecteaza-executabil;
if declansare-conditionata then distruge;
goto next;}
next:
}
Programul infectat începe cu codul virusului şi funcţionează astfel. Prima linie de cod
reprezintă un salt la programul virus principal. A doua linie este un reper special utilizat de virus
pentru a determina dacă un potenţial program victimă a fost infectat sau nu cu acest virus. Atunci
când programul este invocat se transferă imediat controlul la programul virus principal. Programul
virus poate mai întâi căuta executabile neinfectate pe care să le infecteze. Apoi virusul poate efectua
diverse acţiuni distructive. Aceste acţiuni pot fi efectuate de fiecare dată când este invocat
programul sau pot fi o bomba logică care se declanşează doar în anumite condiţii. În final virusul
transferă controlul programului legitim. Dacă fază de infectare a programului este suficient de
rapidă, utilizatorul nu va sesiza diferenţe între executarea unui program infectat şi a unuia
neinfectat.
Un virus ca cel descris mai sus poate fi detectat cu uşurinţă deoarece versiunea de program
infectat este mai lungă decât cea neafectată. Una din metodele de contracarare a metodei de
10
Securitatea informaţiei – Componente de bază
detectare a virusului este compresia executabilului de către virus pentru ca versiunile să aibă
lungime identică. Mai jos este prezentată în termeni generali metoda compresiei, liniile importante
fiind numerotate.
Program CV :=
{goto main;
12345678;
Subrutină infectează-executabil :=
{loop:
fisier := alege-aleator-fisier-executabil;
if (prima-linie-din-fisier = 12345678)
then goto loop
else
(1) {comprima-fisier;
(2) adauga V la fisier;}
main: program-principal :=
{infecteaza-executabil;
(3) decomprima restul-fisierului;
(4) executa fisier-decomprimat;
}
Considerăm că programul P1 este infectat cu virusul CV. Atunci când acest program este
invocat, acesta transferă controlul către virus, care efectuează următorii paşi:
In acest exemplu virusul nu face decât să infecteze alte executabile, însă ar putea foarte bine
să includă şi o bombă logică.
11
Securitatea informaţiei – Componente de bază
Viermii (ca de exemplu viermele Slammer) sunt malware-uri care pot intra într-un dispozitiv
fără o interacţiune explicită cu utilizatorul. Spre exemplu utilizatorul poate rula o aplicaţie de reţea
vulnerabilă spre care atacatorul poate trimite malware-ul. În unele cazuri, fără intervenţia
utilizatorului, aplicaţia poate accepta şi rula malware-ul din Internet creând un vierme. Viermele din
gazda recent infectată poate scana Internet-ul, căutând alte gazde ce rulează aceeaşi aplicaţie de
reţea vulnerabilă. Atunci când găseşte o altă gazdă vulnerabilă, viermele poate trimite propria copie
acestei gazde.
Analiza atacurilor recente cu viermi arată că viteza de propagare şi numărul total de gazde
infectate depind de o serie de factori cum ar fi modulul de propagare, vulnerabilitatea sau
vulnerabilităţile exploatate şi gradul de similaritate al atacurilor precedente. Un atac ce reprezintă o
variaţie a unui atac precedent poate fi contracarat mult mai uşor decât un atac nou.
Figura 1-1 prezintă dinamica pentru un set tipic de parametri. Propagarea viermilor are loc
în trei faze. În faza iniţială numărul de gazde infectate creşte exponenţial. Pentru a vă convinge, să
considerăm cazul simplificat în care un vierme este lansat de pe o singură gazdă şi infectează două
gazde din apropiere (start lent). Fiecare din aceste gazde infectează alte două gazde şi aşa mai
departe. Acest lucru duce la o creştere exponenţială. După o vreme, infectarea de noi gazde risipeşte
timp datorită atacării unor gazde deja infectate, reducând rata de infectare. În această fază
intermediară creşterea este aproximativ liniară însă rata de infectare este rapidă. După ce au fost
infectate cele mai vulnerabile gazde, atacul trece într-o faza de terminare lentă, viermele căutând
gazdele rămase care sunt dificil de identificat. Pentru a asigura securitatea reţelei, obiectivul este
contracararea atacului în faza de start lent, atunci când există puţine gazde infectate.
12
Securitatea informaţiei – Componente de bază
Fază de
Număr de gazde infectate
încheiere
lentă
Fază de
Fază de răspândire
start lent
rapidă
Timp t (minute)
Polimorfism: fiecare copie a viermelui dispune de cod nou generat dinamic folosind
instrucţiuni echivalente funcţional şi tehnici de criptare. Prin acest comportament, adoptat de la
viruşi, viermii pot eluda detectarea, filtrele şi analiza în timp real.
Vehicule de transport: viermii sunt ideali pentru răspândirea altor instrumente de atac
distribuit cum ar fi boţii de tip DoS distribuit deoarece pot compromite rapid un număr mare de
sisteme.
Multiplatformă: viermii noi nu sunt limitaţi doar la gazdele ce rulează Windows ci pot ataca
o varietate de platforme, inclusiv varietăţile de Unix.
Multi-exploit: viermii noi pot penetra gazdele prin mai multe căi folosind exploit-uri la
server Web, navigatoare, e-mail, partajare de fişiere şi alte aplicaţii de reţea.
13
Securitatea informaţiei – Componente de bază
Explot-ul zilei zero: unii viermi beneficiază la maxim de elementul surpriză şi răspândire,
exploatând o vulnerabilitate care este descoperită de comunitate doar atunci când este lansat
viermele.
Comportamentul intruşilor
Tehnicile şi tiparele de comportament ale intruşilor se modifică permanent pentru a exploata
slăbiciunile nou descoperite şi pentru a eluda detecţia şi contramăsurile. Cu toate acestea intruşi
urmează de regulă o serie de tipare de comportament recunoscute ce diferă de cele ale utilizatorilor
obişnuiţi.
Hacker-i. Aceştia acţionează pentru a obţine senzaţii tari sau pentru a obţine o imagine
favorabilă, o poziţie avantajoasă, un status înalt în comunitate. În comunitatea hacker-ilor statusul
este determinat de nivelul de competenţă. Un exemplu de operare a unui hacker este prezentat în
Tabelul 1-1.
14
Securitatea informaţiei – Componente de bază
Atacuri din interior. Atacurile efectuate din interior sunt cel mai greu de detectat şi prevenit,
fiind efectuate în cea mai mare parte a cazurilor de angajaţi concediaţi care vor să se răzbune.
15