Facultatea de electronica, telecomunicatii si tehnologia informatiei


Dar inainte am trecut in revista principalele 10 amenintari informatice in Romania, la ora actuala



Yüklə 318,29 Kb.
səhifə3/4
tarix28.10.2017
ölçüsü318,29 Kb.
#18495
1   2   3   4

Dar inainte am trecut in revista principalele 10 amenintari informatice in Romania, la ora actuala.


Peisajul malware din Romania este dominat de viermele Win32.Worm.Downadup.Gen cu 10.24% si de Trojan.Autorun.Inf, doua amenintari informatice care isi mentin pozitia de lider in topurile BitDefender de mai bine de un an.
Daca familia Downadup are aproximativ 14 procente din totalul infectiilor din Romania, clanul Autorun este prezent in top cu nu mai putin de trei membri – Trojan.Autorun.INF.Gen, Trojan.Autorun.AET si Worm.Autorun.VHG - clasati pe locurile 2, 3 si respectiv 10.

Locul 4 - cu 4.48% din numarul infectiilor din Romania - este ocupat de Win32.Sality.OG, un virus polimorf care se ataseaza de fisierele .exe si .scr. Un alt reprezentant al acestei familii este si Win32.Sality.3, clasat pe locul 7 cu 2.64% din numarul total de infectii. Acesti virusi sunt protejati de un rootkit care le ascunde prezenta pe calculatorul infectat si, in acelasi timp, incearca sa blocheze antivirusul instalat pe sistem. Pentru a doua luna consecutiv in topul celor mai importante amenintari informatice, Trojan.Crack.I se afla pe locul 5, cu 3.55% din totalul infectiilor inregistrate in Romania. Acest troian vine deghizat sub forma unui „crack”, o aplicatie pentru eliminarea protectiei comerciale a produselor software, care va incerca sa instaleze un backdoor si sa colecteze detalii despre celelalte aplicatii instalate pe sistem.


Pe locul 6 in clasament, cu 3.47% din numarul total de infectii se afla Win32.Worm.DownadupJob.A, o detectie pentru identificarea sarcinilor programate pe care viermele Downadup le creeaza pentru a-si lansa in executie fisierul DLL in fiecare zi.
Locul 8 este ocupat de Gen: Variant.Kazy.9625, un vierme ce se propaga prin dispozitivele de stocare USB si exploateaza functia autorun prezenta in sistemele de operare de la Windows XP la Windows Vista SP1. Gen: Variant.Adware.HotBar.1 ocupa pozitia 9 in topul BitDefender pe luna februarie, cu 1.64% din numarul de infectii detectate in Romania. Aceasta familie de malware afiseaza utilizatorului reclame prin initializarea unor noi ferestre de browser si redirectionarea acestora catre continutul
promovat.

BitDefender Top 10 amenintari informatice in Romania:
Win32.Worm.Downadup.Gen - 10,24%
Trojan.AutorunINF.Gen - 7,64%
Trojan.Autorun.AET - 4,59%
Win32.Sality.OG - 4,48%
Trojan.Crack.I - 3,55%
Win32.Worm.DownadupJob.A - 3,47%
Win32.Sality. - 32,64%
Gen:Variant.Kazy.9625 - 2,15%
Gen:Variant.Adware.Hotbar. - 11,64%
Worm.Autorun.VHG - 1,50%
Altele - 58,10%

Aceasta statistica a fost publicata intr-un articol al revistei ComputerWorld din 3.03.2011.



Bibliografie


  1. Modern Operating Systems, Andrew S. Tanenbaum, Ed. a 3-a

  2. Primii pasi in securitatea retelelor, Tom Thomas

  3. Computer Viruses, Dr. Frederick B. Cohen

  4. The Little Black Book of Email Viruses, Ludwig

  5. http://ro.wikipedia.org/wiki/Virus_informatic

  6. http://en.wikipedia.org/wiki/Computer_worm

  7. www.computerworld.ro

  8. http://en.wikipedia.org/wiki/Keystroke_logging

  9. http://en.wikipedia.org/wiki/Blue_Pill_%28malware%29


Partea a III-a. Modalităţi de imbunătăţire a securităţii sistemelor de operare


  1. Ce reprezintă sistemele de protecție?

Prin sistem de protecție se înțelege totalitatea metodelor de realizare a protecției în cadrul unui sistem de calcul.

Prin protecție se înțelege


  • protecție antivirus sau a oricăror programe de tip virus, spyware, malware

  • securizarea unor informații, fișiere, baze de date astfel încât să nu poată fi accesate decât de utilizatori autorizați.

Unul din cele mai importante concepte reprezintă securitatea în adâncime. Prin aceasta se înțelege că este necesar ca protecția să se realizeze pe mai multe straturi. Principul care stă la bază este că dacă un anumit strat este străpuns mai sunt alte straturi care încă pot proteja sistemul.


  1. Firewall-ul

Firewall-ul reprezintă o mașină conectată la internet pe care vor fi implementate politicile de securitate.

Există 2 tipuri principale de firewall:


  • firewall-uri hardware

  • firewall-uri software

Prin firewall-ul de tip hardware se înțelege o placa de rețea este conectată la internet, iar cealaltă placa la rețeaua locală. El are rolul de a separa două conexiuni la două rețele diferite.

Orice pachet de informație care vine din Internet și vrea să ajungă în rețeaua locală trebuie întâi să treacă prin firewall. Astfel că firewall-ul devine locul ideal pentru implementarea politicilor de securitate de rețea și pentru controlul accesului din exterior. De asemenea firewall-ul nu permite trecerea unor fișiere din interior spre exterior decât prin trecerea prin Firewall.


Pentru un firewall există două moduri principale de abordare:

  1. Interzice totul în mod prestabilit şi permite explicit trecerea anumitor pachete.

  2. Permite totul în mod prestabilit şi interzice explicit trecerea anumitor pachete.




Firewall-urile de tip software numite și firewall-uri personale funcționează similar cu cele de tip hardware. Ele sunt implementate software în interiorul sistemului de operare kernel și filtrează pachetele în același fel ca și cele de tip hardware.

Deși firewall-urile contribuie la protecţia sistemelor de calcul acestea nu sunt întotdeauna eficiente. De aceea următorul strat este protecţia malware numita protecţie antivirus.


  1. Antivirus și tehnici antivirus

Programele antivirus contribuie la protejarea calculatoarelor împotriva virușilor, viermilor, cailor troieni precum și a altor "invadatori" care pot ataca un calculator. Rolul acestora este de a detecta prezența virușilor într-un calculator, a dezinfecta sau șterge fișierele infestate și a preveni infectarea acestuia.

Un astfel de program se instalează de obicei rezident în memorie, adică rulează în fundal tot timpul cat calculatorul este pornit (in Windows, noi observam acest lucru prin apariția unei iconițe în bara de jos din dreapta). Fiind rezident în memorie, antivirusul încearcă să scaneze fișierele pe care le accesăm, însă poate fi folosit și pentru a scana întreg calculatorul.

Virușii sunt astfel creați încât ei încearcă să se ascundă, timp în care utilizatorul încearcă să îi găsească. De cele mai multe ori virușii sunt astfel creați încât ei să fie orientați către răspândirea cat mai rapida.




    1. Scanarea antivirus

Odată ce un antivirus a intrat în sistem, unul din primele lucruri pe care îl face este să încerce să se ascundă. În scopul detecției acestor viruși au fost dezvoltate programe software specializate.

Odată instalat programul antivirus pe sistemul de calcul, primul lucru pe care îl face este să scaneze fiecare fișier executabil de pe disc și să caute orice virus care se găsește în baza lui de date cu viruși cunoscuți. Aceste baze de date sunt actualizate frecvent astfel că programul cunoaște în permanenta noile tipuri de viruși. Din acest motiv bazele de date conțin un număr foarte mare de viruși și, în același timp, discurile conțin un număr foarte mare de fișiere astfel că programele antivirus trebuie programate inteligent pentru a funcționa rapid.

In bazele de date ale unui antivirus este stocată semnătura digitala a fiecărui virus. Semnătura digitală a unui virus este un model de poziţionare a informaţiilor într-un virus, aceasta fiind caracteristică fiecărui virus în parte.

Tot prin scanare antivirus se înțelege scanarea noilor fișiere aduse din rețelele externe.

Deși scanarea antivirus reprezintă unul din cele mai bune moduri de eliminare a virușilor aceasta are și numeroase deficiențe.

Dacă s-a făcut scanarea la un moment dat și s-a determinat că discul nu conține viruși la momentul respectiv nu înseamnă că și după un anumit interval de timp (de exemplu o săptămâna) nu vor apărea alți viruși. Acest lucru arată că pentru o protecție eficienta este necesara o scanare frecventa. Deoarece programele antivirus sunt lente, o metodă eficienta de scanare este aceea de a căuta numai fișierele care au fost modificate de la data ultimei scanări.

O metodă de detecție a fișierelor care au fost infectate este stocarea dimensiunii fișierelor de pe disk. Dacă s-a detectat modificarea dimensiunii fișierului aceasta arată că acesta poate fi infectat. Acest lucru poate fi observat în figura 3b. Fișierele inteligente pot face compresia conținutului fișierului astfel încât în final noua formă a fișierului, care conține virusul (Figura 3.c), să ia dimensiunea veche a fișierului (figura 3a).

O altă metodă prin care virușii încearcă să scape de detecție este aceea de a nu apărea reprezentați pe disk la fel cum sunt reprezentați în baza de date a antivirusului. În cest mod virușii se pot ascunde de către programele de detecție antivirus (Figura 3d). Aceasta metodă este realizata de exemplu prin criptarea sa cu o noua cheie pentru fiecare fișier infectat. Înainte de a infecta un nou fișier virusul creează cheia de 32 biți aleator aleasa. Aceasta cheie este stocată în fișier. Bineînțeles, pentru a rula, virusul trebuie să se autodecripteze.

In prezent sistemele antivirus sunt astfel create încât ele caută cheia de decriptare și încearcă să decripteze fișierele astfel încât să găsească virusul în interiorul acestora.

La rândul sau cheia de decriptare poate fi deghizata. Aceasta poate fi făcută prin șiftări la stânga, la dreapta, negări ale codului și altele.

Un virus care se modifica la fiecare copie poartă numele de virus polimorfic.

In multe cazuri este posibila adăugarea de instrucțiuni sau modificarea celor existente cu unele echivalente care nu au ca efect schimbarea funcționalității codului. Un cod care poate face astfel de modificări poartă numele de motor de mutație iar virușii le folosesc pentru a modifica decriptorii de la o copie la alta. Astfel se obține ultima formă de viruși (Figura 3e).

Bineînțeles sistemele antivirus au fost astfel concepute încât să descopere toate aceste tipuri de antivirus. Ele pot căuta în cod sau chiar simula ce face codul. Scopul principal al realizării acestor forme de viruși nu este de a le ascunde, ci și de a-l face mai dificil de detectat încât creste foarte mult timpul de scanare a calculatorului.

Dacă un virus a fost găsit nu înseamnă că acesta va putea fi și șters. Uni viruși au modalități de a se apăra, prin diferite metode, făcând dificila ștergerea lor.


    1. Verificarea integrității

O metodă complet diferita de detecție a virușilor este verificarea integrității. Odată ce antivirusul a scanat calculatorul și s-a determinat că nu mai are viruși el realizează o sumă de verificare pentru fiecare fișier executabil. Schimbarea conținutului fișierului duce la schimbarea proprietarilor sale deci se poate detecta ușor dacă executabilul a fost modificat. Spre exemplu se poate face tratarea tuturor cuvintelor ca niște întregi și se face suma lor pe 32 sau 64 de biți sau se poate face o criptare care nu poate fi inversata. Schimbarea conținutului fișierului ar duce la schimbarea valorii sumei, iar în cazul criptării, duce la o criptare diferita. Astfel se poate detecta ușor existenta unui virus.

Principala problema în acest caz este că virusul este astfel conceput încât cunoaște modul în care antivirusul funcționează. Astfel el poate șterge suma de verificare sau fișierul de verificare criptat sau chiar le poate modifica. Antivirusul poate încerca să ascundă aceste rezultate de verificare, dar în continuare virusul le poate detecta și schimba.


    1. Verificări comportamentale

O a III-a metodă folosită de antivirus este verificarea comportamentului programelor care rulează în sistem. Antivirusul urmărește activitatea întregului calculator și caută să determine orice pare suspect. Un exemplu este acela că nici un program normal nu ar trebui să acceseze sectorul de butare. O astfel de activitate este aproape sigur un virus.

Sunt situații în care nu este sigură detecția. Spre exemplu editarea unui fișier executabil poate fi făcută de către un compilator, în caz contrar acesta este foarte posibil să fie un virus. Dacă antivirusul nu poate determina cine a făcut modificarea se lansează un warning. Dacă utilizatorul a făcut modificarea el va ști acest lucru. În caz contrar modificările au avut loc datorită unui virus.


    1. Evitarea virușilor

De multe ori, odată ce un virus a infectat calculatorul, acesta este mult mai greu de detectat și șters decât de evitat.

Acestea sunt câteva lucruri pe care utilizatorul ar trebui să le facă pentru a reduce problemele considerabil:


    • Utilizarea unui sistem de operare cu un mare nivel de securitate

    • Utilizarea de softuri originale. Aceasta metodă nu este întotdeauna sigură deoarece s-au întâlnit cazuri ale unor angajați care au introdus viruși în cadrul softurilor. Descărcarea de programe de pe site-uri neautorizate aduce cu sine factori de risc

    • Folosirea unui antivirus eficient și folosirea lui urmărind instrucțiunile date. Foarte importantă este actualizarea regulată a antivirusului

    • Folosirea cu grijă a email-ului deoarece textul scris în cod ASCII este perfect sigur dat fișierele atașate sunt metode prin care virușii se pot transmite.

    • Stocarea datelor pe CD-uri, harduri externe, sau alte metode de stocare care nu implica folosirea permanenta a lor. În cazul în care calculatorul a fost virusat și se pierd anumite date de pe calculator, ele pot fi în continuare obținute. Este posibil ca datele stocate recent să fie pierdute dar cele mai vechi nu.

    • Descărcarea de programe free reprezintă un potențial pericol, mai ales cele de la surse necunoscute.




  1. Code Signing (Semnarea codului)

Verificarea integrității de multe ori este o soluție ineficienta. Să presupunem că avem un fișier executabil care conține un virus. Acesta nu este detectat prin scanare și nu a mai fost scanat nici o data. Este imposibila detecția prin aceasta metodă deoarece la prima scanare deoarece nu există o data de verificare deci va fi stocată una a fișierului care conține virusul. La următoarea scanare se va determina aceiași valoare iar executabilul rămâne încă virusat.

O metodă similara dar mult mai eficienta este aceea de a semna softurile originale. Astfel antivirusul poate determina dacă fișierul executabil a suferit vreo modificare sau nu din momentul în care a plecat de la fabrica.

Acest lucru este foarte important mai ales când se descarcă programe de la magazine online. Dacă programul descărcat provine de la o companie foarte cunoscută este foarte posibil ca acesta să nu conțină un virus.

Un mod de a recunoaște aceste softuri este folosirea de semnături digitale (Code Signing).

O semnătură digitală se utilizează pentru a autentifica orice tip de informaţii digitale (documente, mesaje de poştă electronică şi macro-comenzi) folosind criptografia informatică. Procesul de confirmare a identităţii se face prin verificarea semnăturilor digitale utilizate pentru semnarea codului. Semnăturile digitale atestă autenticitatea softului, integritatea lui şi asumarea răspunderii din partea producătorului.

Semnăturile digitale sunt:

- Autenticitatea. Semnătura digitală constituie un indiciu, mai important decât site-ul de provenienţă, care ne demonstrează că semnatarul este şi cel care pretinde a fi.

- Integritatea. Semnătura digitală ne arată dacă un conţinut a fost modificat sau nemodificat, din momentul aplicării semnării.

- Asumarea răspunderii din partea producătorului. Semnătura digitală demonstrează tuturor părţilor implicate originea conţinutului semnat, iar producătorul nu se poate disocia ulterior, negându-şi responsabilitatea.

Semnăturile digitale sunt create folosind un algoritm de generare cu cheie publică. Acest algoritm folosește 2 chei diferite: o cheie publică și o cheie privată care reprezintă perechea cheii publice. Cheia privata este cunoscută numai de posesor. Cheia publică este folosită pentru criptare iar cea privata pentru decriptare.

In practica algoritmii de criptare cu cheie publică sunt ineficienți pentru semnarea documentelor lungi. Pentru a câștiga timp este folosit un algoritm de criptare unidirecționala a documentului numit hashing.

O funcție hash este o procedura bine definita sau o funcție matematica ce convertește o cantitate de date de dimensiuni variabile intr-o secvența de date de dimensiuni mici, de obicei de dimensiune fixa, care depinde de tipul algoritmului folosit și nu de cantitatea (lungimea) datelor de intrare.

Valoarea hash are o lungime fixa indiferent de lungimea datelor pentru care a fost calculată. Valoarea hash a două blocuri de date ar trebui să fie identica dacă cele două blocuri de date sunt identice. Modificări minore în blocul de date duce la apariția de modificări nepredictibile și importante în valoarea hash calculată.

O funcție hash nu este inversabila. Este imposibila reconstituirea datelor care au generau o anumita valoare hash.

Atât semnătura digitala cat și hashingul sun folosiți pe același principiu: Dacă semnătura programului de pe calculatorul pe care este rulat corespunde semnăturii date de fabricant atunci programul este autentic.

Matematica folosită în cadrul acestor metode de securitate este atât de complexă încât este imposibil pentru cineva ca să încerce să treacă de acest mecanism de securitate

Una din utilizările acestei metode de verificare este în aplicațiile web care conțin cod în numeroase limbaje. În general acestea sunt semnate, caz în care browserul verifică semnătura automat.

Modul de funcționare este reprezentat în figura 4.





  1. Jailing

Atunci când se obține un nou program este bine să fie verificat înainte. Principiul este acela că nu se permite unui program să realizeze apeluri de sistem. În schimb comenzile sunt trimise către un alt program, considerat sigur care poartă numele de Jailer. În acest caz programul considerat nesigur este numit Prizonier.

Apelurile programului prizonier sunt transmise sistemului de operare (pas 1) care le trimite către jailer (pas 2). După ce Jailerul verifică apelul de sistem el trimite decizia înapoi către sistemul de operare (pas 3). Dacă se determină că apelurile nu reprezintă un pericol pentru sistem atunci se permite rularea acestora. După ce se execută apelul rezultatele sunt trimise din nou către Jailer pentru verificare (pas 4) și în funcție de răspunsul primit (pas 5) se acorda din nou sau nu controlul programului prizonier.

In cazul în care pe parcursul operațiilor se determină existenta unui pericol, este refuzat apelul iar prizonierul este omorât.






  1. Detecția bazata pe tipurile de intruziuni

Un alt mod de protecție a unui sistem de calcul este instalarea unui IDS (Instruction Detection System = Sistem de detecție a instrucțiunilor)

Ideea de bază constă în construcția de modele de bază care caracterizează un comportament așteptat/acceptabil al intrărilor. Pin acest mod sunt detectate atacurile care pot cauza sistemul să se comporte diferit fata de modele, și este aplicabil pentru atacurile pe protocolul Modbus, pe platformele sistemelor de operare și pe infrastructura de internet.

Există 2 tipuri de bază de IDS-uri:



  • unul care este orientat pe pachetele care vin prin internet

  • altul care urmărește activitățile anormale ale UCP (Unității centrale de prelucrare)

Aceasta metodă este destul de eficienta pentru detectarea atacurilor cunoscute. Acest lucru este realizat prin detecția proprietăților distinctive ale tipului de atac. Mai mult de atât se pot cunoaște proprietăți ale unei întregi clase de atacuri.

Un avantaj al acestui mod de abordare este posibilitatea de a detecta atacuri necunoscute. Acest lucru se poate face în cazul atacurilor care au proprietăți similare cu atacurile cunoscute.

Principalul dezavantaj îl reprezintă dificultatea crescuta de realizare al acestor modele de baza. Alt dezavantaj este acela că acest model poate genera alarme false în cazul în care modelele nu sunt realizate suficient de bine.


  1. Încapsularea codului mobil

Virușii și viermii sunt programe care ajung pe calculator fără ca utilizatorul să ia la cunoștință și împotriva voinței sale. Uneori, utilizatorii, intenționat sau nu importa și rulează coduri necunoscute pe calculatoarele lor.

In prezent multe programe care se găsesc pe internet conțin mici programe care poartă numele de appleturi. După ce acestea sunt descărcate ele sunt executate.

Un alt tip de programe utilizate pe net sunt cele numite agenți. Acestea sunt programe lansate de utilizator să efectueze anumite comenzi și să adune anumite informații. După ce acestea au trecut prin toate calculatoarele și au adunat datele din bazele de date necesare, se întorc la calculatorul care l-a lansat pentru a furniza informația.

Al treilea tip este reprezentat de fișierele de tip PostScripturi. Acesta reprezintă un program scris în limbajul PostScript care este executat de imprimantă. În mod normal acestea dau comenzi către imprimantă ce să facă dar în realitate ei pot face orice.

Toate aceste 3 tipuri sunt câteva exemple de coduri mobile.

Utilizarea de astfel de coduri presupune un anumit risc. Odată ce un proces descarcă un astfel de cod mobil rulează ca un oricare alt proces și are aceleași drepturi ca oricare altul, inclusiv posibilitatea de citire, scriere, criptare, folosire a fișierelor și multe altele.

Există numeroase metode prin care se face legătura cu aceste programe. Printre acestea sunt sandboxing-ul și interpretarea.




    1. Sandboxing

Sandboxie este un program sandbox pentru Windows. Un sandbox este un loc protejat de interferenţe exterioare, unde programele pot funcţiona, însă fişierele sistemului nu pot fi afectate.

Sandboxie monitorizează programele care sunt deschise în sandbox şi deviază accesul la fişiere către un sistem virtual. Toate modificările făcute se realizează doar în sandbox. Fişierele reale de pa hard disk rămân nemodificate.

Viruşii, Troienii şi soft-uri similare maliţioase sunt periculoase deoarece se răspândesc în sistem. Alterează fişierele sistemului de exemplu, ceea ce conduce la deschiderea unui Troian de câte ori sistemul este pornit, sau pot şterge la întâmplare fişiere.

Când astfel de programe sunt deschise în sandbox, nu mai pot cauza neplăceri, deoarece toate schimbările sunt reţinute în sandbox şi fişierele reale nu pot fi afectate.

De fiecare dată şi cât timp vei deschide fişierele afectate în sandbox, însă, vei deschide un Troian sau un virus. Astfel este necesar să ştergi în mod regulat conţinutul sandbox. Astfel toate modificările vor fi înlăturate şi fişierele din sandbox vor fi din nou identice cu cele originale.

In cazul utilizării Sandboxului se folosește principiul memoriei virtuale. Aceasta presupune alocarea a 2 locații de memorie pentru fiecare program rulat: 1 pentru date și alta pentru adrese. Appletul nu va accesa direct memoria ci o va face numai prin intermediul acestei memorii virtuale.

Un sandbox nu protejează astfel împotriva keylogger, întrucât acestea pot încă funcţiona şi trimite fişierele tale pe internet fără probleme. Înainte ca tu să restartezi calculatorul şi să ştergi conţinutul sandbox, sistemul nu va scăpa de aceste programe. Astfel este indicat nu doar să foloseşti sandbox, dar să ai instalat şi un detector de virus la zi precum şi firewall pe calculator.





    1. Yüklə 318,29 Kb.

      Dostları ilə paylaş:
1   2   3   4




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin