Protectia Retelelor

7.4. Drept comparat

=== Protectia retelelor ===

Capitolul 1

NOțIUNI INTRODUCTIVE

1.1. Conceptul de rețea

Rețeaua de calculatoare (network) este un ansamblu de calculatoare (sisteme de calcul) interconectate prin intermediul unor medii de comunicație (cablu coaxial, fibră optică, linie telefonică, ghid de unde) în scopul utilizării în comun de către mai mulți utilizatori a tuturor resurselor fizice, logice (software de bază și aplicații) și informaționale (baze de date, fișiere), asociate calculatoarelor din rețea.

Termenul de rețea de calculatoare este adesea folosit pentru a sublinia noțiunea de conectivitate, și nu pe cea de calculator, pentru că multe dintre tehnologiile tratate în cărțile de rețele nu se referă doar la PC-uri sau la mainframe-uri, ci la un mediu mult mai general ce include agende electronice, imprimante, telefoane IP sau televizoare IP. Totuși datorită multitudinii de soluții disponibile, precum și datorită libertății de alegere oferite utilizatorilor rețelele de PC-uri sunt cel mai adesea referite prin termenul de rețele de calculatoare.

Figura 1.1. Legătura de rețea

În general, toate rețelele au anumite componente , funcții și caracteristici comune, printre acestea sunt următoarele:

-servere – calculatoare care oferă resurse partajate pentru utilizatorii rețelei;

-clienții – calculatoare de lucru (terminale, stații de lucru) care accesează resursele

partajate în rețeaua de server;

-mediu de comunicație – modul și elementele în care sunt calculatoarele în rețea;

-date partajate – fișiere puse la dispoziție de serverele de rețea

-imprimante sau alte periferice partajate .

-resurse – fișiere, imprimante și alte componente care pot fi folosite de utilizatorii rețelei.

1.2. Apariția și evoluția rețelelor – Internetul

În perspectiva unui dezastru nuclear, Forțele Aeriene ale Statelor Unite au însărcinat un grup mic de cercetători cu o uimitoare îndatorire: aceea de a crea o rețea de comunicare care să poată supraviețui unui atac nuclear. Conceptul lor a fost unul revoluționar: o rețea care nu avea un punct central de control. Dacă unul sau mai multe noduri erau distruse sistemul continua să funcționeze. În esență, această rețea(creată special cu scop militar) ar fi supraviețuit chiar și apocalipsei. În primul rând, responsabil pentru crearea Internetului a fost Paul Baran. În 1962, Baran lucra la Corporația RAND, încercând să dezvolte un concept de rețea, în secret. Baran încerca să realizeze o rețeaua construită în mare parte pe conceptul „rețea de tip plasă de pește”(o combinație între o rețea de tip stea și una de tip plasă) sau o pânză de păianjen. Mai târziu această rețea avea să se numească una de tip descentralizat. De asemenea Baran a detaliat și alte aspecte precum securitatea, schemele de prioritate, hardware și costul. Din păcate ideile acestuia erau prea avansate pentru acel timp și Pentagonul nu a putut pune în aplicare proiectul.

În 1965 s-au alocat alte fonduri și s-a încercat din nou să se pună în aplicare proiectul. În 1969 rețeaua a devenit o realitate, fiind cunoscută sub denumirea de arpaneT. Rețeaua era formată din patru mașini imense situate fiecare în diferite puncte ale SUA în Universități precum Institutul de Cercetare Stanford, Universitatea Utah, Universitatea California din Los Angeles și Universitatea California din Santa Barbara. În 1972 ARPANET avea 40 de gazde; în același an Ray Tomlinson a creat poșta electronică, iar în 1974 Protocolul de Control al Transmisiei, concepte ce au revoluționat radical Internetul și implicit orice tip de rețea. Crearea TCP-ului și incredibila sa capabilitate de a putea fi folosit pe orice tip de platformă și orice sistem de operare a dus la apariția de nenumărate rețele. La mijlocul anilor ’80 multe companii au realizat avantajele folosirii rețelelor. Din acest moment și până la dezvoltarea rețelelor și a Internetului, în special, a mai rămas un pas.

Internetul

Internetul este o gigantică rețea de calculatoare care oferă o diversitate de servicii. Astfel, Internetul oferă acces la o vastă colecție de informații din întreaga lume, permite schimbul de date în timp real, oferă posibilitatea ascultării unor posturi de radio și chiar a vizionării de programe TV. Internetul este un loc public și nu este proprietatea nimănui. În stadiul său incipient, Internetul se baza foarte mult pe comunicarea scrisă (text). Nu erau utilizate fotografii, sunete, materiale audio sau video. De vreme ce erau utilizate numai litere și cifre, singurul mod de a obține informații existente într-un alt computer conectat la Net consta în tastarea unor serii de comenzi complicate cu ajutorul tastaturii, începătorilor fiindu-le foarte dificil să utilizeze rețeaua în acest fel. Pe măsură ce firmele și universitățile implicate în cercetare în domeniul militar se racordau la această rețea, aceasta creștea exponențial, până în momentul în care a evoluat în ceea ce cunoaștem azi sub numele de Internet.

Primul incident de securitate din cadrul acestei rețele a fost înregistrat în anul 1988, când Robert Morris (un student la [anonimizat], al cărui nume a fost aflat după ce incidentul a fost remediat) a eliberat un vierme și a infectat peste 2000 de calculatoare. La acea dată rețeaua conținea peste 80.000 de calculatoare.

În anul 1992 a fost ridicată restricția privind activitățile comerciale prin Internet (instaurată deoarece ARPANET era întreținută cu bani de la bugetul american), iar în 1993 ARPANET a fost complet desființată.

Conceptul inițial din cadrul dezvoltării Internetului a fost cel de cercetare prin colaborare și al standardelor deschise. În acest sens, majoritatea standardelor care stau la baza Internetului sun descrise în documente RFC (Request For Comments). Există numeroase documentații și organizații ce oferă gratuit informații referitoare la securitatea Internetului, cum ar fi CERT (Computer Emergency Response Team). CERT generează buletine informative despre securitate și le distribuie gratuit. Stabilită de DARPA, în anul 1988, CERT oferă centralizarea incidentelor majore de securitate, prin intermediul site-ului www.cert.org. Uneori aceste buletine includ și rezolvări (fixes) ale vulnerabilităților, în general fișiere patch, care modifică sursele programului.

În zilele noastre Internetul reprezintă o comunitate internațională publică, cooperantă. Nu există un „proprietar” al Internetului și nu există nici măcar un singur organism de reglementare responsabil cu administrarea sa. Internetul este accesibil pentru sute de milioane de oameni din întreaga lume și dă posibilitatea utilizatorilor din toată lumea, posesori ai unui computer, de a obține informații stocate pe un alt computer. Standardizarea Internet-ului este acum controlată de organizația IETF (Internet Engineering Task Force), formată din experți proveniți din universități, centre de cercetare și companii de calculatoare. IETF publică documentele RFC (Request For Comments).

Internetul a cunoscut o dezvoltare explozivă, care a depășit și cele mai optimiste așteptări:

36 de computere care găzduiesc site-uri Web

10.000 de site-uri Web

1996 100.000 de site-uri Web

1997 646.000 de site-uri Web

2,2 milioane de site-uri Web, cu o rată de creștere de 10% lunar

9,5 milioane de site-uri Web

peste 600 milioane site-uri Web

1.3. Clasificarea rețelelor

Numărul mare de producători de soluții de rețea, precum și complexitatea domeniului au generat un volum foarte mare de clasificări ale rețelelor de calculatoare. Cu toate acestea există trei criterii ce se regăsesc în toate prezentările rețelelor de calculatoare:

Tehnologia de transmisie folosită

Modul de acces la mediu

Dimensiunea rețelei

Din punct de vedere al tehnologiei folosite, se deosebesc două mari categorii:

-rețele cu difuzare ce au drept principală caracteristică asigurarea unui mediu comun la care să aibă acces toate dispozitivele din rețea. Acest mediu comun se traduce prin constrângerea ca oricare din mesajele trimise de un membru al acestui tip de rețea să poată fi recepționat de toți ceilalți membrii din rețea. Astfel, implementarea unei rețele bazate pe difuzare presupune și asigurarea unui mecanism de identificare atât a celui care a trimis, cât și a destinatarului. În plus, acest tip de rețea, trimițând mesajul tuturor membrilor din rețea, va forța fiecare stație să recepționeze mesajul și apoi să decidă dacă respectivul mesaj îi este destinat. Cu toate acestea, soluțiile bazate pe rețelele cu difuzare sunt foarte adesea mult mai ușor de implementat, acest lucru explicând popularitatea lor. Pentru a pune într-o perspectivă mai largă eficiența comunicării prin difuzare, trebuie observat că multe dintre interacțiunile noastre cotidiene au la bază forme de comunicare cu difuzare.

Un alt avantaj al rețelelor cu difuzare este posibilitatea trimiterii mesajelor către toți membrii rețelei sau numai către un grup de membrii, aceste tipuri de comunicare fiind definite de mecanismul de adresare.

-rețelele de tip punct-la-punct (peer-to-peer sau P2P) sunt alcătuite din perechi de mașini care comunică între ele. Acest tip de rețele implică costuri mai mici decât cele bazate pe server. Un exemplu îl constituie o firmă care are două locații conectate între ele prin fibră optică sau prin stații radio.

Accesul la mediu se referă la un set de reguli pentru a permite accesul tuturor stațiilor la mediul comun. Trebuie găsită o metodă de a aloca fiecărei stații o cuantă de timp sau o bandă de frecvență în care să transmită. Această alocare poate fi de trei feluri:

alocare statică (TDMA, FDMA) ;

dinamică (Token Ring/Bus);

aleatoare (CSMA, CSMA/CD).

În cazul alocării statice, fiecărei stații sau fiecărui modul I se alocă o cuantă de timp

(în cazul TDMA – Time Divison Multiple Acces) sau o bandă de frecvență (FDMA – Frequency Division Multiple Acces). Această alocare este statică, în sensul că, dacă jumătate din stații nu transmit, cuantele alocate lor nu sunt reutilizate.

În cazul alocării dinamice, se alocă pe rând o cuantă de timp stațiilor care vor să transmită. De exemplu, în cazul tehnologiilor de tip TokenPassing, există o frecvență de biți, un mesaj numit jeton. Acest jeton permite stației care îl deținesă transmită ce vrea. După ce a terminat de transmis, dă drumul la jeton care se “plimbă” pe rețea până ajunge la următoarea stație. Dacă aceasta are ceva de transmis, ia jetonul, iar dacă nu, îl cedează, și jetonul merge mai departe la următoarea stație.

În cazul alocării aleatoare, fiecare stație procedează astfel: ascultă să vadă dacă nu cumva altă stație transmite în acel moment. Dacă da, așteaptă până când nu mai transmite nimeni. După ce aude că e “liniște” va transmite; fiecare stație procedează exact la fel, nu există stații preferențiale, toate au drept egal de a începe transmisia. Există riscul ca două stații să asculte simultan și, când nimeni nu mai transmite, să înceapă ambele transmisia în același timp. În acest caz, mesajele celor două stații se “ciocnesc” dând naștere unei coliziuni. Eliminarea coliziunilor apărute în rețea cade în sarcina protocolului iar, în cazul Ethernet, coliziunea este eliminată prin emisia generală a unui bruiaj, după terminarea căruia stațiile încep să transmită din nou.

Un alt criteriu de clasificare îl reprezintă cel în funcție de răspândirea geografică, implicit de dimensiuni:

rețele locale (LAN – Local Area Network) – lucrează la nivelul unei clădiri sau al unui grup de clădiri având distanța între stațiile de lucru de 10-1000m. acest tip de rețea este destul de dificil de proiectat, deoarece într-o astfel de rețea se pot conecta sute de calculatoare, folosite de utilizatori cu drepturi diferite. Sunt recomandate pentru aplicații de business și educaționale;

rețele teritoriale (WAN – Wide Area Network) – lucrează la nivelul unei regiuni sau la nivel mondial având distanța între stațiile de lucru de ordinul miilor de kilometrii. Aceasta cuprinde multiple rețele de tip LAN care se află în locuri geografice diferite. Pentru realizarea comunicațiilor există diferite soluții, cum ar fi linii telefonice normale sau închiriate, legături prin satelit, cablu optic etc;

rețele publice (PDN – Public Domaine Network) – lucrează la nivelul unei regiuni sau la nivel mondial și au acces la diverse rețele locale, de exemplu: Internet, Usenet, Csnet și Arpant, Bitnet. Astfel de rețele mai sunt cunoscute și sub denumirea de Intranet.

rețele metropolitane (MAN – Metropolitan Area Network) sunt un tip de rețele tratat separat, acoperind un oraș. Ca și categoria WAN, aceasta aparține unui furnizor de servicii, accesul la această rețea se face prin intermediul unui contract cu furnizorul de servicii, modul de lucru este identic. Diferența este în modul de transmisie, și anume predomină fibra optică și modemul radio cu spectru împrăștiat.

Capitolul 2

Tipuri de echipamente de rețele

2.1. Echipamente de rețea pentru PC – Servere

Un server este un calculator central care trebuie să răspundă oricând cererilor pe care le primește din partea clienților. Server-ul conține unitățile de disc, imprimantă sau alte resurse partajate. Serverele dedicate de rețea dispun de multe resurse. Sunt în general echipate cu două procesoare Intel Pentium, cu frecvența ce variază între 400 MHz și 3000 Mhz, Rom – cel puțin 512Mb, sistem de stocare a datelor în funcție de necesități, placă Ethernet, hard disc destul de mare. Prețul diferă trecând chiar de 10000$. Serverele pot fi mai multe într-o rețea în condițiile unei rețele mari și cu trafic mare. Numeroasele sarcini ce revin serverelor sunt diverse și complexe. Serverele de rețele mari sunt specializate, fiind adaptate necesităților în continuă creștere ale utilizatorilor. Pot fi întâlnite următoarele categorii:

Servere de fișiere și de tipărire – aceste servere administrează accesul și folosirea de

către utilizatori a resurselor de tip fișier ș imprimantă. Serverele de fișiere sunt folosite în general pentru stocarea datelor și fișierelor. Fișierele se păstrează pe server, iar aplicația (programul) rulează pe calculator client. În timpul execuției programelor, datele sau fișierele sunt descărcate pe calculatorul client;

Servere de aplicații – aceste servere pun la dispoziția clienților componenta server a

aplicațiilor de tip client/server, precum și datele respective. De exemplu, serverele păstrează baze de date. La serverele de aplicații, baza de date se află pe sever și numai rezultatul este declarat pe calculatorul care a lansat solicitarea;

Serverer de poștă – aceste servere gestionează transferul de mesaje electronice între

utilizatorii rețelei;

Servere de fax – aceste servere gestionează traficul de mesaje fax în/și dinspre rețea,

partajând una sau mai multe placi de fax-modem;

Servere de comunicații – aceste servere fluxul de date și mesaje e-mail transmise între

rețeaua serverului și alte rețele, calculatoare mainframe sau utilizatori aflați la distanță, care folosesc modemuri și linii telefonice pentru a se conecta la server;

Servere de directoare – aceste servere permit utilizatorilor să localizeze, să stocheze și

să protejeze informațiile din rețea.

Din moment ce serverele funcționează precum un „depozit” central de resurse ce sunt vitale operațiilor executate de sistemele de operare ale clienților, aceste servere trebuie să fie eficace și puternice. Termenul de puternic indică faptul că sistemele de servere trebuie să fie capabile să funcționeze sub un număr mare de operații ce i se cer a fi rezolvate. De asemenea, înseamnă că sistemele trebuie să funcționeze în cazul în care unele procese sau componente „cad”. Această calitate a serverelor se realizează prin redundanță (adică adăugarea unor componente hardware care să fie capabile să preia funcțiile componentelor principale fără a întrerupe vreo legătură). Alături de protecția ridicată pe care o oferă față de echipamentele dedicate de rețea acestea sunt doar câteva din avantajele pe care le oferă folosirea unui server. Dintre dezavantaje se pot menționa, în special costul ridicat al componentelor și necesitatea existenței unei persoane calificate – administrator – care să aibă grijă periodic de sistem.

Figura 2.1. – Server-ul și HUB-ul

2.1. Echipamente dedicate de rețea

Singurul dispozitiv de nivel fizic care mai există astăzi este HUB-ul însă, din punct de vedere istoric, primul dispozitiv de nivel 1 a fost repetorul.

2.2.1. Repetorul și HUB-ul

Termenul de repetor vine de la începutul comunicațiilor la distanță când era necesară montarea, din loc în loc, a unor amplificatoare care să refacă proprietățile semnalului (raportul semnal/zgomot). El se întâlnește la telegraf, telefon, microunde și comunicații optice. În cazul rețelelor, repertorul nu a fost folosit decât pentru cablul coaxial. Repertorul are doar rolul de a copia biții individuali între segmente de cablu diferite; el nu interpretează cadrele pe care le recepționează, din acest punct d vedere reprezentând cea mai simplă și mai ieftină metodă de extindere a unei rețele liniare. Repetoarele sunt utilizate în general pentru a extinde lungimea cablului coaxial cu maxim cinci tronsoane. Pentru a putea fi utilizate, pachetele de date și protocoalele folosite trebuie să fie identice pe ambele segmente (nu se pot conecta rețele care folosesc standarde diferite); de asemenea ele trebuie să folosească aceeași metodă de acces (CSMA/CD). Repetorul mai este folosit pentru a face legătura dintre mediile de transmisie diferite (cablu coaxial – fibră optică, cablu coaxial gros – cablu coaxial subțire). Repetoarele pot fi dispozitive cu un singur port „in” și un singur port „out”, deși de cele mai multe ori sunt modularizate sau multiport, cunoscute mai bine sub denumirea de HUB-uri. Repetoarele sunt clasate ca fiind dispozitive d nivel 1 în modelul OSI pentru că acționează doar la nivel de bit și nu necesită nici o altă informație.

HUB-ul (Host Unit Broadcast – Figura2.1.) este un dispozitiv de nivel 1. scopul unui HUB cunoscut și ca repetor multiport, este de a amplifica și retransmite semnalele din rețea, la nivel de bit, unui număr mare de utilizatori, utilizând procesul numit conectare. HUB-urile pot fi pasive, pentru că nu fac decât să distribuie semnalul la mai mulți utilizatori, sau active care amplifică semnalele de rețea. Unele HUB-uri au porturi console, ceea ce înseamnă că pot fi controlate. Multe HUB-uri sunt numite dumb HUBs pentru că nu fac nimic altceva decât să preia un semnal și să-l repete pentru fiecare port. HUB-urile sunt considerate dispozitive de nivel 1 pentru că tratează informa1tia la nivel de bit și nu necesită nici o altă informație de la nici un alt nivel al modelului OSI.

2.2.2. Dispozitivele de tip wireless (Figura 2.2.)pot fi folosite pentru a crea o rețea fără a mai fi nevoie de cablu. Semnalele folosite de aceste dispozitive sunt unde electromagnetice ce circulă prin aer. Aceste tipuri de rețele folosesc frecvențe radio (FR), laser, infraroșu (IR), sau unde transmise cu ajutorul sateliților de la o mașină la alta. Stațiile care nu sunt în preajma undelor unei astfel de rețele pot fi mutate ușor fără a fi nevoie de o reconectare cu ajutorul cablurilor. Acest tip de comunicație este des întâlnit în cazul avioanelor, sateliților, navetelor spațiale și a stațiilor spațiale. La baza acestor comunicații stau așa numitele dispozitive transmițător – receptor. Transmițătorul convertește datele în unde electromagnetice (EM) care sunt transmise receptorului, care convertește la rândul său aceste unde în date. Pentru a se putea stabili această legătură este nevoie de câte un transmițător și un receptor pentru fiecare mașină. Acestea pot fi găsite într-o singură componentă numită „transceiver” sau „placă de rețea wireless”. Cele mai des folosite tehnologii wireless sunt IR și RF. Tehnologia IR are un mare dezavantaj, acela că pentru a putea comunica, mașinile trebuie să fie dispuse în linie fără a exista alte corpuri între ele. Tehnologia RF permite mașinilor să fie dispuse în alte clădiri, însă raza semnalului e limitată. Se pot folosi mai multe frecvențe, făcând din această transmisie o transmisie sigură, care nu poate fi monitorizată și interceptată. Se folosesc două tipuri de transmisii – FHSS (Frequency Hopping Spread Spectrum) și DSSS (Direct Sequence Spread Spectrum)

2.2.3. Bridge-ul (Figura 2.2.) lucrează la subnivelul MAC (Media Acces Control) al nivelului 2 și funcționează pe principiul că fiecare nod de rețea are propria adresă fizică. Bridge-ul interconectează rețelele LAN de același tip sau de tipuri diferite. Este folosit în principal în două situații:

Extinderea fizică a unei rețele LAN (în loc de hub);

Interconectarea rețelelor locale ce utilizează tehnici de control al accesului la mediu diferite.

Tipuri de bridge-uri:

Transparent – în acest caz acesta examinează adresele MAC in pachetele care circulă în rețelele la care este conectat și pe baza unor tabele de adrese decide pentru fiecare pachet dacă trebuie trimis pe o rețea sau alta;

Cu rutare prin sursă sau Token Ring – în acest caz utilizează informația de rutare inclusă de sistemul-sursă în câmpul din cadrul MAC. Aceste bridge-uri sunt specifice pentru interconectarea rețelelor Token Ring.

Dacă într-o rețea există mai multe rețele cu tipologii diferite, atunci administrarea fluxurilor de date pateu fi făcută de un calculator echipat cu mai multe plăci de rețea, care va juca rolul de bridge între aceste rețele, asociind rețelele fizice diferite într-o singură rețea logică. Toate calculatoarele din rețeaua logică au aceeași adresă logică de subrețea. Bridge-ul izolează comunicația între stații aflate în același segment, la nivelul segmentului. De aici rezultă că bridge-ul va mări domeniile de coliziune (nu propagă coliziunea dintr-o subrețea în alta); totodată ea va oferi mai multă bandă disponibilă, deoarece comunicația în interiorul aceluiași segment nu va consuma din banda disponibilă a întregii rețele. O altă consecință o reprezintă minimizarea riscurilor de securitate legate de atacurile din interiorul rețelei locale. Prin folosirea bridge-urilor se pot izola de restul rețelei stațiile ce prezintă un risc de securitate.

În corespondență cu modelul OSI, bridge-ul lucrează la nivelul 2 și operează cu adresele fizice ale calculatoarelor-este capabil să decodeze cadrul pe care îl primește pentru a face prelucrările necesare transmiterii pe rețeaua vecină.

Figura 2.2. – Bridge Wireless și Cisco Switch

2.2.4. Switch-ul și Router-ul

La o primă vedere switch-ul (Figura 2.2.) seamănă cu un HUB, din moment ce o funcție a lui este să asigure conexiunea mai multor dispozitive la un singur punct aflat în rețea. Scopul switch-lui este concentrarea conexiunii garantând lățimea de bandă. Switch-ul este un dispozitiv capabil să combine capacitatea de conexiune a unui HUB cu cea a unui bridge de reglare a traficului pentru fiecare port. Comută pachetele din porturile de sosire (interfețe) spre porturile de ieșire, în timp ce asigură fiecărui port frecvență maximă. Switch-ul folosește adrese MAC pentru a lua decizia de comutare: fiecare port al unui switch conține un fel de microbridge, cea ce îl face dispozitiv de nivel doi. Față de HUB care nu ia nici o decizie și trimite pachetele primite pe toate interfețele sale, un switch ia decizii după adresa MAC și va trimite pachetul pe un singur port ținând cont de tabela sa de adrese MAC. Aceasta este explicația pentru ca re se micșorează foarte mult traficul inutil în rețea și o dată cu el se menține lărgimea de bandă. La routerele care au port de consolă se pot crea diferite reguli după care să fie dirijat traficul în rețea în funcție de cerințe limitându-se manual traficul inutil sau nedorit. În ultimul timp sunt din ce în ce mai întâlnite switch-ul în module de router care iau decizii după adrese IP, dar aceste switch-uri sunt deja dispozitive de nivel 3. Acestea îmbină calitătile unui switch cu o parte din proprietățile unui router în ceea ce privește securitatea, fiind capabil să-și creeze tabele de routare și să controleze traficul în rețea în funcție de acestea.

Routerul (Figura 2.3.) este un dispozitiv de nivel rețea. Acesta are rolurile de a determina calea ce trebuie urmată de un pachet pentru a ajunge la destinație, de a interconecta și a schimba pachete între rețele diferite. Routerele pot fi echipamente dedicate sau simple calculatoare care au două sau mai multe interfețe Ethernet (plăci de rețea). Echipamentele dedicate au în componența lor un soft propriu care permite configurarea acestuia în funcție de necesit1ați, pe baza unor comenzi care diferă de la un producător la altul (CISCO, Allied Telesyn, 3Com). din cauza prețurilor destul de mari pentru aceste echpamente, pentru rețelele de mici dimensiuni se folosesc calculatoarele pe post de routere. Routerul este un dispozitiv de interconectare ce poate fi întâlnit mai ales la nivel WAN, dar și la nivelul rețelei locale, una dintre funcțiile sale principale fiind aceea de a oferii posibilitatea conectării LAN-urilor la WAN. Fiind un dispozitiv de nivel trei, router-ul va lucra cu adrese IP. Procesul de routare sau de determinare a căii optime se bazează pe construirea și menținerea unei tabele de rutare.

Figura 2.3. – Router-ul

O intrare într-o tabelă de rutare se numește rută și este compusă din minim trei elemente: adresă de rețea, mască de rețea, adresa următorului ruter și/sau interfață de plecare. Un pachet ajuns la router este despachetat pentru a obține antetul de nivel legătură de date. Acesta va conține doar adresa logică a destinației, dar nu și masca de rețea. Router-ul va verifica mai întâi dacă adresa destinației nu este cumva una dintre adresele sale. Dacă este printre adresele sale, atunci cadrul va fi trecut la nivelul superior, dacă nu router-ul va verifica dacă adresa destinației nu este în aceeași rețea cu interfața de pe care a primit pachetul. Dacă este, atunci va abandona prelucrările asupra respectivului pachet și va lua următorul pachet. În cazul în care destinația nu este nici el și nici nu se va afla pe aceeași interfață de unde a primit pachetul, atunci va începe procesarea tabelei de rutare. Va extrage prima rută și tabelă și va aplic masca de rețea adresei destinației conținută în antetul pachetului. Rezultatul îl va compara cu adresa de rețea a respectivei rute. Dacă cele două coincid, pachetul va fi trimis pe interfața specificată de router. Dacă nu, este extrasă o nouă rută din tabelă. Procesul se repetă până la ultima rută din tabelă sau până la găsirea primei potriviri. Dacă pachetul nu corespunde nici ultimei rute, atunci acesta este abandonat și se trece la pachetul următor. Înainte de a trimite pachetul sau de a îl abandona, tabela ARP a interfeței pe care a sosit pachetul va fi actualizată folosindu-se adresa MAC și cea IP a sursei. La nivelul legătură de date bridge-urile detectau coliziunile și nu le transmiteau mai departe, dar cadrele de difuzarea erau propagate mai departe. Detecția coliziunilor este una dintre principalele funcții ale nivelului legătură de date, iar router-ul, însușindu-și toate funcțiile primelor niveluri, va face atât regenerarea semnalului, cât și detecția coliziunilor. În plus routerele, spre deosebire de bridge-uri au acces și la informațiile de nivel rețea aceasta permițându-le controlul difuzărilor și al pachetelor de multicast. În mod implicit routerele nu transferă pachetele de difuzare sau de multicast. Concluzionând putem spune că routerele mărginesc atât domeniile de coliziune cât și pe cele de difuzare.

Capitolul 3

SISTEME DE OPERARE

3.1. Conceptul de sistem de operare

Un sistem de operare (operating sistem -OS) este software-ul de bază, cu ajutorul căruia aplicațiile de calculator și serviciile lucrează pe un calculator. La fel, un sistem de operare de rețea (network operating sistem – NOS) permite comunicarea între mai multe dispozitive și accesarea resurselor de către întreaga rețea. Un server poate avea instalat ca sistem de operare de rețea UNIX, Microsoft Windows NT, sau Windows Server 2000/Server 2003.

Cele mai comune funcții ale unui sistem de operare sunt cele de control a calculatorului din punct de vedere hardware, execuția programelor și cele de furnizare a unor interfețe grafice cât mai accesibile utilizatorilor. Sistemele de operare îndeplinesc aceste funcții pentru un singur utilizator (user). Mai mulți utilizatori pot lucra pe mașină dar nu se pot „loga” în același timp. În opoziție, un sistem de operare de rețea repartizează diferite funcții unui număr de stații de lucru aflate în rețea. Un sistem de operare de rețea se află în corelație cu serviciile sistemului de operare aflat pe fiecare stație de lucru, putând adăuga funcții ce permit accesul, la periferice spre exemplu ,unui număr mare de utilizatori în același timp.

Stațiile de lucru funcționează ca și clienți într-o rețea în care funcționează un sistem de operare de rețea. Când o stație de lucru devine client într-un astfel de mediu, software-ul permite unui user să acceseze toate resursele non-locale sau îndepărtate ca și cum ar face parte din sistemul local. Un sistem capabil să funcționeze ca un sistem-server trebuie să fie capabil să suporte multipli user-i simultan. Administratorul de rețea creează câte un cont pentru fiecare user, permițându-i în acest fel să se logheze și să se conecteze la server. Contul user-ului permite serverului să-l autentifice și să aloce acestuia resursele la care are acces. Sistemul ce îndeplinește o astfel de funcție poartă denumirea de sistem multi-user.

Un sistem de operare de rețea este un program ce îndeplinește mai multe funcții, capabil să execute multiple procese în același timp. Planificarea acestui tip de software alocă un anumit timp procesorului, memoriei sau altor resurse pentru a îndeplini dinamic sarcinile primite din partea tuturor utilizatorilor făcând în așa fel încât să nu îndeplinească anumite sarcini decât atunci când un utilizator este conectat. Când se alege un sistem de operare de rețea se au în vedere următoarele caracteristici:

Performanța – această caracteristică se referă la posibilitatea citirii-scrierii fișierelor

prin rețea între clienți și servere, fără a exista probleme. Acesta trebuie să fie capabil să mențină performanțe ridicate în situațiile în care are de îndeplinit numeroase cereri din parte clienților. Această caracteristică a devenit în zilele noastre un standard al acestor tipuri de programe;

Managementul și monitorizarea – interfața sistemelor de rețea furnizează diferite

aplicații pentru să se poată monitoriza funcționarea severului, traficul de informație dintre clienți, aplicațiile de printare, de scanare etc. De reținut că serverele necesită o monitorizare și o ajustare periodică;

Securitatea – un astfel de software trebuie să protejeze resursele pe care le distribuie.

Securitatea include și autentificare user-ilor înainte de a avea acces la anumite servicii pentru a preveni accesul neautorizat;

Scalabilitatea – este abilitatea unui sistem de operare de rețea de a adăuga, fără a

pierde din performanțe, noi clase și obiecte ori noi atribute claselor și obiectelor existente. Acesta trebuie să fie capabil să-și mențină performanțele atunci când noi user-i se loghează sau când sunt adăugate noi servere;

Stabilitatea – abilitatea de a livra servicii în condiții de trafic crescut și abilitatea de a

menține aceste servicii. Această caracteristică poate fi îmbunătățită prin folosirea mai multor medii de stocare și împărțirea sarcinilor între diferite servere.

Novell – NetWare

Prima versiune a NetWare a fost creată în 1983 și rula pe mașini care aveau un procesor 286 și 640 de KB de memorie RAM și oferea posibilitatea administratorului de a restricționa accesul unor utilizatori în anumite intervale de timp sau chiar pentru anumite zile, fără a mai fi necesară rulare altor programe. De atunci, platforma NetWare a cunoscut schimbări majore cea mai importantă fiind suportul stivei de protocoale TCP/IP în 1991. De asemenea, se puteau implementa anumite proprietăți fișierelor precum aceea de a ascunde fișierul, de a proteja fișierul la scriere, de a nu putea fi copiat. Spre deosebire de Microsoft Windows Workgroup, care era o platformă excelentă de creare a unei rețele, versiune 3.x a Netware oferea o excelentă securitate și o mai bună administrare a rețelei. Platforma NetWare a devenit populară, în special, datorită funcționării pe servere de Internet WWW. Față de sistemul de operare UNIX este foarte diferit, având o interfață mai prietenoasă (nu este necesară memorarea a sute, poate chiar mii de comenzi) și oferind posibilitatea funcționării programelor bazate pe DOS (precum cele de evidență a unelor note de plată, a unor conturi bancare etc). Toate aceste atuuri au făcut ca în decursul deceniului trecut să fie unul dintre cele mai folosite sisteme de operare de rețea prezent mai ales în cadrul firmelor, a unităților sanitare etc. Atacuri de genul celor prezentate în capitolul 7 sunt foarte greu de executat pe o platformă ce are un astfel de sistem de operare, de aceea încercările de spargere sunt foarte puține deoarece pentru a avea șanse de reușită atacul trebuie să provină din interiorul rețelei. Cel mai întâlnit atac este cel de refuz al serviciilor, care în cel mai rău caz poate duce la restartarea sistemului

UNIX

UNIX este numele unui grup de sisteme de operare care își au originea în 1969 la Bell Labs. Acesta a fost proiectat să poată suporta mai mulți user-i și mai multe cereri pe care ar fi putut să le primească de la aceștia. UNIX a fost primul sistem de operare care includea suportul pentru protocoalele de rețea. Istoria UNIX-ului este destul de complicată deoarece multe companii și organizații au contribuit la dezvoltarea sa. UNIX a fost la început scris într-un limbaj de tip „linie de asamblare”, un set primitiv de instrucțiuni ce controla funcțiile interne ale unui calculator (aceasta permitea UNIX-ulu să ruleze pe un anumit tip de calculator). După apariția limbajului C (1971-Dennis Ritchie), în 1973 Ken Thompson a rescris sistemul UNIX în limbajul C. Deoarece C este un limbaj de programare mai avansat, UNIX a putut fi instalat pe alte tipuri de calculatoare fără prea mare efort. Decizia de a dezvolta un sistem de operare portabil s-a dovedit a fi cheia succesului. În 1979 a fost lansată versiunea V7 care a devenit ulterior „părintele” celorlalte implementări. În timpul anilor ’70, UNIX s-a dezvoltat, rulând pe calculatoarele de la Bell Labs și calculatoarele câtorva universități.

În anii ’80, când UNIX a început să fie comercializat a fost folosit pentru a rula pe servere de rețele puternice, nu pe stații de lucru. Cele mai importante versiuni de UNIX existente astăzi sunt:

Hawlett Packard UNIX (HP-UX)

Berkely Software Designe, INC. (Bsd UNIX), care a produs derivate precum Free BSD

Santa Cruz Operation (SCO UNIX)

Sun Solaris

IBM UNIX (AIX).

UNIX, în formele sale variate, conțină să fie cunoscut prin securitatea sa și excelenta comportare în cazul aplicațiilor critice care sunt cruciale pentru organizațiile de orice fel. De asemenea, UNIX a integrat în totalitate stiva de protocoale TCP/IP. Cu toate că Microsoft Windows și-a câștigat popularitatea în ceea ce privește rețelele, mare parte a serverelor de Internet rulează pe sisteme UNIX. Din păcate UNIX-ul este asociat de cele mai multe ori cu acele componente scumpe și o interfață nu prea prietenoasă, însă recentele dezvoltări au schimbat din imagine.

Linux

În anul 1984, Richard Stallman (cercetător la MIT AI Labs) înființează fundația Free Software Fundation și demarează proiectul GNU (GNU’s Not UNIX) cu scopul de a crea o versiune gratis (open source) a sistemului UNIX. În anul 1990, proiectul conținea deja o serie completă de instrumente precum compilatorul GCC, editorul EMACS, dar nu avea partea centrală, nucleul sistemului de operare. În 1991, un student pe nume Linus Torvalds, a lansat prima versiune utilizabilă a unui sistem capabil să funcționeze pe primele tipuri de procesoare Intel. Torvalds a încercat să creeze un sistem de operare care să aibă a altă interfață decât cea a MsDos-ului și care să nu necesite licență. Acest sistem de operare avea la bază UNIX-ul, dar folosea software de programare ce făcea posibil modificarea sa oricărui utilizator deoarece era open-source. Spre sfârșitul anilor ’90 Linux a devenit o alternativă (locul al doilea din punct de vedere al numărului de utilizatori), combinând eficiența unui sistem pentru servere precum UNIX cu o interfață grafică prietenoasă precum cea folosită de Windows. Versiunile de Linux pot rula pe orice tip de procesor bazat pe 32 de biți, chiar și cele Intel 80386. Multe dintre versiunile de Linux pot fi descărcate de pe Internet gratis, printre cele mai importante fiind:

Red Hat Linux – distribuit de Red Hat Software

OpenLinux – distribuit de Caldera

Corel Linux

Slackware

Debian GNU/Linux

SuSE Linux

Linux este unul dintre cele mai puternice și sigure sisteme de operare din lume. Din această cauză a făcut numeroase incursiuni pe platforme puternice gen servere și este mai puțin întâlnit pe stații de lucru. Cu toate astea, Linux dispune de interfețe grafice asemănătoare Windows-ului ce pot fi folosite îndeosebi de utilizatorii începători. Numărul companiilor ce produc aplicații pentru Linux este mic în comparație cu numărul celor care produc aplicații pentru Windows; în orice caz, unele companii produc software-uri ce pot face ca aplicațiile de Windows să ruleze pe Linux.

Distribuitorii de versiuni de Linux au inclus în kit-ul de instalare pachete utile creării oricărui tip de rețea (de menționat că fișierul kernel al Linux-ului include platforma de protocoale TCP/IP). Printre avantajele utilizării unui sistem Linux se pot aminti: suportă priorități gen multitask și memorie virtuală, este un adevărat sistem de operare pe 32 de biți, iar programul în care a fost creat este accesibil oricui putând astfel fi îmbunătățit.

Microsoft

O dată cu apariția Windows versiunea 1.0 în noiembrie 1985, Microsoft a produs nenumărate versiuni ale sistemului de operare Windows, fiecare conținând îmbunătățiri și schimbări pentru a suporta diferite tipuri de utilizatori și pentru a servi diferitelor scopuri. Spre exemplu, versiunea NT 4 a fost creată pentru a funcționa într-un mediu în care să asigure rularea unor aplicații critice companiilor de afaceri. Există o versiune pentru stațiile de lucru, dar și una pentru servere. Un avantaj al acestei versiuni față de cele precedente este că unele aplicații ale Windows-ului pot fi executate pe mașini virtuale, iar eșecurile acestor programe pot fi izolate, nemaifiind necesară o restartare a sistemului. Windows NT este structurat în așa fel încât se poate controla accesul utilizatorilor la resursele serverului.

Bazat pe kernelul existent pe NT, o versiune mult mai recentă care se bucură de ambele tipuri de versiuni (pentru server și pentru desktop) este Windwos 2000. Windows 2000 suportă tehnologia plug-and-play, permițând instalarea unor dispozitive noi fără a necesară restartarea sistemului. De asemenea mai include și un fișier de criptare a sistemului pentru a proteja datele de pe hard-disk. Windows 2000 poate plasa anumiți utilizatori sau anumite resurse în „conteinere” numite unități organizaționale. Administrarea acestora poate fi făcută de un utilizator sau de un grup de utilizatori. Această caracteristică permite un control mult mai adecvat decât este posibil pe Windows NT 4.0.

Versiunea Profesională a Windows-ului 2000 nu a fost concepută în totalitate ca un sistem de operare de rețea, deoarece nu prevede un controler de domenii, un server DNS, un server DHCP și nici nu este livrată cu un pachet de servicii ce se pot găsii la versiunea Server 2000. Principalul scop al versiunii Profesionale este acela de a fi un sistem de operare pe un calculator client. Numărul componentelor hardware ce pot fi instalate pe un astfel de sistem este limitat deoarece a fost conceput pentru rețele de dimensiuni mici și pentru cele punct la punct. Poate juca rolul unui server de fișiere, de tipărire, de transport de fișiere (FTP) și de web. Din păcate nu suportă mai mult de 10 clienți conectați în același timp.

Versiunea pentru Server a Windows-ului 2000 adaugă noi funcții versiunii Profesionale, funcții specifice unui sistem de operare de rețele. Serviciile de Director Activ (Active Directory Services) funcționează ca un punct care centralizează organizarea utilizatorilor, a grupurilor, a serviciilor de securitate și a resurselor de rețea. Include capacitatea de a avea mai multe întrebuințări simultan cerute de sucursale ale diferitelor birouri sau alte departamente în cazul serviciilor enumerate mai sus. Este recomandată a fi folosită această versiune în cazul companiilor mici și mijlocii, putând îngloba conexiuni cu sisteme precum Novelle NetWare, UNIX sau AplleTalk. De asemenea poate fi configurat ca un server de comunicații pentru a furniza rețele de tip dial-up pentru utilizatori mobili. În cazul rețelelor foarte mari este recomandată folosirea versiunii Server Advanced, care suportă adăugarea de hardware și software necesare pentru crearea unor astfel de rețele.

Windows-ul XP Professional (în Home Edition nu există această facilitate) oferă facilități precum Active Directory, SQL Server și DNS Server prezente și în alte versiuni de Windows, dar și suport pentru Security Configuration Manager (SCM), un set de instrumente ce permite administratorilor să consolideze securitatea stațiilor de lucru prin intermediul unui singur fișier de configurare .inf sau template. Setările pentru securitate pot fi aplicate oricâtor mașini pe care rulează XP, indiferent dacă acestea sunt parte a unui Group Policy Object sau de sine stătătoare. O altă caracteristică specifică Windows XP o reprezintă utilitarul Internet Security and Acceleration Server 2004 (ISA Server) ce asigură rețelei o conectivitate rapidă și securizată la Internet, împreună cu uneltele performante integrate de administrare (mai multe informații pot fi găsite în Capitolul V – Securitatea în rețelele informatice). Un alt serviciu este Exchange 2003 Enterprise, creat pentru a oferi utilizatorilor un serviciu de poștă electronică. Acesta este foarte ușor de administrat și oferă acces de la distanță.

Capitolul 4

STIVE DE PROTOCOALE DE REțele

4.1. Noțiuni introductive

Protocolul este un set de reguli sau convenții care determină formatul și transmiterea datelor. Un protocol se referă la ceva concret: la cum funcționează mail-ul, paginile de web etc. Ce se întâmplă însă dacă se dorește standardizarea unei transmisii de date între două calculatoare? Această transmisie este un lucru extrem de complex, nu poate fi tratată în cadrul unui singur protocol, deoarece acesta nu ar mai trata ceva concret și nu ar putea prevedea marea gamă de situații posibile. Atunci a intervenit noțiunea de stivă de protocoale.

Problema principală a fost împărțirea unei transmisii de date între două stații în mai multe faze independente, mai ușor de analizat. O stivă de protocoale este, de fapt, o stivă de mai multe faze prin care trec datele în cadrul unei transmisii de date. În fiecare din aceste faze există posibilitatea de a alege unul dintre mai multe protocoale. Cu alte cuvinte, un protocol aparține unei anumite faze a transmisiei. Pentru că este mult prea complicată și nefiabilă, impunerea de reguli ce se referă la transmisia în sine, atunci s-au impus anumite reguli pentru fiecare fază a transmisiei. Un set de astfel de reguli, precum și împărțirea inițală într-un număr de faze se numesc stivă de protocoale.

Un model stratificat pentru rețelele de calculatoare s-a impus, din considerente practice și teoretice, de mult timp. Fără un astfel de model, dezvoltarea, înțelegerea și, în ultimă instanță, funcționarea rețelelor ar fi imposibilă. Acest gen de model aduce următoarele avantaje:

– împarte comunicația în rețea, precum și complexitatea acesteia și numeroase aspecte implicate, în părți mai mici, care pot fi studiate individual și tratate separat;

– standardizează componentele de rețea pentru a putea face posibilă dezvoltarea în sistem concurențial al dispozitivelor;

– permite diferitelor tipuri de hardware și software de rețea să comunice între ele;

– modularitate – împiedică schimbările dintr-un nivel să producă modificări în alte nivele; astfel, fiecare nivel este separat și se poate dezvolta independent;

-permite existența unor dispozitive de interconectare mai ieftine și mai eficiente, care nu cunosc decât protocoalele de pe câteva nivele.

În concluzie pentru ca informația să ajungă de la un utilizator la altul trebuie să treacă prin nivelele de mai jos. Un nivel oferă servicii nivelului superior și folosește serviciile nivelului de sub el.

4.2. Modelul iso-Osi

o dată cu puternica dezvoltare a echipamentelor de rețele au apărut diferite companii care își extindeau rețelele, dar care aveau probleme în a comunica cu alte companii deoarece nu foloseau aceleași standarde (precum oamenii care nu vorbesc aceeași limbă și au probleme în a comunica).

ISO (Organizația Internațională de Standardizare), una dintre cele mai importante organizații de standardizare, a studiat diferite tipuri de rețele existente în acea vreme (DECnet, SNA, TCP/IP) și a propus în 1984 un model de referință numit OSI – Open System Interconnection. Din acel moment toți producătorii de echipamente de rețele s-au raportat la modelul OSI.

OSI a fost elaborat pentru a furniza producătorilor de echipamente de comunicație un set de standarde, a căror respectare asigura compatibilitatea și intercompatibilitatea între diverse tehnologii furnizate de firme diferite. Însuși termenul Open din denumire semnifică faptul că utilizarea standardelor este publică și gratuită spre deosebire de sistemele proprietary a căror folosire trebuie licențiată de firma care le-a produs și distribuit.

Acest model definește șapte nivele, împreună cu standarde și un set de protocoale pentru rețele. Este un model teoretic, construit pentru a schematiza comunicația într-o rețea de calculatoare și pentru a explica traseul informație dintr-un capăt în altul al rețelei. Deși nu este singurul model existent, este cel mai folosit în învățământ, pentru că ilustrează cel mai bine separarea între nivele și împărțirea comunicației în segmente mai mici, mai ușor de definit și, în consecință, mai ușor de dezvoltat. Deși există mai multe protocoale care sunt mai greu de încadrat pe niveluri OSI, totuși toți producătorii de echipamente de rețea și de protocoale noi își definesc produsele cu ajutorul nivelelor OSI.

Modelul OSI al Organizației Internaționale pentru Standardizare (ISO) este structurat pe șapte nivele (layers): Aplicație, Prezentare, Sesiune, Transport, Rețeam Legătură de date, Fizic (Figura 4.1.).

Figura 4.1. – Modelul stratificat pe nivele

Nivelul fizic

Nivelul fizic se ocupă de transmiterea biților printr-un canal de comunicație. Proiectarea trebuie să garanteze că atuci când unul din capete trimite un bit 1, acesta e receptat în cealaltă parte ca un bit 1, nu ca un bit 0. problemele tipice se referă la câți volți trebuie utilizați pentru a reprezenta un 1 și câți pentru un 0, dacă transmisia poate avea loc simultan în ambele sensuri, cum este stabilită conexiunea inițială și cum este întreruptă când au terminat de comunicat ambele părți, căți pini are conectorul de rețea și la ce folosește fiecare pin.

Nivelul fizic definește specificații electrice, mecanice, procedurale și funcționale pentru activarea, menținerea și dezactivarea legăturilor fizice între sisteme. În această categorie de caracteristici se încadrează nivelurile de tensiune, sincronizarea schimbărilor acestor niveluri, ratele de reansfer fizice, distanțele maxime la care se poate transmite și alte atribute similare care sunt definite de specificaii fizice.

Scopul nivelului fizic este de a transporta o secvență de biți de la o mașină la alta. Pentru aceasta pot fi utilizate diverse medii fizice. Fiecare dintre ele este definit de lărgimea sa de bandă, întârziere, cost și ușurința de instalare și de instalare. Îl putem asocia cu termenii semnal și medii de transmitere. Voi face o scurtă prezentare a principalelor medii de treansmisie și voi începe cu cele bazate pe cupru.

Cablul coaxial

Cuprul este cel mai utilizat mediu în rețelele LAN, în principal din cauză că are prețuri reduse. Pentru a înțelege mai bine cum sunt realizate diferitele tipuri de cable (coaxial, UTP, STP) trebuie să se înțeleagă ce se întâmplă de fapt prin conductorul de cupru. Biții sunt codați ca semnale electrice. Cel mai simplu mod de a coda biții ar fi utilizarea a 0V (volți) pentru a reprezenta un „zero” logic și +5V pentru a utiliza un „unu logic. Acest procedeu poartă numele de codarea NRZ (non-return to zero). Cu toate acestea pentru a izola mai bine semnalul electric de zgomot este utilizată o metodă mai complexă, și anume codarea Manchester. În această codare „1” este codat ca o tranziție a semnalului electric de la mare la mic. Zgomotul electric poate avea multe cauze ca de exemplu EMI (interferență electromagnetică) și RFI (interferență radio), iar acestea sunt generate de dispozitive elecromagnetice din apropiere. La realizarea cablului coaxial au fost luate în considerare minimalizarea interferențelor. Cablul coaxial are un conductor de cupru, îmbrăcat într-un izolator de plastic, care este acoperit la rândul lui de un înveliș de cupru care asigură protecția față de interferențe. Acest înveleiș este o parte a circuitului de date. Toate acestea sunt introduse într-un înveliș exterior care împiedică degradarea mecanică a firului. Firul se termină cu un conector BNC (Figura 4.2.) iar cuplarea la placa de rețea se realizează prin intermediul unui conector de tip T. La capetele retelei pentru echilibrarea liniilor de transmisie, trebuie instalat în conectorul T undispozitiv numit terminator (un rezistor ce trebuie să fie egal cu impedanța liniei).

Figura 4.2. – Cablul coaxial

Teoretic pot fi atinse viteze de 10-100 Mbps (megabiți pe secundă). Cu toate că semnalul este bine protejat de interferențe, cablul coaxial are în acest moment numai o semnificație istorică deoarece a fost înlocuit cu alternative mai bune ca de exemplu UTP și STP. Standardele TIA/EIA specifică faptul că pentru rețelele noi cablul coaxial nu ar mai trebui să fie folosit.

Cablul Unshielded Twisted Pair (UTP) și Shielded Twisted Pair (STP)

UTP (Unshielded Twisted Pair) este probabil cel mai obișnuit tip de cablu utilizat astăzi. CAT1 UTP este un tip de cablu UTP folosit pentru comunicațiile telefonice. Cablul CAT5 UTP este folosit în rețele și, teoretic, poate atinge o viteză de 100 de Mbps. Acest cablu conține patru perechi de câte două fire, fiecare dintre acestea fiind învelite într-un izolator de plastic codat cu niște culori și cu firele din fiecare pereche împletite unul în jurul celuilalt. Toate acestea sunt așezate într-un înveliș exterior care asigură protecția împotriva deteriorărilor mecanice (Figura 4.3.).

De ce sunt împletite firele unul în jurul celuilalt? Atunci când doi conductori sunt așezați aproape unul de celălalt câmpul magnetic creat de curentul electric care trece printr-un fir influențează semnalul electric din celălalt fir. Prin împletirea lor acest efect este în mare parte redus. Din acest motiv standardele TIA/EIA recomandă ca la mufarea RJ-45 a cablului să nu rămână mai mult de 1,3 cm neîmpletiți.

În ce ordine se introduc cele opt fire ale cablului în mufă? Ei bine, depinde de destinația cablului. Dacă este folosit pentru o conexiune PC-HUB sau PC-Switch, cablul este de tip roll-over. Dacă se conectează direct două PC-uri se folosește un cablu cross-over. Dacă PC-ul se conectează la un router pentru administrare, se va utiliza un cablu de consolă.

În concluzie, pentru a realiza un cablu roll-over, ambele mufe sunt sertizate după modelul T568 A (Tabelul), iar pentru un cablu cross-over, una T568A, iar cealaltă T568B (Tabelul). Cele două variante de sertizare sunt prezentate grafic în Figura 4.4.

Figura 4.4. – Modurile de sertizare T568 Figura 4.3. – Cablul UTP

Dezavantajul principal al cablului UTP este că acest tip de cablu este mai predispus decât alte cabluri la zgomotul generat de câmpurile electromagnetice. Poate fi folosit numai pe distanțe mici, de până la 100 m, fără ca semnalul să fie deteriorat sub standardele acceptate. Cu toate acestea din cauză că este ieftin, subțire și ușor de instalat este capabil să atingă viteze mari, este tipul de cablu cel mai des utilizat. Un segment UTP poate avea o lungime de numai 100 m pentru ca semnalul să își păstreze calitatea și semnalul de bruiaj să aibă timp să ajungă la toate stațiile. Presupunând că dorim o distanță mai mare semnalul trebuie fie amplificat pentru a fi transmis pe o distanță mai mare cu ajutorul unui repertor, fie separat pentru a nu se propaga semnalul de bruiaj.

Un repetor este un dispozitiv care poate regenera semnalul astfel încât dimensiunile rețelei să poată fi mărite. Un repetor multiport poartă numele de HUB, un element esențial într-o rețea Ethernet.

Un alt tip de cablu din cupru este STP (Shielded Twisted Pair). Acesta seamănă cu cablul UTP diferența constând în faptul că perechile de fire sunt protejate contra interferențelor de o folie metalică și care se comportă ca un ecran. Acest ecran susține în același timp și greutatea cablului. Bineînțeles aceste ajantaje se reflectă și în prețul cablului, care este mai scump decât cablul UTP.

Rețele optice

Cablul din fibră optică este un mediu utilizat pentru transmiterea semnalelor luminoase. Tehnologia folosită la realizarea acestui tip de cablu nu a fost disponibilă până înanii ’60 așa că este ceva relativ nou. Folosirea cablurilor din fibră optică oferă multe avantaje. În primul rând nu sunt afectate de interferențele electromagnetice. În al doilea rând, pot fi atinse viteze mai mari pentru transmiterea datelor. Vitezele variază în intervalul 100Mbps (terabiți pe secundă – 1012 diți transmiși într-o secundă). Aceste cabluri pot avea lungimi de 2.500 – 3.000 m.

Cablurile din fibră optică transmit semnale lumioase în loc de impulsuri electrice. Un „1” este reprezentat de un semnal luminos, iar un „0” de lipsa luminii. Aceste semnale luminoase sunt ghidate prin cablu de fibră optică. Acest conductor este realizat din sticlă de înaltă calitate și fără impurități, cu un indice mare de refracție numit miez. Acesta este înconjurat de un înveliș de sticlă sau din plastic cu un indice mai mic de refracți numit înveliș. Când lumina care trece prin centru lovește marginea, se reflectă toată rămânând astfel în miez. Centrul și marginile sunt foarte delicate, din acest motiv sunt învelite într-un material care asigură rezistența și care este la rândul său acoperit de un înveliș extern. Deteriorările mecanice ale părților care conduc semnalele luminoase trebuie evitate. Chiar și cea mai mică zgârietură a centrului va afecta serios calitatea semanlului. Acesta este unul dintre dezavantajele cablului din fibră optică. Celălalt și cel mai important este prețul. Fibra optică este mediul cel mai scump de transmitere a datelor.

Datorită felului în care sunt realizate anumite cabluri din fibră optică prin acestea pot trece mai multe semnale luminoase fără ca acestea să se interfereze unele cu altele. Acest lucru este realizat dând semnalelor luminoase unghiuri diferite la intrarea în cablu. Acest tip de cablu din fibră optică se numește multimode (Figura 4.5.). Ajantajul este bineînțeles prețul. Poți economisi mult atunci când este folosită fibra multimode pentru că sunt folosite mai puține cabluri. Dezavantajul este că poate avea o lungime maximă de numai 2.500 m și operează la viteze mai mici. Cablul din fibră optică care permite trecerea numai a unui singur semnal luminos poartă denumirea de sigle mode (Figura 4.5.). Aceste cabluri sunt mai subțiri și pot avea o lungime de 3.000 m.

Figura 4.5. – Tipuri de fibră optică Figura 4.6. – Diferite tipuri de medii de transmisie

Datorită vitezelor mari care pot fi obținute și datorită cantității mari de informații care sunt transmise prin acest tip cablu fibră optică este folosită în special la interconectarea clădirilor sau a diferitelor etaje ale unor clădiri realizându-se ceea ce se numește backbone (coloană vertebrală a unei rețele).

O ultimă problemă legată de fibră optică constă în realizarea legăturii optice între mediul de transmisie și interfața de rețea. Conexiunea trebuie să asigure atât propagarea lumicii, cât și rezistența mecanică a ansamblului fibră – mufă.

Chiar și vidul poate fi un mediu de transmitere a semnalelor. Undele electromagnetice se propagă prin aer sau vid la viteza luminii. Această caracteristică le face ideale pentru aplicații de genul nave spațiale sau sateliți, dar și apicații mai pământești de genul telefoanelor mobile. Aerul este, de asemenea, mediul de transmitere pentru rețelele de calculatoare wireless (fără sârmă) care au început să capete o importanță din ce în ce mai mare.

Dispozitive de nivel fizic

Conform principiilor ISO-OSI, dispozitivele de nivel fizic asigură legătura între două stații de nivelul cel mai coborât. Singurul dispozitiv de nivel fizic care mai există astăzi este HUB-ul însă, din punct de vedere istoric primul dispozitiv de nivel 1 a fost repertorul (vezi cap.2).

Nivelul legătură de date

Sarcina principală a nivelului legătură de date este de a transforma un mijloc oarecare de transmisie într-o linie care să fie disponibilă nivelului rețea fără erori de transmisie nedetectate. Nivelul legătură de date realizează această sarcină obligând emițătorul să descompună date de intrare în cadre de date (în mod tipic, căteva sute sau mii de octeți), să transmită cadrele secvențial și să prelucreze datele de confirmare trimise înapoi de receptor. Deoarece nivelul fizic nu face decăt să accepte și să transmită un flux de biți, fără să se preocupe de semnificația sau de structura lor, responsabilitatea pentru marcarea și recunoașterea delimitărilor între cadre îi revine nivelului legătură de date. Aceasta se poate realiza prin atașarea unor șabloane speciale de biți la începutul și la sfârșitul cadrului. În cazul în care șabloanele respective de biți pot apărea accidental în datele propriu-zise, trebuie luate măsuri speciale de precauție pentru ca aceste șabloane să nu fie incorect interpretate ca delimitatori de cadre. Un zgomot apărut pe linie poate distruge un cadru în întregime. În acest caz, programele nivelului legătură de date de pe mașina-sursă pot să retransmită cadrul. Transmiterile multiple ale aceluiași cadru introduc posibilitatea cadrelor duplicate. Un cadru duplicat poate apărea la transmisie în situația în care s-au pierdut cadrele de confirmare trimise de la receptor înapoi spre emițător. Rezolvarea problemelor apărute datorată cadrelor deteriorate, pierdute sau duplicate cade în sarcina nivelului legătură de date. Acesta poate oferii nivelului rețea câteva clase de servicii diferite, fiecare de o calitate și un preț diferite. O altă problemă care apare la nivelul legătură de date (și la majoritatea nivelurilor superioare) este evitarea inundării unui receptor lent cu date provenite de la un emițător rapid. În acest scop sunt necesare mecanisme de reglare a traficului care să permită emițătorului cât spațiu-tampon deține receptorul la un moment curent. Controlul traficului și tratarea erorilor sunt deseori integrate.

Pe scurt, nivelul legătură de date este responsabil cu transmiterea corectă și sigură a datelor printr-o legătură fizică existentă, între două puncte conectate direct prin această legătură fizică, preocupându-se în același timp și de controlul fluxului fizic (flow control), dar și de detecția și anunțarea erorilor. Nivelul fizic nu poate realiza acest lucru, deoarece la nivelul fizic nu se poate vorbi despre nici un fel de date sau cadre (frames), ci numai despre biți și mai exact, despre reprezentarea fizică a acestora (niveluri de tensiune, intensitate a luminii etc).

Acest nivel se ocupă cu probleme de genul adresarea hardware, topologia rețelei și felul în care computerele dintr-o rețea accesează mediul comun.

Când datele din nivelul Aplicație circulă prin stivă pentru a ajunge până la nivelul Fizic aceste date sunt împărțite în unități mai mici care primesc informații adiționale (headere și trailere). Aceste unități au fiecare câte un nume, unul pentru fiecare nivel cae încapsulează date. Datele încapsulate de nivelul 2 poartă Figura 4.7. – împachetarea datelor numele de frames. Cu ajutorul biților primiți din header și trailer

pot fi identificate sursa și destinația datelor transmise și pot fi găsite pachetele de date care conțin erori, asigurând în accest mod fiabilitatea comunicării în rețea(Figura 4.7.).

Acest produs seamănă foarte mult cu trimiterea unei scrisori unui prieten: se introduce scrisoarea (datele din nivele superioare) într-un plic și pe plic se scrie adresa prietenului și adresa proprie. Informațiile scrise pe plic vă asigură că scrisoarea va fi transmisă în direcția cea bună de serviciile poștale (dispozitivele din rețea) până când va ajunge în sfârșit în cutia poștală a prietenului.

Nivelul rețea

Nivelul rețea se ocupă de controlul funcționării subrețelei. O problemă-cheie în proiectare este determinarea modului în care pachetele sunt dirijate de la sursă la destinație. Dirijarea se poate baza pe tabelele statice care sunt „cablate” intern în rețea și care sunt schimbate rar. Traseele pot fi stabilite la începutul fiecărei conversații, de exemplu la începutul unei sesiuni la terminal. În sfârșit, dirijarea poate fi foarte dinamică, traseele determinându-se pentru fiecare pachet în concordanță cu traficul curent din rețea.

Multe probleme pot apărea când un pachet trebuie să călătorească dintr-o rețea în alta ca să ajungă la destinație. Modul de adresare folosit de a doua rețea poate să difere de cel de prima. A doua rețea poate chiar să nu accepte de loc pachetul pentru că este prea mare sau protocoalele pot fi diferite. Rezolvarea acestor probleme în vederea interconectării rețelelor eterogene este sarcina nivelului rețea.

În rețelele cu difuzare problema dirijării este simplă, astfel că nivelul rețea este adeseori subțire sau chiar nu există deloc. Dacă în rețea există prea multe pachete simultan, ele vor intra unul pe traseul celuilalt și astfel se vor produce congestii. Controlul unor astfel de congestii îi revine tot nivelului rețea. Nivelul rețea este un nivel complex care oferă conectivitate și selectează drumul de urmat între două sisteme gazde care pot fi localizate în rețele separate geografic. Acesta este nivelul cel mai important în cadrul Internetului, asigurând posibilitatea interconectării diferitelor rețele. Tot la acest nivel se realizează adresarea logică a tuturor nodurilor din Internet. La nivelul rețea operează routerele, dispozitivele cele mai importante în orice rețea de mari dimensiuni.

Nivelul transport

Rolulu principal al nivelului transport este să accepte date de la nivelul sesiune, să le descompună dacă este cazul, în unități mai mici, să transfere aceste unități nivelului rețea și să se asigure că toate fragmentele sosesc corect la celălat capăt. În plus, toate acestea trebuie făcute eficient și într-un mod care izolează nivelurile de mai sus de inevitabilele modificări în tehnologia echipamentelor.

În condiții normale nivelul transport creează o conexiune de rețea distinctă pentru fiecare conexiune de transport cerută de nivelul sesiune. În cazul în care conexiunea de transport necesită o productivitate mare, nivelul transport poate totuși să creeze conexiuni de rețea multiple și să dividă datele prin conexiunile de rețea, astfel încât productivitatea să crească. Pe de altă parte, în cazul în care creearea și întreținerea unei conexiuni de rețea este costisitoare, nivelul transport ar putea reduce costul prin multiplexarea câtorva conexiuni de transport pe aceeași conexiune de rețea. În oricare dintre cazuri, nivelului transport i se cere să facă multiplexarea transparentă pentru nivelul sesiune.

Nivelul transport determină, de asemenea, ce tip de serviciu să furnizeze nivelul sesiune, și în final, utilizatorilor rețelei. Cel mai obișnuit tip de conexiune transport este un canal punct-la-punct fără erori care furnizează mesajele sau octeții în ordinea în care au fost trimiși. Alte tipuri posibile de servicii de transport sunt transportul mesajelor individuale – fără nici o garanție în privința ordinii de livrare-și difuzarea mesajelor către destinații multiple. Tipul serviciului se determină când se realizează conexiunea. Nivelul tansport segmentează datele în sistemul sursă și le reasamblează la destinație. Limita dintre nivelul transport și nivelul sesiune poate fi văzută ca garanția între protocoalele aplicație și protocoalele de transfer de date. În timp ce nivelurile aplicație, prezentare și sesiune se preocupă cu preobleme legate de aplicații, cele patru niveluri inferioare se ocupă cu probleme legate de transportul datelor. Nivelul transport încearcă să ofere un serviciu de transport de date care să izoleze nivelurile superioare de orice specificități legate de modul în care este executat transportul datelor. Mai specific, probleme cum ar fi siguranța sunt responsabilitatea nivelului transport. În cadrul oferirii de servicii de comunicare, nivelul transport inițiază, gestionează și închide circuitele virtuale. Pentru a fi obținută o comunicație sigură, servicii de detectare și recuperare din erori sunt oferite tot la acest nivel. Tot aici este realizat controlul fluxului.

Nivelul sesiune

Nivelul sesiune permite utilizatorilor de pe mașini diferte să stabilească între ei sesiuni. Ca și nivelul transport, o sesiune permite transportul obișnuit de date, dar furnizează totodată și servicii îmbunătățite, utile în anumite aplicații. O sesiune poate fi utilizată pentru a permite unui utilizator să se conecteze la distanță pe un sistem cu divizarea timpului sau să transfere un fișier între două mașini. Unul dintre serviciile nivelului sesiune se referă la contolul dialogului. Sesiunile pot permite să se realizeze trafic în ambele senuri simultan sau numai într-un sens odată. Dacă este permis traficul într-un singur sens, nivelul sesiune poate ajuta să se țină evidența emițătorilor cărora le vine rândul să transmită. Un serviciu sesiune înrudit este gestionarea jetonului; în unele protocoale este esențial ca cele două părți să nu încerce să nu realizeze aceeași operație în același timp. Pentru a trata aceste situații nivelul sesiune dipune de jetoane care pot circula între mașini. Numai partea care deține jetonul are voi să realizeze operația critică.

Un alt serviciu sesiune este sincronizarea. Să considerăm problemele care pot apărea atunci când se încearcă transferarea unui fișier între două mașini, în condițiile în care transferul durează 2 ore, iar intervalul mediu de cădere a legăturii este de 1 oră. După fiecare eșec tot tranferul va trebui inițiat din nou și nu va reuși nici încercarea următoare. Pentru a elimina problema respectivă, nivelul sesiune prevede o modalitate de a introduce în flux de date puncte de control, astfel încât după un eșectrebuie să se reia numai transferul datelor de după ultimul punct de control.

Așa cum implică și numele său, nivelul sesiune se ocupă cu stabilirea, menținerea, gestionarea și terminarea sesiunilor în comunicarea dintre două mașini. Nivelul sesiune oferă servicii nivelului prezentare; el realizează sincronizarea între nivelurile prezentare ale celor două stații și gestionează schimbul de date între acestea. În plus față de realizarea sesiunilor, nivelul sesiune oferă bazele pentru transferul eficient de date, pentru clase de servicii, pentru raporatrea excepțiilor nivelurilor sesiune, prezentare și aplicație.

Nivelul prezentare

Nivelul prezentare se asigură că informația transmisă de nivelul aplicație al unui sistem poate fi citită și interpretată de către nivelul aplicație al sistemului cu care aceasta comunică. Dacă este necesar, nivelul prezentare face traducerea între diverse formate de reprezentare, prin intermediul unui format comun. Tot nivelul prezentare este responsabil cu eventuala compresie/decompresie și criptare/decriptare a datelor.

Nivelul aplicație

Nivelul aplicație este cel care este situat cel mai aproape de utilizator; el oferă servicii de rețea aplicațiilor utilizator. Diferă de celelalte niveluri OSI prin faptul că nu oferă servicii nici unui altui nivel, ci numai unor aplicații ce sunt situate în afara nivelului OSI. Nivelul apicație stabilește disponibilitatea unui calculator cu care se dorește inițierea unei conexiuni, stabilește procedurile ce vor fi urmate în cazul unor erori și verifică integritatea datelor. Nivelul aplicație conține o varietate de protocoale frecvent utilizate. De exemplu, în lume există sute de tipuri de terminale incompatibile. Gândiți-vă la impasul în care se află un editor în mod ecran care trebuie să lucreze într-o rețea cu multe tipuri diferite de terminale, fiecare cu un aspect diferit al ecranului și cu secvențe ESCAPE diferite pentru introducerea și ștergerea textului, mutarea cursorului etc. O modalitate de a se rezolva problema este să se definească un terminal virtual de rețea abstract și să se scrie editoare și alte programe care știu să lucreze cu acesta. Pentru a putea lucra cu orice tip de terminal, este necesar un program care să pună în corespondență funcțiile teminalului virtual de rețea și terminalul real. De exemplu, atuci când editorul mută cursorul din terminalul virtual în colțul din stânga sus al ecranului, programul trebuie să aplice secvența potrivită de comenzi pentru terminalul real, astfel încât să se mute și cursorul acestuia. Toate programele terminalului virtual se află pe nivelul aplicație. Un alt rol al niveluilui aplicație este nivelul aplicație. Transferul unui fișier între două sisteme de fișiere diferite propune rezolvarea acestor incompatibilități și a altora de acest gen.

Modelul TCP/IP

Deși modelul OSI este universal recunoscut, inițiatorul din punct de vedere istori și tehnic al standardelor pentru Internet este însă modelul de referință și stiva de protocoale TCP/IP. Modelul de referință TCP/IP reprezintă cel mai flexibil mod de transport disponibil și permite computerelor din întreaga lume, rulând sisteme de operare complet diferite, să comunice între ele. TCP/IP este prescurtarea de la Transmission Control Protocol/Internet Protocol. Dezvoltarea lui a început în anii 1960 sub forma unui proiect finanțat de SUA. Standardul TCP/IP este folosit în acest moment pentru transmisiile de date din cea mai mare rețea existentă – Internetul.

Modelul de referință TCP/IP a fost creat de Departamentul Apărării din SUA pentru a deveni rețeaua supremă-care să supraviețuiască în orice condiții. Agenția ARPA despre care am vorbit în primul capitol a creat în anul 1975 protocolul TCP/IP pentru a interconecta rețelele militare, dar a furnizat pe gratis standardele de protocol agențiilor guvernamentale și universităților. La 1 ianuarie 1983, TCP/IP a devenit unicul protocol oficial. Practic toate calculatoarele conectate la Internet utilizează familia de protocoale TCP/IP. punctele forte ale acestei stive sunt:

este independentă de producător (vânzător);

nu este protejată prin legea copyright-ului;

se poate utliza atât pentru rețele locale (LAN), cât și pentru rețele globale (WAN);

se poate utiliza pe aproape orice tip de calculator.

TCP/IP este un set de protocoale stabil, bine definit și complet care asigură transferul pachetelor de date cu o rată foarte mică de eroare printr-o rețea neomogenă de calculatoare. TCP/IP este o suită de protocoale, dintre care cele mai importante sunt TCP și IP.

Din punct de vedere arhitectural protocoalele TCP/IP au patru niveluri în loc de șapte ca în modelul OSI. Cele patru nivele ale modelului TCP/IP sunt: nivelul aplicație, nivelul transport, nivelul Internet și nivelul rețea.

Nivelul Aplicație

Realizatorii modelului TCP/IP au considerat că protocoalele nivelului cel mai de sus trebuie să includă detalii ale nivelului sesiune și prezentare, așa că au creat nivelul aplicație ce tratează protocoalele de nivel înalt, probleme de reprezentare, codificare și control al dialogului. TCP/IP combină toate problemele aflate în legătură cu nivelul aplcație într-un singur nivel, asigurăndu-se că aceste date sunt corect împachetate pentru următorul nivel.

Nivelul transport

Nivelul transport se ocupă de problemele legate de performanțele sistemului, controlul fluxului și corectarea greșelilor. Unul din protocoalele sale Transmission Conrtol Protocol (TCP), propune modalităti flexibile de comunicare, cu flux de date excelent, cât mai puține erori. TCP este un protocol prientat pe conexiune. Propune dialogul dintre sursă și dsetinație în timpul în care împachetează informația nivelului aplicație în unități numite segmente. Orientat pe conexiune nu înseamnă că există un circuit între calculatoarele comunicante; presupune de fapt că segmentele nivelului 4 sunt retransmise după o anumită perioadă în caz că nu au ajuns la destinație în formă corectă.

Nivelul Internet

Acest nivel iși propune transmiterea pachetelor de la sursă din orice retea a interconexiunii si sosirea lor la destinație independent de calea urmată. Protocolul specific acestui nivel e Internet protocol (IP). Determinarea căii optime se face la acest nivel . Este asemănător cu sistemul poștal – când se trimite o scrisoare , nu are importanță cum ajunge la destinație (există multiple căi ), dar ca ajunge sigur.

Nivelul rețea

Numele acestui nivel e extrem de confuz. Se mai numește și nivelul gazdă pentru retea sau acces la rețea. Este nivelul ce se ocupă de problemele pe care le întampină un pachet IP pentru a realiza o conexiune fizică, și apoi o altă conexiune fizică. Include detalii ale technologiei LAN și WAN și toate atributele caracteristice nivelului fizic și legatura de date din modelul OSI.

4.2.1. Comparație între modelul OSI și modelul TCP/IP

Figura 4.8. – Comparație OSI – TCP/IP

Dacă se face comparația între modelul OSI și modelul TCP/IP, se observă că există asemănări și diferențe.

Asemănări:

Amândouă au nivele

Amandouă au nivelul aplicație, deși presupun servicii diferite;

Au nivelurile transport și rețea comparabile;

Technologia comutării pachetelor (nu a circuitelor comutate) e prezentă

Deosebiri:

TCP/IP combină problemele nivelurilor aplicație si sesiune în nivelul aplicație;

TCP/IP combină nivelurile legătură de date și nivelul fizic al modelului OSI într-un singur nivel TCP/IP – acces la rețea. Pare mult mai simplu pentru că are mai puține nivele;

4.3. Protocoalele TCP/IP reprezintă standarde în jurul cărora s-a dezvoltat Internetul, așa că modelul TCP/IP e mult mai răspândit din cauza protocoalelor sale. În opoziție, nici o rețea nu e construită în jurul protocoalelor modelului OSI, deși toată lumea folosește modelul OSI pentru a evalua o rețea. Din aceste considerente a fost prezentată partea fizică a rețelelor conform modelului OSI, iar în cadrul modelului TCP/IP vor fi prezentate celelalte protocoale.

În figura 4.9. este prezentată echivalența între cele două tipuri de protocoale.

Figura 4.9. – Protocoale TCP/IP

4.3.1. Nivelul Transport – Internet Protocol (IP)

RFC-ul ce definește protocolul IP a fost publicat în 1981 și, precum Costituția SUA este folosit și acum în aceeași formă, toată lumea trecând sub tăcere cele câteva amendamente majore pe care le-a suferit.

Structura antetului IP

Protocolul IP este definit de mai bine de 20 de ani; ar trebui oare studiul antetului IP să fie oare abordat la o oră de istorie a calculatoarelor?

Antetul IP, chiar dacă nu a fost amendat direct nu este doar o mărturie a rețelelor asupra viziunilor de calculatoare pe care o aveau cei de acum 20 de ani, ci, chiar dacă ne place sau nu este modul în care lumea noastră de azi este găndită. Multe dintre tehnologiile pe care le avem azi nu sunt neapărat cele mai performant ci sunt „IP compliant”.

Orice pachet ajuns la nivelul rețea va fi reîmpachetat, adăugându-i-se antetul IP. În figura de mai jos sunt prezentate câmpurile ce compun antetul de mai jos, urmând apoi o scurtă descriere a acestora.

Câmpul Versine memorează cărui versiuni de protocol îi aparține pachetul. Prin includerea unui câmp versiune în fiecare antet, devine posibil ca tranziția dintre versiuni să țină luni sau ani cu unele mașini rulând veche versiune, iar altele rulând-o pe cea nouă. Versiunea curentă a protocolului este 4 și din acest motiv i se mai spune IP v4.

Figura 4.10. – Câmpurile unui pachet IP

Din moment ce lungimea antetului nu este întotdeauna constantă, un câmp din antet, IHL, este pus la dispoziție pentru a spune cât de lung este antetul, în cuvinte de 32 de octeți. Valoarea minimă este 5 care se aplică atunci când nu sunt prezente opțiuni. Valoarea maximă a acestui câmp de 4 biți este 15, ceea ce limitează antetul la 60 de octeți și, astfel, câmpul de opțiuni la 40 de octeți. Pentru unele opțiuni, cum ar fi cea care înregistrează calea pe care a mers un pachet, 40 de octeți sunt mult prea puțini, facând această opțiune nefolositoare.

Câmpul Tip serviciu permite gazdei să comunice ce tip de serviciu dorește. Sunt posibile diferite combinații de fiabilitate și viteză: pentru vocea digitizată livrarea rapidă are prioritate față de transmisia corectă însă pentru transferul de fișieră, transmisia fără erori este mai importantă decât transmisia rapidă.

Câmpul însuși conține(de la stânga la dreapta), un câmp de 3 biți-precedență, trei indicatori(D,T si R), plus doi biți nefolosiți. Câmpul precedență este o prioritate, de la zero
(normal) la șapte (pachet de control al rețelei). Cei trei biți indicatiori permit gazdei să specifice ce o afectează cel mai mult din mulțimea Delay(întârziere), Throughtput (productivitate), Reliability (fiabilitate). În teorie aceste câmpuri permit routelor să ia decizii între o legătură prin satelit cu o productivitate mare și o întârziere mare și o linie dedicată cu o productivitate scăzută și întărziere mică. În practică, routerele curenet ignoră total câmpul tip serviciu.

Lungimea totală include totul din datagramă-atăt antet cât 1si date având o dimensiune maximă de 65535 octeți. În prezent această limită superioară este tolerabilă, dar în viitoarele rețele cu capacități de gigaocteți vor fi necesare datagrame mai mari.

Câmpul Identificare este necesar pentru a permite gazdei destinație să deterrmine cărei datagrame aparține un nou pachet primit. Toate fragentele unei datagrame conțin aceiași valoare de identificare.

Urmează un bit nefolosit și apoi două câmpuri de un bit. DF vine de la dont faragment (a nu se fragmenta). Acesta este un ordin dat routerelor să nu fragmenteze datagrama pentru că destinația nu este capabilă să asmbleze piesele la loc. MF vine de la more fragments (fragmente adiționale). Toate fragmentele, cu excepția ultimului, au acest bit activat. El este necesar pentru a știi când au ajuns toate fragmentele unei datagrame.

Deplasamentul fragmentului spun unde este locul fragmentului curent în cadrul datagramei. Toate fragmentele dintr-o datagramă, cu excepția ultimului trebuie să fie un multiplu de 8 octeți-unitaeta de fragmentare unitară. Din moment ce sunt prevăzuți 13 biți există un maxim 8192 de fragmente de datagramă obținânându-se o lungime maximă a datagramei de 65536 octeți, cu unul mai mult decât câmpul lungime totală. Câmpul Timp de viață este un contor folosit pentru a limita durata de viață a pacheelor. Este prevăzut să contorizeze impul în secunde, permițând un timp maxim de viață de 225 secunde. El trebuie să fie decrementat la fiecare salt și se presupune că este decrementat de mai multe ori când stă la coadă un timp îndelungat într-un router. El contorizează doar salturile; când ajunge la zero, pachetul este eliminat și se trimite înpoi la gazda-sursă un pachet de avertisment. Această facilitate previne hoinăreala la infinit a datagramelor, ceea ce se poate întâmpla dacă tabelele de dirijare devin incoerente.

Când nivelul rețea a asamblat o datagramă completă, are nevoie să știe ce să facă cu ea. Câmpul protocol spune cărui proces de transport trebuie să-l predea TCP este o posibilitate, dar tot așa este și UDP și alte câteva. Numerotarea protocoalelor este globală la nivelul întregului Internet și este definită în RFC 1700. Suma de control a antetului verifică numai antetul; este utilă pentru detectarea erorilor generale de locai de memorie defecte din interiorul unui router. Algoritmul este de a aduna toate jumătățile de cuvinte, de 16 biți, atunci când acestea sosesc, folosind aritmetică în compement față de unu și păstrarea complementului față de unu al rezultatului. Pentru scopul acestui algoritm, suma de control a antetului este presupusă a fi zero după sosire. Suma de control a antetulu trebuie recalculată la fiecare salt, pentru că cel puțin un câmp se schimbă, dar se pot folosi diverse trucuri pentru a accelera calculul. Adresa sursei și Adresa destinației indică numărul de rețea și numărul de gazdă.

Câmpul Opțiuni a fost gândit pentru a oferi un subterfugiu care să permită versiunilor viitoare ale protocolului să includă informații care nu sunt prezente în proiectul original pentru a permite cercetătorilor să încerce idei noi și pentru a evita alocarea unor biți din antet pentru informații folosite rar. Opțiunile sunt de lungime variabilă. Fiecare începe cu un cod de un octet care identifică opțiunea. Unele opțini sunt urmate de un câmp de un octet reprezentând lungimea opțiunii, urmat de unul sau mai mulți octeți de date. Câmpul opțiuni este completat până la un multiplu de 4 octeți; în acest moment sunt definite cinci opțiuni, dar nu toate routerele le suportă pe toate.

Adresarea IP

Fiecare mașină trebuie să aibă un număr unic. Dacă o rețea locală nu are conexiune TCP/IP cu alte rețele, numerele asociate mașinilor pot fi alese oarecum aleatoriu. Însă, pentru mașini legate la Internet, numerele sunt date de către o organizație centrală și anume NIC (Network Information Center). O adresă IP este un șir de 32 de biți ce identifică două lucruri: o rețea și o stație în cadrul acelei rețele. Forma în care sunt folosite totuși adresele IP nu este cea binară, astfel încât adresa IP este mai degrabă cunoscută ca o reprezentare zecimală a patru numere, separte prin trei puncte. O adresă IP dată se separă mai întâi în grupuri de câte 8 biți și apoi se convertesc în zecimal. Alt motiv pentru care se folosește această notație este că adresele IP sunt împărțite în numere de rețea, care sunt conținute în octeții din față, și numere de gazde care reprezintă restul. Când sunt cerute adresele IP de la NIC, nu se va obține câte o adresă pentru fiecare gazdă, ci se va obține un număr de rețea și cor putea fi folosite toate adresele valide în cadrul acestei rețele. O adresă IP de rețea este o adresă pentru care toți biții de stație sunt 0. O astfel de adresă este folosită pentru identificarea întregii rețele, aceasta fiind în fapt forma relevantă a oricărei adrese ce călătorește prin Internet.

O adresă IP de broadcast sau de difuzare este o adresă pentru care toți biții de stație sunt 1. Un pachet destinat unei astfel de adrese va ajunge la toate stațiile din aceeași rețea. În funcție de dimensiunea rețelei, partea din adresa IP care reprezintă numărul de gazdă poate fi mic sau mare. Pentru diferite nevoi există câteva clase de rețele, definind diferite împărțiri ale adreselor IP:

Clasa A cuprinde rețele de la 1.0.0.0 până la 127.0.0.0. Numărul de rețea este conținut în primul octet. Aceasta oferă 24 de biți pentru numărul gazdei, permițând peste 1,6 milioane de gazde. Este o clasă care pemite un număr foarte mic de rețele și fiecare din aceste rețele conține un număr foarte mare de adrese, această clasă fiind destinată marilor corporații.

Clasa B conține rețele de la 128.0.0.0 până la 191.255.0.0; numărul de rețea este în primii doi octeți. Aceasta permite 16384 rețele cu câte 65536 gazde ficare.

Clasa C conține rețele de la 192.0.0.0 până la 223.255.255.0 cu numărul de rețea fiind conținut în primii trei octeți. Aceasta pemite existența a aproape 2 milioane de rețele cu câte 256 de gazde fiecare.

Clasa D a fost creată pentru a face posibilă difuzarea multipunct (multicasting) într-o rețea IP. o adresă multipunct este o adresă unică ce dirijează pachetele spre grupuri predefinite de adrese IP. o singură stație poate transmite un singur flux de date care va fi rutat simultan spre mai mulți destinatari. Primii biți sunt 1110. spațiul adreselor di clasa D variază între 224.0.0.0 și 239.255.255.254. chiar dacă rețelele mulyicast nu s-au ridicat la înălțimea așteptărilor format la începutul anilor ’90, există în continuare proiecte de cercetare cu un impact major bazate pe multicast (M-Bone fiind cel mai recent), iar rețele de transmisie pentru programele TV sau măcar pentru radio nu par să se desprindă de arhitectura multicast.

Clasa E a fost definită, dar este prevăzută de IETF pentru cercetări proprii. Din acest motiv clasa E nu a fost dată în folosință pe Internet.

Fiecare dintre clasele de A, B și C au câteva adrese care au o semnificație specială. Acestea nu sunt atibuite unui host conectat direct la Internet. Servesc ca adrese IP pentru intranetul unei organizații. Astfel, adresa de clasa A 127.0.0.0 nu este utilizată pentru a adresa o rețea sau un host, ci este utilizată ca interfață de rețea software a unui calculator, numită loop-back. Interfața nu are hardware asociat și nu este fizic conectată la rețea. Este utilizată pentru a efectua teste de software de rețea fără a crea probleme de trafic de rețea. Interfața loop-back are în general adresa 127.0.0.1. Adresele IP rezervate pentru rețelele private sau intraneturi mai sunt numite nerutabile pentru că nu pot fi rutate spre Internet.

Masca de rețea

Masca de rețea este un șir de 32 de biți care, în conjuncție logică cu o adresă IP, va separa adresa de rețea, anulând biții de stație. Ficare bit din masca de rețea care se află pe aceiași poziție cu un bit din câmpul de rețea va avea valoarea 1, în vreme ce toți biții corespunzători câmpului de stație vor avea valoarea 0. Măștile de rețea sunt inutile într-un mediu ce oferă adresare classfull, deoarece simpla testare a valorii primulu octet față de 128 și 192 oferă toate informațiile necesare despre numărul biților ce aparțin câmpului rețea dintr-o adresă IP dată. În schimb o dată cu apariția adresării classless, masca de rețea a devenit piatră de temelie în deciziile de routare. Reprezentarea măștilor de rețea folosită cel mai des este cea zecimală, datorită similitudinii cu forma de exprimare a adreselor IP. O a doua formă de reprezentare a măștilor de rețea folosită cel mai des este sub formă de reprezentare a măștilor de rețea sub forma unui num ce reprezintă numărul de biți de 1 din masca de rețea, această formă de reprezentare fiind referită ca prefix de rețea. Bineînțeles că această exprimare este mai comodă, dar folosirea ei implică atât asumarea faptului că toți biții din masca de rețea sunt pe poziția cea mai semnificativă și a faptului că sunt consecutivi. După cum s-a văzut până acum, biți ce formează câmpul de rețea sunt la stânga adresei IP, fiind și totodată consecutivi, așa că asumarea cerută de foloirea prefixelor nu este o constrângere. Mai mult chiar, până acum nu a apărut nici o tehnologie care să necesite încălcarea condiției de consecutivitate a biților din câmpul de rețea. Deși adresarea în formă zecimală oferă independență față de condiția de consecutivitate, în realitate această independență este total inutilă. Singura explicați rezonabilă pentru atitudinea producătorilor de rețea ce promovează reprezentarea zecimală este inerția sau posibilitatea apariției măștilor de rețea necontinue.

În concluzie, forma de reprezentare care va fi folosită preponderent în acest capitol va fi reprezentarea ca prefix.

Subrețele

În adresarea classfull există trei dimensiuni de rețele, ducând la o utilizare extrem de ineficientă a spațiului de adrese: pentru 300 de stații ce trebuie să fie în același domeniu de broadcast (în aceeași rețea), administratorul de rețea ar fi trebuit să solicite o clasă B, urmănd să folosească sub 0,5% din adresele disponibile.

Întrebarea este dacă în loc de o întreagă clasă B nu s-ar fi putut aloca doar o jumătate de clasă B, dublând astfel eficiența alocării de adrese? Pentru a înjumătății un spațiu de adrese, va trebui în fapt să se înjumătățească numărul de stații, adică să se reducă cu unu numărul de biți de stație. Bitul astfel obținut va intra în componența unui nou câmp, denumit câmp de subrețea. Masca de rețea va avea valoarea 1 atât în câmpurile corespunzătoare biților de rețea, cât și în câmpurile corespunzătoare biților de subrețea. În concluzie, pentru a înjumătății un spațiu de adrese, masca de rețea trebuie extinsă cu un bit (cel corespunzător bitului de subrețea), iar cele două jumătăți vor fi obținute făcând acest bit o dată 0, o dată 1. Operațiunea se poate continua până când numărul de stații este corespunzător rețelei ocale. Fie aceasta egală cu 512.

Pentru a reprezenta 512 variante este nevoie de 9 biți în câmpul stație. Din cei 16 biți inițiali vor trece 7 biți în câmpul de subrețea. Masca de rețea trebuie extinsă cu 7 biți devenind 23, rezultatul operație fiind definirea unui spațiu de adrese ce ocupă doar 1/64 din spațiul inițial.

În concluzie, subrețelele au apărut în scopul eficientizării modului de alocare a adreselor IP. Pentru a împărți în subrețele un spațiu de adrese dat, o parte din biții de stație este trecută într-un nou câmp, cel de sub rețea, acesta având rolul de a oferii un al treilea nivel de ierarhizare a adreselor IP. În realitate, definirea unui câmp de subrețea este făcută pentru a înlesni înțelegerea procesului, neavând o reflectare în modul de funcționare a routerelor. Din punctul de vedere al unui router orce adresă IP are doar două nivele de ierarhizare, și anume rețea și stație. Procesul de creare de subrețele se traduce în transferarea unui număr de biți din câmpul stație în rețea, extinderea măștii de rețea cu un număr egal cu numărul de biți transferați.

Termenul de rețea pare a implica o relație de subordonare față de subrețele, definite ca aprținând claselelor de adrese IP. Într-un mediu classless, nu există nici o diferență în modul cum routerele sau calculatoarele tratează adrese aparținând unei rețele sau unei subrețele. De fapt, la ora actuală, cel mai adesea prin rețele se înțelege totalitatea subrețelelor, clasele de adrese fiind privite ca un caz particular al acestora. Se poate trage concluzia că singura diferență între rețele și subrețele este de natură strict istorică.

Masca de rețea este deseori apelată ca mască de subrețea, ambele exprimări referindu-se totuși la același obiect. În momentul în care sunt create subrețele este ușor de observat posibila confuzie între adresa de rețea a spațiului de rețea de adrese inițial și adresa de rețea a primei subrețele create dar, totodată, și între adresa de difuzare pentru spațiul de adrese inițial și adresa de difuzare a ultimei subrețele: singura diferență între clasa B și prima sa jumătate era masca de rețea folosită, și tot masca de rețea este singura diferență între adresa de difuzare a clasei B și adresa de difuzare a celei de a doua jumătăți. Datorită acestei ambiguități, o dată cu apariția subrețelelor a apărut și interdicția de a folosi prima și ultima subrețea. Numărul maxim de subrețele ce poate fi folosite devine 2 la puterea numărului de biți de subrețea minus 2. O primă consecință este imposibilitatea împrumutării unui singur bit pentru crearea de subrețele, adică imposibilitatea înjumătățirii unui spațiu de adrese. Numărul minim de biți ce trebuie împrumutați este 2. O a doua, și mult mai drastică consecință este pierderea unei părți din spațiului de adrese în urma procesului de creare de subrețele.

Eficiența alocării de adrese în urma creării de subrețele, pentru o clasă C nu poate depăși 77% și, deși se poate obține o eficiență mai bună pentru crearea de subrețele pentru o clasă B, nu trebuie uitat că în momentul startării implementărilor de CIDR, singurele rețele disponibile mai erau doar clasele C.

Începând cu 1996 majoritatea ruterelor au fost fabricate cu capacitatea evitării confuziei cauzate de folosirea primei și ultimei subrețele. Deși încă multe cărți de calculatoare recomandă în continuare evitarea folosirii primei și ultimei subrețele, rațiunile sunt mai mult de natură didactică pentru că Internetul conține echipamente capabile să evite eventualele confuzii, fără nici un alt cost adițional.

IP v.6

O altă soluție radicală, a rezolvării crizei spațiului de adresare IP este implementarea unei noi versiuni a protocolului IP, și anume versiunea 6. Principala caracteristică a versiunii IP v.6 este modificarea lungimii câmpului carea are 128 biți față de cei 32 de biți ai versiunii v.4. În prezent, sunt valabile aproximativ 4 miliarde de adrese, iar populația care este estimată pentru anul 2050 este de 9 miliarde. IP v.6 trebuie prin implementare să fie capabil să facă față situației ipotetice în care fiecare locuitor din cele 9 miliarde estimate să aibă acces la Internet. Cu o lungime de 128 biți ai adresei IP v.6 numărul de adrese va fi 2125 excluzând adresele rezervate, cam de 2 miliarde mai mare decât numărul actual. Cu un număr atât de mare de adrese nu se mai pune problema unei crize de adrese IP, ele fiind cu mult peste numărul actual de utilizatori Internet sau cel preconizat. Se poate chiar ca un locitor de pe glob la un momentdat să aibă mai mult de un echipament de rețea de nivel 3 sau caalocarea viitoare a adreselor IP să fie mai puțin chibzuită și numărul adreselor tot ar fi suficiente. Deși aceste perspective par la acest moment foarte promițătoare, schimbarea unui sistem care funcționează de peste 20 de ani este de dificilă și nu se poate face peste noapte. Cea mai mare provocare pentru creatorii noii versiuni este de găsire a unor soluții compatibile atât IP v.4 cât și v.6 pe termen scurt, iar pe termen lung înlocuirea pas cu pas a IP-ului v.6.

O altă caracteristică a IP v.6 este simplificarea header-ului IP care are 13 câmpuri în loc de 7 ceea ce oferă o viteză mai mare de procesare a adreselor de către router și un consum mai mic de lungime de bandă. Un alt avantaj major al noii versiuni este posbilitatea configurării automate care va reduce cu mult complexitatea întreținerii și administrării rețelelor. Noile opțiuni permit marcarea pachetelor care provin de la un trafic special pentru care utilizatorul dorește o manevrare specifică.

4.3.2. Protocolul de control în Internet

Pe lângă IP, care este folosit pentru transferul de date, Internetul are câteva protocoale de control la nivelul rețea precum ICMP, ARP, RARP, BOOTP.

ICMP – Protocolul mesajelor de control din Internet

Nivelele superioare pot să dorească transmiterea de mesaje către modulele IP, prin care să anunțe faptul că unele aspecte privind comportarea hostului care transmite pachete ar trebui modificate. Pentru aceasta se folosește ICMP. În general mesajele ICMP sunt generate de către stații care percep o eroare sau o problemă în cadrul unui pachet pe care un alt host l-atransmis. Eroarea poate fi detectată ori de houstul destinație, ori de un echipament gateway intermediar. Dacă rețeaua, mașina sau portul destinație nu pot fi atinse, un gateway poate folosi ICMP pentru a avertiza houstul sursă asupra acestui fapt. ICMP mai poate avertiza hostul sursă și asupra ruterelor preferate sau asupra congestiei rețelei. ICMP este considerat în mod oficial ca făcând parte din IP. Totuși, datagramele ICMP sunt trimise folosind IP. Rezultă că ICMP este o parte funcțională a nivelului trei, dar este codificat ca și când ar face parte din nivelul patru.

Operarea Internetului este strâns monitorizată de rutere. Atunci când se întâmplă ceva neobișnuit, evenimentul este raportat ICMP (Internet Control Message Protocol), care este folosit și pentru testarea Internetului. Cele mai importante tipuri de mesaje ICMP sunt Destination Unreachable, Time Exceeded, Source Quench, Redirect, Echo Request/Reply etc.

Mesajul Destination Unreachable (Destinație Inaccesibilă) este folosit atunci când subrețeaua sau un router nu pot localiza destinația.

Mesajul Time Exceeded (Timp Depășit) este trimis când un pachet este eliminat datorită ajungerii contorului său la zero. Posibil sunt fixate valori prea mici pentru ceas.

Mesajul Source Quench (Oprire Sursă) a fost folosit pe vremuri pentru a limita traficul gazdelor care trimiteau prea multe pachete. Astăzi controlul congestiei în Internet este făcut la nivelul transport.

Mesajul Redirect (Redirecționare) este folosit când un router obsevă că un pachet pare a fi dirijat greșit. Este folosit pentru a spune gazdei emițătoare despre eroarea probabilă.

Mesajul Echo Request/Reply (Cerere/Răspuns Ecou) sunt folosite pentru a vedea dacă o anumită destinație este accesibilă sau activă.

ARP – Protocolul de rezoluție a adresei

Cu toate că fiecare mașină din Internet are una sau mai multe adrese IP, acestea nu pot fi folosite de fapt pentru trimiterea pachetelor deoarece hardware-ul nivelului legăturii de date nu înțelege adresele Internet. Fiecare placă Ethernet fabricată până acum vine cu o adresă Ethernet de 48 de biți. Fabricanții plăcilor Ethenet cer un spațiu de adrese de la o autoritate centrală pentru a se asigura că nu există două plăci cu aceeași adresă. Plăcile trimit și primesc cadre pe baza adresei Ethernet de 48 biți; nu știu nimic despre adresele IP.

Transmiterea de pachete dintr-o rețea Ethernet cere adrese destinație de 48 de biți pentru a identifica nodul destinație, astfel se pot inventa cei 16 biți adiționali. Nici aceasta nu este o soluție deoarece adresele Ethernet sunt arbitrare și în general sut setate de către producătorii plăcilor. De aceea un alt set de servicii trebuie asigurat în cadrul nivelului rețea, pentru a asigura transformarea unei adrese IP de 32 biți într-o adresă Ethernet de 48 biți. Astfel a apărut ARP. Atunci când un proces de la nivelul rețea dorește să transmită un pachet care are adresa Internet specificată, dar a cărui adresă Ethernet nu este cunoscută, acel proces de la nivelul rețea trebuie să transmită o cerere ARP broadcast pentru a afla adresa Ethernet a destinației. Un nod urmează să răspundă cererii de adresă Ethernet conținută în pachetul ARP, de obicei chiar nodul destinației. Când este recepționat răspunsul, de obiceicei 48 biți sunt reținuți într-un cache, iar dacă este găsit pachetul este transmis direct și se poate evita o tranzacție ARP.

Deci un host rezolvă adresa destinație în următorul mod: caută în cache adresa Ethernet corespunzătoare; dacă nu o găsește, apelează la ARP pentru a transmite o cerere de adresă Ethernet în rețea-se poate folosi un fișier de configurație aflat la nivelul hostului sursă. Deci, există trei surse tipice din care se poate afla echivalentul Ethernet al unei adrese IP:

Răspunsul la cereri ARP

Memoria cache de adrese provenite de la răspunsuri ARP anterioare

Informația conținută în fișierele de configurație

Trebuie remarcat că ARP localizează hosturile aflate în aceeași rețea sau subrețea ca și hostul sursă. Utilitatea sa este limitată deci la un broadcast Ethernet. Pentru a trimite pachete unui host dintr-o altă rețea, datagrama trebuie întâi trimisă unui router atașat rețelei sursă. În acest caz hostul sursă trebuie să identifice adresa routerului, care apoi va trimite datagrama către rețeaua destinație.

Unele routere IP răspund la cereri ARP în numele unui host îndepărtat. Hostul sursă este astfel păcălit, deoarece va crede că îi răspunde hostul destinație. Această tehnică se numește Proxy ARP.

RARP – Protocolul de rezolutie inversă a adresei

ARP-ul rezolvă problema aflării adresei Ethernet corespunzătoare unei adrese IP date. Câteodată trebuie rezolvată problema inversă. Soluția este folosirea RARP-ului (Reverse Address Resolution Protocol). Acest protocol permite unei stații de lucru de-abia pornită să difuzeze adresa sa Ethernet, și permite serverului RARP să caute în fisierele sale de configurare și trimite înapoi adresa IP corespunzătoare.

Folosirea RARP este mai bună decât introducerea unei adrese în baza de memorie, pentru că permite ca aceeași imagine să fie folosită de toate mașinile. Dacă adresa IP ar fi fixată înăuntrul imaginii, atunci fiecare stație de lucru ar necesita imaginea sa proprie.

BOOTP – Protocolul alternativ de pornire

Deoarece existența unui server RARP în fiecare rețea nu ar fi practic posibilă, pentru a rezolva această problemă a fost inventat un protocol alternativ de pornire numit BOOTP. Acesta folosește mesaje UDP, care sunt propagate prin routere. De asemenea furnizează unei stații de lucru fără disc informații suplimentare care includ adresa IP a servărului de fișiere care deține imaginea de memorie, adresa IP a routerului implicit și masca de subrețea care se folosește.

4.3.3. Protocoale la nivelul transport

TCP – Protocolul de control al transmisiei

Deoarece protocolul IP este de tip datagramă, utilizarea lui direct în aplicații, care în general au nevoie de conexiuni sigure, este anevoioasă. Din aceste motive peste IP a fost construit un alt protocol numit Transmission Control Protocol (TCP), care corectează aceste probleme. Alături de protocolul UDP, TCP se situează pe nivelul transport în ierarhia de protocoale. Cu toate că se bazează pe același protocol TCP furnizează către nivelul aplicație servicii orientare-conexiune sigure de tip flux de octeți.

Termenul de orientat-conexiune presupune că între cele două aplicații care comunică utlizând TCP trebuie să se stabilească o conexiune TCP înainte ca transferul de date să aibă loc. transferul sigur de date este asigurat în următorul mod:

Datele sunt împărțite în fragmente a căror dimensiune optimă e determinată de TCP; unitatea de date trimisă de TCP către nivelul rețea poartă numele de segment.

Când TCP trimite un segment pornește un timer și, dacă nu se primește confirmarea segmentului respectiv după un timp, îl retransmite.

În momentul în care se primește un segment, TCP trimite o confirmare. Din motive de eficiență aceasta poate fi amânată un anumit interval de timp.

În headerul TCP este menținută o sumă de control pentru detectarea modificărilor în date. Dacă se recepționează un segment corupt, TCP îl ignoră urmând să fie retransmis datorită neprimirii confirmării.

Deoarece segmentele TCP sunt transmise mai departe încapsulate în datagrame IP, iar acestea pot ajunge în orice ordine, segmentele TCP pot ajunge în altă ordine decât cea în care au fost transmise. La destinație TCP-ul trebuie să se folosească de numere de secvență pentru a reordona eventual segmentele înainte de a le livra către nivelul aplicație. TCP trebuie să asigure ignorarea duplicatelor.

TCP asigură controlul fluxului în condițiile în care viteza de trimitere a datelor de la sursă poate fi mult prea mare decât capacitatea de prelucrare de la destinație.

Serviciul oferit de TCP este de tip flux de octeți deoarece oferă garanții că fluxul de date trimis de sursă va fi livrat fără modificări la destinație.

Formatul pachetelor TCP

Pachetele de date transmise de TCP, segmentele, sunt formate dintr-un antet de 20 de octeți urmat de datele primite de la nivelul aplicație.

Figura 4.11. – Pachetul TCP

Antetul unui segment TCP cuprinde:

Portul sursă(Source Port): un câmp de 16 biți, care memorează portul mașinii locale;

Portul destinație(Destination Port): un câmp de 16 biți care memorează portul mașinii de la distanță;

Numărul de secvență(Sequence Number): un număr care indică poziția blocului curent în cadrul mesajului;

Număr de confirmare(Acknowledgement Number): un număr care indică următoarea secvență care va fi așteptată;

Lungimea antetului(Data Offset): număr de octeți (pe 32 de biți) ai antetului TCP. Se utilizează pentru a determina începutul câmpului de date;

Reserved(Reserved): un câmp de 6 biți rezervat pentru implementări viitoare. Trebuie să fie setați pe zero.

bitul URG: activează câmpul Urgent;

bitul ACK: activează câmpul Acknowledge (utilizat pentru confirmarea pachetelor);

bitul PSH: indică apelul funcției „push”;

bitul RST: conexiunea va fi resetată;

bitul SYN: numerele de secvențe vor fi sincronizate. Se utilizează la stabilirea unei conexiuni.

Bitul FIN: indică sfârșitul transmisiei;

Fereastră(Window): un număr pe 16 biți, ce indică numărul de blocuri de date pe care mașina destinație le poate accepta;

Suma de control(Checksum): valoare numerică pe 16 biți, utilizată pentru verificarea integrotății informațiilor transmise (se folosește un cod de detecție a erorilor – CRC);

Pointerul Urgent(Urgent Pointer): dacă a fost utilizat bitul URG, indică porțiunea mesajului care este urgentă, prin specificarea offsetului de la numărul de secvență în antet. Protocolul nu ia nici o decizie în legătură cu această valoare;

Opțiuni(Options): lista de opțiuni TCP. Ficare opțiune consistă dintrun număr de opțiune (un octet), numărul de octeți în opțiune și valorile opțiunii. Doar trei opțiuni sunt definite pentru TCP:

0 – sfârșitul listei de opțiuni;

1 – nici o operație;

2 – mărimea maximă a segmentului

Padding: spațiul umplut cu zero pentru a asigura ca antetul să fie multiplu de 32 biți.

Funcționarea TCP

TCP este responsabil cu:

Stabilirea conexiunii

Dirijarea pachetelor

Controlul fluxului

Detecția și tratarea erorilor

Modul de transmisie în cadrul protocolului TCP este flux-duplex, deci sunt transmise date simultan în ambele direcții. Nu este obligatoriu ca un calculator să înceapă numerotarea cu o anumită valoare, ea fiid aleasă de către acesta de obicei în mod aleatoriu.pentru a putea efectua sincronizarea fluxului de date, fiecare parte a conexiunii trebuie să cunoască numărul inițial de secvență – ISN (Initial Sequence Number) – al celeilalte părți.

Deoarece numărul de secvență inițial se schimbă la fiecare nouă conexiune, protocolul TCP poate determina pachetele conexiunii anterioare de pe același circuit. O conexiune dintre două mașini începe cu trimiterea unei primitive de deschidere de la mașina A lamașina B. Segmentul construit are setat bitul SYN și are atribuit un număr de secvență a. În cazul în care conexiunea este acceptată, mașina B trimite un mesaj de confirmare (Acknowledgment) (biții ACK și SYN setați), setând un număr de secvență inițial b și numărul de confirmare a+1. În cazul în care conexiunea este refuzată, se trimite către mașina A un pachet având biții ACK și RST setați. Mașina A trimite înapoi propriul mesaj de confirmare (biții ACK și SYN setați), având numărul de secvenție a+1 și numărul de confirmare b+1. mecanismul este prezentat în figura de mai jos:

Figura 4.12. – Inițierea unei conexiuni

După ce s-au efetuat transferurile de date, conexiunea trebuie închisă. Mașina A trimite o cerere de conexiune (având bitul FIN setat) către mașina B. Mașina B trimite înapoi o recunoaștere și numărul următor de secvență. Se așteaptă ca aplicația să închidă conexiunea, după care mașina B trimite un segment înapoi către mașina A, având bitul FIN setat. Mașina A recunoaște închiderea, după care conexiunea este încheiată. TCP oferă posibilități avansate de control al erorilor. Pentru fiecare segment transferat cu succes, mașina ce l-a recepționat trimite expeditorului un răspuns prin care specifică faptul că transferul s-a încheiat cu succes, anume dacă suma de control a segmentului este corectă. Mașina care a efectuat transferul poaterecepționa o informație de eroare sau poate să nu recepționeze nimic. Atunci când se recepționează un mesaj de eroare datele sunt retransmise, cu excepția cazului când eroarea este fatală, caz care, duce la oprirea transmisiei. Într-un mod similar, dacă nu se primește nici o confirmare într-un interval de timp stabilit, segmentul este retransmis. Acest proces este repetat ori de câte ori este necesar pentru a finaliza transferul tuturor segmentelor.

UDP – User Datagram Protocol

UDP este un protocol de nivel transport construit special pentru a oferi un serviciu de comunicare peste IP. Câteva caracteristici ale UDP sunt:

Este un serviciu de tip datagramă: cererile de trimitere de date primite de la nivelul superior sunt tratate independent;

Comunicarea are loc fără stabilirea unei legături (conectionless): nu există mecanisme de stabilire și terminare a unei conexiuni deoarece toate datele sunt trimise în cadrul unui singur pachet IP care va fi supus fragmentării

Nu se garantează ajungerea la destinație a datelor (besteffort): ajungerea la destinație nu este anunțată sursei;

Datele transportate sunt protejate de o seumă de control;

Overhead-ul introdus este minim: doar 8 octeți;

Utilizări tipice ale UDP-ului:

Servicii de rezolvare anumelor (DNS): întrebările și răspunsurile scurte pot fi mai eficient implementate peste UDP;

Fluxuri multimedia: mecanismele complicate de control al fluxului ale TCP-ului ar deprecia interactivitatea;

Server de fișiere (NFS): acest tip de aplicații sunt în general rulate în rețele locale cu performanțe ridicate care nu necesită mecanismele TCP;

Managementul rețelei (SNMP);

Protocoale de rutare (RIP).

Formatul pachetelor UDP

Datagramele UDP sunt formate dintr-un antet urmat de datele care se doresc transmise. Antetul cuprinde:

Port sursă – împreună cu adresa IP a sursei acest număr identifică în mod unic locul unde a fost trimisă datagrama UDP;

Port destinație – împreună cu adresa IP a destinației acest număr identifică în mod unic destinația dorită pentru datagrama UDP;

Lungimea pachetului UDP – măsoară datagrama UDP cu tot cu antet și prin urmare are o valoare minimă de 8 octeți;

Sumă de control – acoperă întreg pachetul UDP, cât și un pseudoantet de 12 octeți.

Biți

0 16 31

Figura 4.13. – Structura unei datagrame UDP

Deoarece suma de control necesită în cadrul ei un număr multiplu de 16 octeți, la sfârșitul datelor se adaugă un număr potrivit de octeți de zero. Dacă suma este 0 atunci ea va fi stocată ca 65.535. Un 0 în câmpul sumei de contol indică faptul că suma de control nu a fost calculată.

SSH – Secure Shell

Este un protocol care permite accesul sigur de la distanță între două calculatoare. SSH negociază și stabilește o legătură criptată între un client și un server SSH prin intermediul unor diverse metode de autentificare. Această conexiune sigură poate fi apoi utilizată pentru accesarea serverului (înlocuirea serviciilor telnet, rlogin sau FTP, sau chiar conexiunile X11) sau pentru realizarea unei rețele private (VPN). Pachetul ssh este compus din server(sshd), client (ssh) si inca cateva utilitare pentru manevrarea cheilor. In genral sshd-ul se porneste din scripturile de initializare ale sistemul si ruleaza tot timpul in background. La fiecare conexiune noua, serverul face fork. Fiecare masina are o cheie RSA: host key (in mod normal pe 1024 de biti). In plus, cand e pornit demonul, el genereaza automat o cheie: server key (pe 768 de biti). Aceasta e regenerata din ora in ora daca a fost folosita si nu e pastrata niciodata pe disc. De fiecare data cand un client vrea o conexiune, demonul ii trimite host key si server key (publica). Clientul compara host key cu cea din baza lui de date, pentru a verifica daca nu s-a schimbat. Apoi clientul genereaza un numar aleator de 256 de biti. Cripteaza acest numar folosind host key si server key si trimite numarul criptat la server. In continuare ambele parti vor folosi numarul acest aleator ca o cheie de criptare. Sunt suportate urmatoarele metode de criptare: IDEA, DES, 3DES, ARCFOUR si TSS. Implicit se foloseste IDEA.

4.3.4. Protocoale ale nivelului aplicație

În comunicațiile TCP/IP pe lângă adresa IP a unei componente mai sunt necesare anumite porturi. Adresa IP și un port formează un socket. Fiecare program care accesează rețeaua se folosește de un asemenea socket pentru fiecare conexiune activă. Porturile sunt alocate și eliberate dinamic, în fucție de nevoile programelor. Porturile 1–1024 sunt rezervate unor programe tip sever (daemoni), care se conectează pe un anume port tot timpul și așteaptă cereri din rețea tot timpul pe acel port. Pentru a comunica cu nivelul transport aceste aplicații folosesc și ele aceste porturi, fiecare având unul rezervat. Cele mai cunoscute aplicații ale Internetului care folosesc protocoale de la nivelul transport sunt:

Figura 4.14. – Protocoale ale nivelului Aplicație

DNS – Domain Name Service

Pentru a utiliza mai ușor adresele IP s-a încercat atribuirea de mnemonice (nume) unor adrese IP utilizate frecvent (adrese de server). Administrarea numelor atribuite se realizează greoi, fără un sistem centralizat deoarece calculatorul-client trebuie să identifice adresa IP a calculatorului adresat (server) înainte de a iniția comunicarea cu acesta. Trebuie menținută o tabelă în care să se memoreze corespondența între mnemonic și adresa IP (în fișierul hosts). În Internet funcționează un sitem centralizat care gestionează corespondența între numele unui domeniu și adresa IP a calculatorului-gazdă. Acest sistem se numește Domain Name Service (sau System) – DNS. Acest proces de identificare după nume a unui calculator-gazdă necesită o rețea de servere DNS. Toate aceste servere sunt conectate la o companie numită Network Solutions Inc. situată în Virginia, cunoscută și sub numele de InterNic, care este însărcinată cu administrarea distibuirii și proprietății numelor de domeniu. Sistemul DNS este organizat ierarhic. Rețeaua de servere DNS administrează nume de domenii administrate ierarhic. În vârful ierarhiei domeniilor Internet sunt o serie de domenii numite Top Level Domain (TLD). Cele mai cunoscute sunt .com, .edu, .gov, .net, .org. fiecare țară are atribuit un TLD, format din două litere: .uk, .de, .fr, .ro etc. În cadrul unui TLD se pot înregistra la InterNic alte subdomenii. Serverele DNS au capacitatea de a delega autoritatea de rezolvare a numelor de domeniu. Serverele DNS își sincronizează periodic baza de date locală cu diferite alte baze de date de pe alte servere DNS și verifică dacă au apărut noi intrări pe srverele rădăcină. Acest proces se numește propagarea.

FTP – File Transfer Protocol

FTP este cel mai cunoscut protocol pentru transferul fișierelor și permite utilizatorilor atutorizați să transfere fișiere de la și către servere aflate la distanță. FTP stabilește o conexiune în „mod pasiv” (Passive Mode) în care clientul preia structura de directoare, transferă fișiere și apoi se deconectează. Serverele FTP pot fi configurate după dorința administratorului să accepte conexiuni anonime sau să impună autentificarea utilizatorul;ui la deschiderea sesiunii de lucru. Fiecărui client al serverului i se pot pune politici diferite de utilizare a acestuia și chiar i se pot fixa ore între care acesta poate accesa serverul FTP. Serverul întrerupe conexiunea după un anumit timp de inactivitate. FTP funcționează implicit pe porturile 20-pentru transfer de date și 21-pentru transferul comenzilor. Sistemele de operare oferă clienți FTP în formă text sau grafic. Programele-client sub formă de text transferă serverului comenzile date de utilizator de la tastatură și afișează răspunsul serverului pe ecran. Există și programe client FTP grafice care oferă o interfață grafică pentru gestionarea fișierelor într-o sesiune de lucru FTP. Comenzile sunt generate automat, iar răspunsul serverului este interpretat și afișat grafic. Unul dintre aceste programe este Cute FTP. TFTP este un protocol înrudit cu FTP care folosește pentru transferul datelor protocolul UDP. Din acest motiv TFTP-ul oferă o viteză mai mare dar și o securitate mai mică a conexiunii. Acest protocol are dimensiuni mici și este ușor de implementat, el având posibilitatea să citească și să scrie fișiere dar nu poate afișa directoare. Acest protocol nu oferă autentificarea utilizatorului prin parolă. Toate aceste priorități, precum și viteza mai mare decât a FTP-ului îl fac folositor în rețelele de dimensiuni mici.

Remote login – Telnet

Este prescurtarea de la TELEcommunications NETwork și se referă atât la aplicație cât și la protocol. Telnet oferă utilizatorilor o cale de a se loga și de a-și accesa terminalele proprii prin rețea. Practic, Telnet asigură accesul direct la calculatorul aflat la distanță. Accesul se face pe portul 23, port rezervat implicit pentru aplicația Telnet, dar se serverul Telnet sse poate configura să utilizeze și alt port. Telnet are nevoie de un server Telnet aflat pe calculatorul gazdă ce va fi acccesat. Sistemele de operare Windows necesită prezența unui server telnet pentru a accepta conexiuni de la distanță. Calculatoarele cu sitemul de operare Unix sau derivatele Linux au un server Telnet preinstalat. Pe calculatorul client ce se conectează prin Telnet la un server este nevoie de o aplicație cu rol de interfață în mod text sau grafic. Aplicația client oferită de sistemul de operare se numește Telnet. Atât Windows cât și Linux oferă o aplicați simplă în mod text ce permite conectarea prin Telnet. Conexiunile Telnet sunt obligatoriu protejate de parolă, neputându-se realiza conexiuni la serverul de Telnet fără parolă.

SMTP – Simple Mail Transfer Protocol

SMTP este standardul utilizat pentru transferul poștei electronice prin Internet. Toate sistemele de operare au clienți de e-mail care suportă SMTP. Acest protocol utilizează și alte servicii și protocoale cum ar fi POP3 și IMAP4 care permit utilizatorului să-și gestioneze mesajele pe serverul pe care are configurată căsuța poștală. Protocolul utilizează portul 25. poșta electronică este un serviciu standard care permite utilizatorilor să trimită și să recepționeze mesaje electronice. Utilizatorii acestui serviciu trebuie să-și definească mai întâi o căsuță poștală pe un server, căsuță care va fi identificată printr-o adresă unică. Adresa este compusă dintr-un identificator al utilizatorului, semnul @ și URL-ul serverului care găzduiește căsuța poștală. Dacă un server SMTP nu poate rezolva domeniul, acesta poate trimite mesaje înapoi către expeditor ca fiind netransmisibile. Dacă domeniul poate fi rezolvat, de serverul secundar (în cazul în care există), mesajele vor fi introduse în coada de așteptare, chiar dacă severul SMTP destinatar nu răspunde.

HTTP – Hyper Text Transfer Protocol

http este un protocol ce asigură transferul unor fișiere text în care conținutul a fost scris folosind limbajul HTML (Hyper Text Markup Language). Acest limbaj permite integrarea textului cu imaginile, cu alte elemente multimedia și cu elemente active. Acest limbaj a evoluat și a integrat tot mai multe elemente. Se poate integra în corpul fișierelor HTML un cod care se va executa pe server sau pe calculatorul client. Serverul http poate fi configurat să autentifice utilizatorul înainte de a transfera un fișier către acesta. Portul implicit utilizat de http este portul 80.

Capitolul 5

Securitatea în rețele informatice

5.1. Securitatea informatică

Tehnologiile informatice și infrastructurile de comunicații devin din ce în ce mai integrate în structurile de bază ale organizațiilor. De aproximativ 10 ani, infrastructurile de comunicații s-au extins de la nivelul intern al acestor organizații (Intranet) către conectarea globală la nivelul Internet-ului, în special în cazul companiilor întinse pe arii geografice largi. Această integrare este însoțită de riscuri ridicate de penetrare și compromitere. Utilizarea Internet-ului în domenii vitale (sănătate sau militar) precum și în scopuri comerciale (sisteme bancare sau comerț electronic) a crescut acest potențial de risc. Posibilitatea de accesare rapidă, în orice moment, a informației, precum și necesitatea de a asigura protecția acesteia împtriva furtului sau distrugerii au devenit cerințe care nu existau atunci când rețeaua și serviciile sale au fost create. Dependența puternică de informație și comunicații duce la urmări de o gravitate crescută a cazurilor de furt, modificare sau distrugere a informației, precum și deteriorare sau întrerupere a canalelor de comunicație. Sistemele informatice, indiferent de natura acestora s-au dovedit de-a lungul timpului vulnerabile la atacuri, la accesări neautorizate ale informațiilor, la modificări ori distrugeri de informații, accidentale sau voite. Atenuarea și corectarea acestor vulnerabilități au devenit astăzi obligații ale oricărei organizații care deține calculatoare legate în rețea. Protejarea informației reprezintă așadar o activitate din ce în ce mai importantă, dar fiind faptul că ea poate circula printr-o rețea neprotejată cum este Internetul.

Necesitatea asigurării securității informației nu mai trebuie demonstrată în zilele noastre. Conform ultimilor statistici CERT pe CC (http://www.cert.org) numărul de incidente de securitate raportate este în creștere înregistrându-se în anul 2002 un număr de 82.094 de incidente (o creștere de 64% față de anul precedent). De asemenea, numărul de vulnerabilități descoperite în anul 2002 este de 4.129 (o creștere de 59% față de anul 2001). Aceste statistici includ rapoarte din întreaga lume, și se referă la toate sistemele de operare existente pe piață. Principalele concepte de securitate a informațiilor sunt confidențialitatea, integritatea și disponibilitatea acestora. Conceptele referitoare la persoanele care manipulează aceste informații sunt autentificarea și autorizarea.

Confidentalitatea înseamnă că informațiile pot fi accesate doar de către persoana autorizată. Pentru anumite tipuri de informații (cum ar fi cele confidențiale ale companiilor, datele medicale, cele bancare), confidențialitatea este un atribut foarte important. Atunci când informațiile sunt copiate de către o persoană fără a fi autorizată, spunem că a avut loc pierderea confidențialității.

Integrarea înseamnă că informațiile pot fi modificate sau șterse de către persoane autorizate. Atunci când informațiile sunt modificate în mod neautorizat, spunem că a avut loc o pierdere a integrității. Aceasta poate fi cauzată intenționat (de către o persoană rău voitoare) sau neintenționat (din pricina unor proaste funcționări ale unor servicii).

Disponibilitatea înseamnă că informațiile sunt accesibile pentru persoane autorizate -într-un anumit moment de timp dat. Disponibilitatea informațiilor pentru utilizatorii autorizație este un atribut important, îndeosebi pentru anumite tipuri de informații. Atunci când informațiile devin inaccesibile, spunem că avem de-a face cu un refuz al serviciilor (DoS). Securitatea informațiilor reprezintă protejarea lor pentru a respecta aceste criterii de securitate.

Autentificarea reprezintă operațiunea de demonstrare că un utilizator are identitatea declarată de acesta. Operațiunea presupune solicitarea unei informații suplimentare de la utilizatorul în cauză (o parolă, un certificat digital etc).

Autorizarea este determinarea dacă un utilizator sau un calculator are dreptul de a efectua o anumită operațiune cum ar fi accesarea unui fișier sau execuția unui program. S-a dovedit că accesarea informațiilor în mod neautorizat este mult mai ușoară decât determinare intrușilor, de aceea asigurarea securității sistemelor informatice, cu precădere a celor legate în rețea este o cerință de neocolit.

În practică va trebui realizată o balanță între funcționarea normală a serviciilor și asigurarea securității acestora.

5.2. Hackeri și crackeri

În acest capitol voi încerca să clarific noțiunea de hacker, pe cea de cracker și diferența dintre ei.

Termenul de hacker a fost adoptat în anii ’60 în cadrul comunităților de programatori de la Massachutes Institute of Tehnology – Artificial Intelligence Laboratory. El provine după toate probabilitățile de la radio-amatorii și electroniștii anilor ’50.

Hackerii sunt pasionați ai informaticii, care, spre deosebire de utilizatorii obișnuiți care se mulțumesc să învete minimul necesar, sunt interesați de ascunzișurile unui program, unui sistem de operare etc. De cele mai multe ori aceștia sunt programatori și astfel ajung să obțină cunoștințe avansate despre sisteme de operare și despre limbaje de programare. Aceștia au cunoștințe despre bug-urile de sistem și pot dezvolta coduri și scripturi pentru a le exploata. Hackerii, în mod constant, caută să obțină noi cunoștințe pe care apoi să le facă publice și altora și nu încearcă niciodată să producă distrugeri sau pagube. New Hacker’s Dictionary, oferă definiția termenului de hacker și a altor termeni utilizați în jargonul hackerilor. În conformitate cu dicționarul, un hacker este:

O persoană care are ca hobby explorarea detaliilor sistemelor programabile și modul în care capabilitățile acestora pot fi extinse, spre deosebire de majoritatea utilizatorilor care preferă să învețe strictul necesarutlizării computerului;

O persoană care cu entuziasm (adeseori obsesiv) programează și care se amuză programând practic, mai degrabă decât să abrdeze problema programării din punct de vedere teoretic.

O persoană capabilă să aprecieze valoarea acestor tipuri de activități.

O persoană care poate programa repede.

O persoană care se amuză lăsându-se stimulată de provocarea intelectuală a încercării de dăpășire sau evitare a unor limitări.

Un specialist într-un anumit program sau o persoană care lucrează frecvent utilizănd direct sau indiret un program, cum ar fi un „hacker de UNIX”.

O persoană care spionează cu impertinență alte persoane încercând să găsească alte informații. De aici, și termenii de password hacker și network hacker. Pentru aceștia, definiția potrivită ar fi aceea de cracker.

De asemenea, termenul de hacker tinde să denumească totalitatea persoanelor care aparțin comunității globale a utilizatorilor de Internet.

Crackerii sunt persoane care violează integritatea sistemului premeditat, în scopuri distructive și care contravin legii de cele mai multe ori. Crackerii, reușesc să obțină accesul neautorizat, să spargă coduri, distrug date importante, refuză accesul userilor îndreptățiți – practic cauzează probleme țintelor. Aceștia sunt ușor de identificat deoarece acțiunile lor sunt rău-intenționate.

Crackerii rareori își scriu ei înșiși programele. De cele mai multe ori fură sau împrumută de la alții insrumente și programe pe care le folosesc pentru a submina securitatea Internetului.

O bună întrebare este „de ce există crackeri?”

Crackerii există pentru că trebuie, pentru că natura umană este frecvent condusă de o dorință de a distruge în loc de cea de a crea.

Există crackeri care atacă ținte aleatorii, oriunde și oricând au ocazia. De exemplu, atacurile tot mai frecvente asupra Yahoo și Hotmail au blocat motoarele de căutare și conturile de mail respective pentru câteva zile, aducând prejudicii de milioane de dolari. Aceste atacuri au de obicei în spate persoane care „au fost curioși numai să vadă ce se întâmplă” sau „au dorit să se distreze”. Acești atacatori virtuali nu sunt crackeri adevărați, pentru că nu-și scriu singuri nuke-urile pe care le folosesc, procurându-și-le de pe Internet sau din alte surse. Acești crackeri amatori sunt singurii care ajung în fața justiției. Motivul este simplu. Acei hackeri adevărați sunt de obicei destul de inteligenți pentru a face anumite sisteme care să inducă în eroare pe toți cei care ar încerca să determine sursa atacului.

Unii crackeri „sparg” pentru a obține un profit. De exemplu Compania A vrea să scoată din funcțiune site-ul Companiei B. Crackerii vor pătrunde în aproape orice sistem pentru un anumit preț. Uneori „sparg” bazele de date de la bănci, pentru a transfera câteva milioane de dolari în contul propriu. Aceste operațiuni sunt foarte riscante, necesită experiență în domeniu, nefiind încercate de prea mulți hackeri.

Alți crackeri sunt copii care au o extraordinară abilitate de a asimila cunoștințe tehnice avansate în domeniul calculatoarelor. Pentru aceștia spargerea codurilor reprezintă un joc stupid.

Mulți crackeri „sparg” cele mai ciudate și complexe coduri de la Pentagon, NASA ori alte asemenea organizații în speranța că vor reuși să demonstreze existența OZN-urilor sau a altor „teorii ale conspirației” sau pentru a demonstra superioritatea lor față de marii programatori, sistemele informatice și serverele care le aparțin.

Unii crackeri „distrug” anumite site-uri de web sau baze de date fiindcă pur și simplu nu sunt de acord cu informația transmisă de ele. Astfel crackerii pot fi încadrați în 4 mari grupe:

Crackerul care accesează sistemul și nu efectuează alte acțiuni-caz în care acesta are un rol pasiv;

Crackerul care accesează sistemul și alterează, modifică sau distruge informațiile memorate pe mediile de stocare a acestuia;

Crackerul care accesează sistemul și capătă controlul asupra unei porțiuni a sistemului sau asupra întregului sistem, uneori creând „uși din spate” care să îi permită accesarea ulterioară a sistemului sau interzicând chiar accesul utilizatorilor autorizați;

Crackerul care nu accesează sistemul, ci realizează acțiuni distructive de Denial of Service (refuz al serviciilor).

În anii ’80 nu exista o bună diferențiere între noțiunea de hacker și cea de cracker. Astăzi, aceste grupuri de oameni luptă în echipe diferite într-un război al rețelelor. Crackerii luptă cu dibăcie pentru a fi recunoscuți, dezvoltând noi tehnici de atac. În același timp hackerii, cu toate că au un mare dezavantaj-acela că există din ce în ce mai multă informație care invadează Internetul, lucrează din greu pentru a dezvolta metode noi de securitate care să pună capăt războiului.

Cea mai bună cale de a face distincție între acești indivizi este să înțelegem motivația și felul lor de viață.

Iată câteva exemple de hackeri din viața reală:

-Bill Gates și Paul Allen ambii sunt experți în programare, originari din Washington, acești oameni hackerau softuri încă din liceu. Începând din 1980, ei au realizat cel mai mare și cel mai reușit software ce se găsește pe Terra. Succesele lor comerciale includ MS-DOS, Microsoft Windows, Windows 95, Windows 98 Windows NT;

-Dennis Ritchie, Ken Thompson și Brian Kernigham sunt programatori la Bell Labs și toți au dezvoltat sistemul de operare UNIX și limbajul C. Astăzi încă programează-de exemplu Ritchie lucrează la Planul 9 al Bell Labs, acesta fiind un nou sistem de operare care probabil va înlocui platforma UNIX în ceea ce privește rețeaua;

-Paul Baran este probabil cel mai mare hacker dintre toți dintr-un singur motiv:”a spart” Internetul înainte ca acesta să existe. El „a spart” conceptul, iar eforturile lui au oferit o bază bună pentru instrumentele de navigat pentru cei care l-au urmat;

-Dan Framer a lucrat la COPS, fiind considerat mai târziu creatorul programului SATAN (System Administator Tool for Analyzing Networks), un puternic utilitar ce analizează vulnerabilitățile rețelelor;

-Linus Torvalds un individ extaraordinar, s-a dedicat tipurilor de programe gen UNIX și limbajului C la începutul anilor ’90. în numai un an a reușit să scrie un sistem de operare gen UNIX numit Linux. Astăzi acest program este considerat a fi printre cele mai bune sisteme de operare existente, fără a exista vreo restricție de copiere. Linux-ul este gratuit fiind accesibil oricărei persoane care poate accesa Internetul;

și exemplele pot continua, iar în cazul crackerilor exemple cum ar fi:

-Kevin Mitnic, cunoscut și sub pseudonimul de Condor este probabil cel mai bun cracker cunoscut. Mitnic și-a început cariera ca „phone phreak” ,de atunci „spărgand” toate tipurile de site-uri inclusiv pe cele militare, financiare, site-uri ale unor firme de software sau orice altă comanie tehnologică(în tinerețe „a spart” Comandamentul Nord American de Apărare Antiaeriană);

-Kevin Poulsen este cunoscut pentru abilitatea sa supraomenească de a prelua controlul sistemului de telefonie Pacific Bell(odată s-a folosit de talentul său pentru a câștiga un concurs la radio al cărui premiu era un porche. El a manipulat liniile telefonice astfel încât apelul său să fie cel câștigător). Desigur Poulsen a spart orice tip de site, în special cele ce conțin date defensive. Acesta a fost închis pentru o perioadă de 5 ani, fiind eliberat în 1996;

-Justin Tanner Peterson, cunoscut și sub pseudonimul de Agentul Steal, Peterson este probabil cunoscut pentru faptul că „a spart” o agenție de cărți de credit. Singurul lucru care îl motiva pe acesta fiind banii, Peterson odată prins a acceptat să lucreze pentru FBI, ajutând la prinderea altor creackeri precum Kevin Poulsen, care îi era prieten.

5.3. Securitatea pe nivele TCP/IP

5.3.1. Securitatea la nivel fizic – NAT si DHCP

Translatarea de adrese sau NAT este procesul prin care un ruter modifică adresele sursă (SNAT) sau destinație (DNAT) din anumite pachete care trec prin ruter pe baza unor reguli. Putem considera că translatarea adreselor este o funcție definită pe o mulțime de adrese (A) cu rezultate într-o altă mulțime de adrese (B). Astfel, fiecare pachet cu o adresă sursă sau destinație (după cum este specificat în regulă) din mulțimea A va fi înlocuită cu o adresă din mulțimea B. Se spune că avem o translatare de adresă statică dacă mulțimile A și B sunt fiecare formate dintr-un singur element. În caz contrar avem o translatare de adrese dinamică. Avantajul folosirii translatării de adrese dinamice constă în faptul că se poate folosi o partajare a adreselor rutabile disponibile organizației. Astfel, calculatoarelor din rețeaua locală li se alocă adrese private, iar ruterul va face o translatare de adrese dinamice din mulțimea de adrese private în mulțimea de adrese publice alocate organizației. Se observă însă că această abordare permite ca doar Card(B) calculatoare din rețeaua locală să aibă conversații TCP sau UDP cu Internetul. Alt avantaj al folosirii translatării de adrese este acela că se ascunde astfel exteriorului maparea reală de adrese.

Translatarea de adrese statică se folosește atunci când în rețeaua locală avem un server pe care dorim să îl accesăm din exterior. În acest caz se face o mapare unu la unu între adresa din interior și cea din exterior.

O metodă mai avansată de translatare de adrese o reprezintă PAT (Port Address Translation), uneori denumită și NAT overloaded sau masquerading. Această metodă permite un număr de aproximativ 64000 de conversații simultane de la orice host intern către exterior cu o singură adresă externă. Implementarea înlocuiește pachetul din rețeaua locală cu adresa sursă S, adresa destinație D, portul sursă P, portul destinație Q, cu altul nou ce va avea adresa sursă M (adresa ruterului), adresa destinație D, portul sursa K. Portul destinație nu se schimbă. De asemenea se memorează asocierea (S,P) – K. Dacă un pachet ajunge pe ruter din exterior, având adresa destinație M, adresa sursă Q și portul destinație K, atunci acest pachet va fi înlocuit cu un altul cu adresa destinație S, adresa sursă Q, portul destinație P și va fi trimis în rețeaua locală. Portul sursă nu se schimbă.

Un caz special al PAT îl reprezintă redirectarea. În acest caz se va înlocui pachetul primit din rețeaua locală având adresa sursă S, adresa destinație D, portul P cu un altul având adresa sursă S, adresa destinație M (adresa ruterului), portul R (portul în care se face redirectarea, specificat de utilizator). Redirectarea este în general folosită pentru a implementa un proxy transparent, caz în care pe ruterul M portul R ascultă un proxy configurat pentru proxy transparent.

Dynamic Host Configuration Protocol (DHCP) reprezintă standardul IP proiectat cu scopul de a reduce complexitatea muncii de administrare a adreselor prin folosirea unui server în acest scop.

În cazul Windows Server 2003 serviciul DHCP permite serverului să îndeplinească acest rol, adresele IP fiind alocate dinamic. Acest lucru înseamnă că un dispozitiv poate avea, de fiecare data când se conectează la rețea, altă adresă IP. Sau chiar se poate schimba în timp ce dispozitivul este conectat la rețea!

Un alt mare avantaj ar fi că un calculatorpoate fi adăugat în rețea fără a fi nevoie de un administrator care să-i configureze proprietățile TCP/IP.

Funcționarea DHCP

În primul rând, DHCP nu este un protocol care să necesite autentificare. Altfel spus oricine are acces fizic la rețea și activează aceasta opțiune pe clientul său va putea face lucruri dintre cele mai neplăcute (un atac de tip DoS).

În Active Directory (AD) nu pot fi autorizate să funcționeze ca servere DHCP decât serverele pe care rulează Windows 2000 sau Server 2003. Dacă un server DHCP descoperă că nu este autorizat în AD, atunci nu va mai răspunde cererilor clienților (facilitatea aceasta se întâlnește numai la Microsoft. Se poate instala DHCP pe Linux și va funcționa fără să necesite autorizare).

O altă problemă ține de traficul generat în rețea. Prima dată când în rețea apare un dispozitiv care are activată această opțiune, va transmite broadcast (la toate calculatoarele din rețea) un pachet DHCPDISCOVER. Serverul de pe segmentul local din care face parte stația respectivă va citi acest pachet și va răspunde cu un altul, numit DHCPOFFER. Acesta din urmă conține adresa IP și alte informații specifice. Este posibil ca înainte de a oferii adresa clientului său, serverul să facă anumite teste în rețea: să genereze un pachet ARP sau ICMP pentru a verifica dacă nu cumva adresa este deja folosită de o altă stație. Dacă mai există mai multe segmente de rețea, dar nu sunt servere DHCP, pentru fiecare dintre acestea mașina care asigură rutarea între segmentele de rețea va trebui să fie configurată astfel încât să transmită cererile broadcast către segmentul pe care există serverul DHCP.

Dacă există mai multe servere, un client poate recepționa pachete DHCPOFFER de la toate serverele, prin urmare trebuie să aleagă dintre acestea și să retransmită o cerere DHCPREQUEST prin care să identifice explicit serverul care are „cea mai bună ofertă”. Celelalte servere vor trebui să notifice în mod explicit pachetul DHCPREQUEST și să-și vadă de treaba lor în continuare.

Presupunând că a fost găsit un server să ofere o adresă IP, acesta răspunde clientului cu un pachet DHCPPACK, prin care îl anunță că închirierea (lease) adresei IP s-a încheiat. Dacă din diferite motive oferta nu mai este valabilă, serverul va răspunde cu un pachet DHCPNAK, care îl va obliga pe respectivul client să transmită din nou în rețea pachetul DHCPDISCOVER.

Presupunând că mașina a recepționat DHCPPACK, responsabilitatea este transferată clientului: va testa adresa primită prin transmiterea în broadcast a unor cereri ARP. Dacă un nod răspunde la cererea ARP, se presupune că adresa a fost alocata unui alt calculator. În acest moment, clientul va refuza adresa oferită transmițînd un mesaj DHCPDECLINE către server si un nou pachet DHCPDISCOVER.

În cazul în care un client a obținut adresa IP de la serverul DHCP, cererea de închiriere a adresei trebuie înnoită înainte de perioada de expirare printr-o altă cerere de DHCPREQUEST. Dacă stația de lucru își termină treaba înaintea timpului de expirare a perioadei de valabilitate a timpului ar trebui să transmită serverului un mesaj DHCPRELEASE, prin care defapt anunță că adresa poate fi pusă la dispoziția altor echipamente.

Componentele DHCP și alocarea adreselor

În momentul configurării unui server pentru a funcționa ca DHCP server se întâlnesc următoarele componente:

Scope – reprezintă intervalul de adrese IP consecutive, definind de obicei o singură subrețea pe care trebuie să o deservească DHCP. Prin intermediul său serverul gestionează distribuția și alocarea adreselor IP;

Superscop – reprezintă gruparea adminstrativă a mai multor scopuri pentru a putea fi folosite în cazul mai multor subrețele. Această gruparea îmbracă forma unei liste ce cuprinde member scopes (scopurile membre). Configurarea unui scop implică configurarea individuală a membrilor acestuia;

Exclusion range – reprezintă o secvență de adrese IP din cadrul unui scop, care nu poate fi oferită spre distribuție cliențlor DHCP;

Address pool – reprezintă adresele IP rezultate prin eliminarea din cadrul unui scop a intervalului mai sus amintit;

Lease (închirierea) – se referă la timpul pe care un client îl are la dispoziție pentru a folosi adresa IP. Înainte de expirarea timpului, clientul trebuie să-și reînoiască cererea către server;

Reservation – se utilizează atunci când se dorește ca un anumit dispozitiv să folosească de fiecare dată aceeași adresă IP;

Options type – parametrii de configurare ai serverului, care pun la dispoziție opțiui suplimentare: adresa IP a gateway-ului (ruter, serverele DNS);

Options class – clienții pot fi grupați pe clase, cărora li se vor asocia tipuri de opțiuni de configurare. Clasele de opțiuni sunt de două tipuri: vendor sau user.

Alocarea către clienți a adreselor IP se face prin trei metode:

Dinamic. Serverul DHCP se ocupă doar cu alocarea adreselor din cadrul scopului. Periodic, fiecare client trebuie să-și reînoiască cererea. Dacă nu se face acest lucru, perioada de închiriere expiră și adresa va fi alocată altui client.

Automat. O dată alocată o adresă unui client, singura modalitate prin care aceasta mai poate fi schimbată presupune configurarea manuală a stației respective. Dacă stațiile din rețea nu-și schimbă poziția, aceasta este cea mai bună variantă.

Manuală. O adresă este alocată permanent aceluiași calculator.

Instalarea și configurarea DHCP

Instalarea unui server DHCP presupune crearea unui scop și configurarea intervalului de adrese IP. Mai întâi, se adaugă componenta DHCP: Start Control Panel Add/Remove Programs Window Components Networking Services Details Dinamic Host Configuration Protocols.

Din acest moment în Start All Programs Administrativ Tools, vom găsi și componenta DHCP pentru serverul nostru. Acum se poate crea un scop pe serverul DHCP prin deschiderea consolei respective:

click pe numele serverului Action Authorize

Action New Scope Next … Finish.

5.3.1. Securitatea la nivel Internet

Listele de control a accesului (Acces Control Lists) sunt anumite registre, tabele ce condiționează traficul printr-un router. Aceste registre sau tabele indică router-ului ce tipuri de pachete să accepte sau să refuze. Acceptarea sau refuzul se pot baza pe condiții specifice. Listele de control a accesului permit administrarea traficului și accesul sigur la și de la o rețea. Listele pot fi create pentru orice tip de protocoale de rețea precum IP și IPX.

Listele de control a accesului filtrează traficul din rețea controlând care pachete sunt acceptate și care sunt blocate de interfața routerului. Routerul examinează fiecare pachet conform condițiilor specificate în liste pentru a determina dacă poate accepta pachetul și a-l trimite mai departe sau dacă îl blochează. Unele dintre deciziile routerului sunt surse și destinații de adrese, protocoale și porturi ale nivelelor superioare. Pentru a controla traficul prin router listele de control a accesului trebuiesc definite pentru fiecare protocol utilizat, fiecare adresă de destinație, și pentru fiecare port de transmitere. Pentru a permite transmiterea de date în mod sigur este necesară crearea unei liste de control a accesului atât pentru datele transmise către rețea cât și pentru cele transmise de rețea. De asemenea fiecare interfață poate avea mai multe protocoale definite, iar în cazul în care routerul are două interfet configurate pentru IP, AppleTalk și IPX, va fi necesară crearea a 12 liste de control a accesului (câte una pentru fiecare protocol, două pentru transmitere de date în și dinspre rețea și alte două pentru numărul de porturi folosite). Câteva din motivele pentru care ar trebui create astfel de liste sunt:

limitează traficul prin rețea și cresc performanțele rețelelor (de exemplu, prin restricționarea traficului video);

asigură controlul fluxului de trafic (pot restricționa transmiterea de update-uri în cazul în care acestea nu sunt necesare);

asigură un anumit nivel al securității privind accesul în rețea (routerul se poate programa astfel încât un user să aibă acces la o parte a rețelei, fără ca alt user să poată accesa acea parte);

cu ajutorul acestora se decide ce fel de trafic este permis și care este blocat (de exemplu, se permite traficul e-mail-urilor, dar se blochează cel de tip telnet);

permit administratorului să controleze părțile unei rețele ce pot fi accesate de clienți;

limitează traficul anumitor gazde pentru ca aceseta să poată accesa numai anumite tipuri de fișiere (precum FTP sau HTTP).

În cazul în care listele de control nu sunt configurate, toate tipurile de pachete vor avea acces spre rețea.

Din punct de vedere al funcționării, deciziile care trebuie luate de router se găsesc în aceste liste. Mai întâi se caută în lisetele de control inserate, datele cu privire la pachetul care circulă prin rețea apoi se verifică dacă este trecută opțiunea de acceptare sau respingere. Ordinea în care sunt înscrise opțiunile este importantă deoarece pachetele sunt testate pentru fiecare opțiune în parte, începând cu prima. Dacă s-a găsit o condiție într-o linie de comandă care să corespundă, opțiunilor din lista de controla, atunci routerul va efectua acțiunea de a refuza sau a admite pachetul, după caz, fără a verifica lista de acces în continuare. În cazul în care trebuiesc adăugate noi condiții sau opțiuni adițional, este necesar să se creeze o nouă listă de control a accesului, iar cea veche să fie ștearsă (se folosește comanda „no acces-list numărul_listei”) deoarece opțiunile adăugate nu vor fi luate în considerare, fiind aflate la sfârșit. Procesul de revizuire a unei liste de control este de simplu – se crează cu ajutorul unui editor de texte precum notepad, iar apoi se copiază în configurația routerului.

În cazul în care un pachet ajunge la router, în primul rând acesta verifică adresa de nivelul 2, iar în cazul în care se potrivește oprește transmiterea pachetului până va găsi o listă de control. Dacă lista este găsită, căută o linie de comandă care să corespundă cu proprietățile pachetului restul setărilor din listă nemaifiind verificate. Dacă pachetul este acceptat, routerul va verifica întreg pachetul pentru a afla adresa de destinație, iar apoi va verifica din nou în listele de acces dacă respectiva adresă poate accepta pachetul. În cazul în care pachetul poate fi acceptat de către destinatar, acesta va fi încapsulat într-un nou protocol de nivelul 2 și trimis următorului dispozitiv.

În cazul în care un pachet nu corespunde nici-unei setări din listă acesta va fi respins deoarece la sfârșitul fiecărei liste de acces se află comanda „deny any”.

Se poate spune că un router ce are configurată o listă de control a accesului operează pe anumite etape aflate într-o ordine logică.

Crearea de liste de control a accesului

Listele de control a accesului pot fi create în nenumărate moduri, deoaerce există numeroase feluri de liste precum cele standard, extinse, IPX, AppleTalk și altele. Când se configurează listele de control pe un router trebuie avut în vedere faptul că fiecărei liste trebuie să-i corespundă un număr unic, număr care identifică tipul listei și care trebuie să fie valid pentru respectivul tip de listă. Înainte de a fi introduse comenzile și opțiunile și repartizarea unui anumit număr listei utilizatorul va introduce comanda „access-list”. Aceasta este numai prima parte din procesul de creare a unei liste de acces. Cea de-a doua parte presupune alocarea acesteia unei interfețe potrivite. O altă linie de comandă importantă este „access-grop”, comandă prin care se specifică dacă a listă de control a accesului va fi folosită în cazul în care se verifică destinația pachetului sau sursa sa. Pentru a programa un router, un administrator ar trebui să privească lucrurile din interiorul său. Astfel, traficul care este transmis spre o interfață va fi verificat ținându-se seama de anumite liste de control specifice, iar traficul care este transmis dinspre o interfață va fi verificat după alte liste de acces.

Pentru a crea listele de control a accesului trebuie să se țină cont de următoarele reguli:

o singură listă pentru fiecare protocol și pentru fiecare direcție;

listele de acces standard să fie folosite pentru destinațiile apropiate;

listele de acces extinse să fie folosite pentru sursele apropiate;

porturile trebuie privite din două perspective – trafic primit și trafic transmis;

operarea pe etape secvențiale pentru fiecare condiție în ordine înscrierii lor, iar în cazul în care un pachet nu corespunde nici unei condiții să nu i se permită accesul;

intrările din liste să fie specificate într-o ordine de la particular către general (mai întâi ar trebui menționați utilizatorii cărora nu le este permis accesul, și apoi grupurile);

routerul să fie configurat astfel încât mai întâi să se verifice dacă o anumită condi1tie corespunde unui pachet și apoi dacă accesul pachetului va fi acceptat sau respins;

folosirea unui editor de text pentru a crea observații logice;

noile comenzi introduse într-o listă de control vor fi adăugate întotdeauna la sfârșitul listei. Va fi necesară refacerea întregii liste de control;

o listă de acces IP va trimite un mesaj de genul „host unreachable”(nu s-a putut găsi destinația) expeditorului și va trimite pachetul în bitul bucket;

îndepărtarea unei liste de acces să se facă cu atenție, deoarece poate duce la stoparea întregului trafic;

mențiunile făcute în listele ce verifică traficul dinspre router nu va afecta traficul generat de routerul local.

Verificarea conținutului și plasamentului unei liste de control se poate face prin comanda „show”. Comanda „show ip interface”(figura 5.) afișează interfața IP și indică dacă listele de control a accesului sunt setate. Comanda „the show access-lists” afișează conținutul tuturor listelor de control din router. Pentru a fi afișată o listă specifică se adaugă numărul/numele ca o opțiune pentru această comandă. Comanda „the show running-config” va afișa listele de acces ce rulează pe un router și informațiile atribuite interfeței routerului. Aceste comenzi vor verifica conținutul listei și locația. Este o bună metodă și pentru testarea listelor de acces din punct de vedere logic prin trimiterea unor pachete standardizate.

Listele de control standard verifică sursa adreselor IP ce sunt transmise prin router (se folosesc numere de la 1 la 99). De menționat că în primele setări ale unei liste de control a accesului nu se află nici o mască de rețea. Când nu este afișată nici o listă, este folosită masca standard 0.0.0.0., ceea ce înseamnă că întreaga adresă trebuie să se potrivească sau acestă linie de comandă a listei nu se aplică, iar routerul va trebui să verifice următoarea linie de comandă.

Figura 5.1. – Exemplu de Listă de control a accesului (comanda show ip interface)

Listele de control a accesului extinse sunt întâlnite mai des decât cele standard, deoarece furnizează un control mai bun. Acestea verifică sursa și destinația pachetelor de îndată ce sunt gata să verifice porturile și tipurile de protocoale. Se poate spune că pachetele pot fi accesptate sau refuzate în funcție de portul pe care a fost trimis sau tipul protocolului. De exemplu, o astfel de listă poate permite un e-mail de la Fa0/0 spre o destinație specifică S0/0 în timp ce poate refuza transferul de fișiere. Când pachetele sunt respinse se trimite destinatarului un mesaj de tip echo prin care i se aduce la cunoștință că destinația nu poate fi găsită. Se pot configura nenumărate linii de comandă pentru o singură listă de acces, numărul acestora fiind limitat doar de memoria routerului (de menționat că un număr mare de comenzi va îngreuna efectuarea traficului de către router). Deși unele dintre aceste liste pot fi foarte lungi, trebuie ca la final să se menționeze tipul protocolului folosit și numărul portului. Precum listele de acces a controlului standard acestea cuprind și ele operații logice și fiecăreia îi corespunde un anumit număr între 100 și 199.

Comenzile sunt asemănătoare cu cele folosite în cazul listelor de acces standard (de exemplu, comanda „ip access-group” atașează o listă extinsă la o interfață a routerului). O dată cu apariția versiunii CISCO 11.2 există posibilitatea denumirii unei liste de control a accesului, indiferent de felul ei, fără a mai fi nevoie atașarea unui număr. Această versiune oferă oportunitatea găsirii unei liste de control mai rapid, nelimitarea lor ca număr și introducerea de noi linii de comandă fară a mai fi necesară ștergerea în totalitate a listei de acces.

Cele mai des folosite listele de acces când se dorește deschiderea de găuri în firewall în mod dinamic sunt listele reflexive. Configurarea listelor de acces se face în trei etape:

crearea unei liste în care se salvează intrări despre conexiunile create și permise;

agregarea listei respective la o listă de acces;

setarea perioadei de timp după care o conexiune este Ethernetderată închisă dacă nu se generează trafic;

În general listele de acces reflexive se folosesc pentru a lăsa în afară un anumit tip de pachete iar în interior numai reply-uri de la acele pachete. Practic, se urmăresc aceleași beneficii date de o filtrare stateful inspection, cu un overhead mult mai mic. Bineînțeles că această abordare nu funcționează decât pentru anumite protocoale. Implementarea salvează într-o tabelă pachetele reflectate ale unei reguli de reflectare. Intrările din aceste liste au următoarele proprietăți:

sunt temporare (expiră după o anumită perioadă) și sunt întotdeauna de tipul permit;

protocolul este același ca al pachetului reflectat;

adresele sursă și destinație sunt aceleași ca cele ale pachetului reflectat, dar inversate (adresa sursă devine adresă destinație și viceversa);

dacă există porturi, acestea sunt aceleași ca ale ale pachetului reflectat, dar inversate (portul sursă devine port destinație și viceversa);

dacă este detectat un pachet de închidere al conexiunii intrarea va fi ștearsă din tabelă;

dacă nu se generează trafic pe conexiune un anumit timp intrarea va fi ștearsă.

Definirea listei reflexive

access-list extended nume-listă { permit | deny } protocol sursă  
[ wildcard-sursă [ destinație [ wildcard-destinație ] ] ]  
[ operator operand-sursă [ operator operand-destinație ] ]  
reflect nume timeout [ secunde ] 

Reflectările pachetelor pe care se face match din regula specificată vor fi introduse în lista nume. Se vor genera intrări în listă numai dacă se face match pe pachete și numai dacă nu s-a făcut match pe alte reguli definite înaintea regulii care face reflect. Timeoutul conexiunii este setat la secunde secunde.

Agregarea listei reflexive la o lista de acces

protocol access-list extended nume-listă-acces evaluate  
nume-listă-reflexivă

Se vor introduce în nume-listă-acces intrările din lista nume-listă-reflexivă. Se păstrează toate proprietățile intrărilor din lista reflexivă (adică pot fi adăugate dinamic noi intrări sau șterse intrări din lista de acces nume-listă-acces).

Un alt lucru important în cazul listelor de control a accesului este plasarea lor. Dacă listele sunt plasate într-un loc potrivit în afară de controlul traficului și filtrarea sa, vor determina și o eficientizare a rețelei. Acestea trebuie plasate în locul în care vor oferi cea mai mare eficiență. Regula generală este ca aceste liste să fie plasate cât mai aproape de sursa unde traficul este respins. Listele de acces standard nu specifică adresa destinației și deci ar trebui plasate cât mai aproape de destinație. Din păcate un administrator poate plasa o listă de control a accesului numai pe un dispozitiv CISCO la care are acces, de aceea ar trebui să se țină seama și de acest lucru.

5.3.3.Securitatea la nivel aplicație

Firewall-urile sunt cele mai utilizate dispozitive de protecție împotriva atacurilor. Un firewall este un sistem care separă o rețea protejată de una neprotejată, aceasta din urmă fiind în majoritatea cazurilor Internetul. Un dispozitiv firewall monitorizează și filtrează tot traficul dintre cele două rețele, conform unei politici predefinite de control a accesului.

Practic firewall-urile implementează regului care descriu modul de filtrare atât a pachetelor de date recepționate, cât și a celor trimise de mașină. Astfel, sistemul sau rețeaua vor fi supuse unor riscuri mai mici, deoarece numai tipurile de pachete (utilizate de anumite protocoale sau servicii) permise pot trece prin firewall.

Pentru ca un firewall să fie eficient trebuie ca acesta să fie așezat în puctul de conexiune dintre rețeaua internă și Internet (router sau gateway). În lipsa unui firewall toate mă surile de securitate trebuie luate pe fiecare calculator în parte. Un firewall oferă posibilitatea concentrării securității într-o singură locație – există în principiu două tipuri de firewall:

Firewall-uri la nivel de pachet. Acestea filtrează, în general, pachetele de date care trec

prin el. politicile de securitate se definesc în acest caz în funcție de sursă și destinația pachetelor, precum și de porturile și protocoalele lui. Firewall-ul este transparent, adică utiliztorii nu sesizează existența sa. Un asemenea firewall este de obicei un router care filtrează informațiile ce trec în ambele sensuri.

Firewall-uri la nivel de aplicație. Acestea se referă de obicei la servere proxy, ce nu

permit nici un fel de trafic între rețelele pe care acestea le separă și ce oferă mecanisme complexe de autentificare și monitorizare a conexiunilor. Toate comunicațiile se realizează folosind ca intermediar serverul proxy. Față de firewall-urile la nivel de pachet, acestea prezintă dezavantajele că reduc performanța conexiunii și fac sistemul să fie mai puțin transparent, programele server și client trebuind să implementeze algoritmii speciali pentru a putea comunica între ele.

Avantajele unui firewall la nivel de pachet sunt următoarele:

Un firewall bine configurat poate proteja întreaga rețea internă aflată în spatele său;

Firewall-ul este transparent, în sensul că utilizatorii serviciilor Internet din interiorul rețelei nu au cunoștință de existența acestuia;

Un firewall oferă posibilitatea concentrării securității, nefiind necesară instalarea acestuia pe fiecare calculator din rețea în parte;

Permit monitorizarea rețelei, adică înregistrarea în fișierele jurnal (log) a evenimentelor privind traficul în rețea.

Dezavantajele firewall-uriliro la nivel de pachet sunt:

Sistemul este vulnerabil la atacuri cu protocoale mai înalte decânivelul de transmisie a pachetelor care sunt tratate de către firewall;

Firewall-urile pot afecta funcționarea anumitor aplicații Internet;

Firewall-urile nu oferă nici un fel de protecție împotriva atacurilor din interiorul rețelei

Trebuie avut în vedere faptul că firewall-ul nu reprezintă rezolvarea tuturor problemelor dintr-o rețea ci doar un prim pas în protecția acesteia. În acest sens, existența unui firewall nu exclude necesitatea implementării de măsuri de securitate pe calculatorele din cadrul rețelei interne. De multe ori, se acordă prea multă importanță firewall-ului ș ise consideră în mod eronat că acesta protejează rețeaua împotriva cracker-ilor. Există situații în care din motive de organizare a securității, accesul la diverse servicii trebuie permis în afara rețelei, necesitând astfel compromisuri în ceea ce privește securitatea acesteia; spre exemplu dacă se dorește, accesarea sistemului prin intermediul SSH dintr-o rețea externă unde nu se cunoaște adresa sistemului client (o conexiune cu alocarea dinamică a adresei, unde numărul de adrese posibile est ede ordinul zecilor de mii, cum este cazul AOL sau XNET). Configurarea firewall-ului constă în principal în definirea serviciilor care vor fi „vizibile” din afara serverului; spre exemplu, vom bloca accesul utilizatorilor în sistem (telnet sau SSH), accesul la sistemele de fișiere în rețea (NFS sau Samba) și vom permite accesul la sistemul Web (Apache) și la poșta electronică (Send-mail).

Politica de securitate se referă în cazul firewall-urilor la nivel de pachet la definirea serviciilor care vor fi permise, respectiv interzise și la stabilirea calculatorelor din afara rețelei care vor avea acces la respectivele servicii. Această politică se stabilește mai întâi prin determinarea servciilor care sunt necesare utilizatorilor. De multe ori trebuie făcute compromisuri în ceea ce privește balanța dintre serviciile care sunt necesare și cele care trebuie protejate.

În sitemul de operare Linux, a fost implementat un firewall la nivel de nucleu, sistem numit – în versiunea 2.4.x a acestuia – iptables. Acest sistem oferă posibilitatea de a filtra sau redirecționa pachetele de date, precum ș ide a modifica informațiile despre sursa și informația pachetelor, procedură denumită NAT (Network Addres Translation). Una dintre aplicațiile sistemului NAT este posibilitatea „deghizării” pachetelor (masquerading). Deghizarea înseamnă ca pachetele trimise de către sistemele aflate în rețea, care au stabilite ca gateway o anumită mașină, să pară transmise de mașina respectivă, și nu de cea originală. Cu alte cuvinte mașina configurată ca firewall retrimite pachetele venite dinspre rețea către exterior, făcând să pară că provin tot de la ea. Acest mecanism este foarte util atunci când există o mașină care realizează legătura la Internet, o singură adresă IP alocată și mai multe calculatoare în rețea care au definită mașina respectivă ca gateway. Situația este des întâlnită în cadrul companiilor mici și mijocii dotate cu o legătură Internet permanentă, mai ales ca urmare a crizei de adrese IP manifestată în ultimii ani. Nucleul Linux definește două tabele de regului, prima numită filter, utilizată pentru filtrul de pachete, și a doua numită nat, utilizată pentru sistemul NAT. Există 5 lanțuri (chains) predefinite, adică o succesiune de regului utilizate pentru verificarea pachetelor de date care tranzitează sistemul. Lanțurile INPUT și FORWARD sunt disponibile doar pentru tabela filter, lanțurile PREROUTING și POSTROUTING sunt doar pentru tabela nat, iar lanțul OUTPUT, pentru ambele tabele. Atunci când un pachet intră în sistem printr-o interfață de rețea, nucleul decide dacă pachetul este destinat mașinii locale (lanțul INPUT) sau altui calculator (lanțul FORWARD). Într-un mod similar, pachetele care pleacă dinspre mașina locală trec prin lanțul OUTPUT. Fiecare lanț conține mai multe „reguli” ce vor fi aplicate pachetelor de dat care le tranzitează. În general, regulile identifică adresele sursă și destinație a pachetelor, însoțite de porturile sursă și destinație, precum și protocolul (serviciul) asociat. Atunci când un pachet corespunde unei reguli, adică parametrii menționați mai sus coincid, asupra acestuia se va aplica o anumită acțiune, care înseamnă direcționarea către o așa zisă „țintă” (target). În acest sens, dacă o regulă specifică acțiunea ACCEPT, pachetul nu mai este verificat folosind celelalte regului ci este direcționat către destinație. Dacă regula specifică actiunea DROP, pachetul este „aruncat” – cu alte cuvinte, nu i se permite să ajungă la destinație – , netrimițând nimic calculatorului care l-a expediat. Dacă regula specifică acțiunea REJECT, pachtului nu i se permite să ajungă la destinație, însă este trimis un mesaj de eroare expeditorului. Este important ca fiecărui lanț să îi fie atribuită o acțiune implicită, care va reprezenta destinația pachetului dacă nici una dintre regulile stabilite nu corespunde. Astfel, lanțul INPUT trebuie să aibă drop sau reject ca acțiune implicită pentru orice pachet care se dorește a fi filtrat. Pentru a include sistemul iptables în nucleu, acesta trebuie compilat cel puțin cu următoarele opțiuni activate:

Networking options

Network packet filtering (replaces ipchains)

IP: Netfilter Configuration

conection tracking (required for mask/NAT)

IP tables support

Packet filtering

Full NAT

Packet mangling

LOG target support

De asemenea, trebuie instalat pachetul iptables. Programul iptables servește la manipularea lanțurilor și regulilor. Dacă sistemul iptables a fost compilat modular, înainte de folosirea programului cu același nume va trebui încărcat modulul corespunzător, folosind comanda „modprobe ip_tables”. Tabelele de reguli pot fi gestionate prin intermediul liniei de comandă, dar varianta recomandată este salvarea acestor reguli într-un fișier script, de regulă „/etc/sysconfig/iptables”. Sintaxa generală a comenzii este:

iptables comanda regula [opțiuni]

Există o serie de comenzi pentru manipularea regulilor, dintre care mai importante sunt următoarele:

– A lanț regulă [opțiuni] – adaugă una sau mai multe regului la sfârșitul lanțului specificat;

– I lanț [număr regulă] regulă [opțiuni] – inserează una sau mai multe reguli în lanț la

începutul său. Dacă este specificat și parametrul număr_regulă, inserarea se face în poziția respectivă;

– D lanț (număr_regulă | regulă) [opțiuni] – șterge una sau mai multe reguli din lanțul specificat, identificate fie prin numărul acesteia, fie prin ea însăși;

– R lanț număr_regulă regulă [opțiuni] – înlocuiește regula având numărul specificat cu altă regulă;

– L [lanț] – afișează regulile conținute de un anumit lanț, sau de toate, dacă acesta nu est specificat;

– F [lanț] – șterge toate regulile conținute de un anumit lanț sau de toate, dacă acesta nu este specificat;

– N [lanț] – creează un lanț nou (definit de către utilizator);

– X [lanț] – șterge lanțul specificat, sau toate lanțurile definite de către utilizator, dacă acesta nu este specificat.

-P lanț acțiune – stabilește acțiunea implicită pentru lanțul specificat.

Parametrii pentru specificarea regulilor

Există un număr de parametrii care, grupați, constituie specificarea regulii:

– s [!] adresă [mască] – specifică adresa sursă a pachetului. Adresa poate fi un nume de mașină, un nume de rețea, sau o adresă IP. poate fi specificată opțional și masca de rețea. Caracterul „!” desemnează „negația” adresei, dacă regula nu se va aplica adresei respective;

– d [!] adresă [mască] – specifică adresa destinație a pachetului. Sintaxa este similară cu cea a parametrului –s.

– p [!] protocol – specifică protocolul de încapsulare a pachetului. Poate fi icmp, tcp, udp sau all (orice protocol). Pentru lista completă de protocoale se poate consulta fișierul /etc/protocols;

– i [!] interfață – stabilește interfața de rețea prin care este recepționat pachetul. În cadrul numeli interfeței poate fi utilizat și caracterul wildcard „+”, care desemnează orice șir (spre exemplu, eth+ semnifică orice dispozitiv Ethernet);

– o [!] interfață – stabilește interfața de rețea pe care va fi transmis pachetul. Sintaxa este similară cu cea a parametrului -i

– j acțiune – speceifică acțiunea care va fi luată atunci când pachetul corespunde regulii.

Opțiuni pentru pachetele TCP:

– sport [!] [port[:port]] – stabilește portul sursă al pachetului. Poate fi utilizat fie un nume de serviciu (http, smtp), conform fișierului /etc/service, fie un număr de port, fie un interval de porturi (2000:2300). De asemenea, poate fi utilizat caracterul „!”, a cărui semnificație a fost descrisă mai sus;

– dport [!] [port[:port]] – stabilește portul destinație al pachetului. Sitaxa este similară cu cea a opțiunii „sport”;

– tcp-flags [!] mască comparație – specifică opțiunile (flags) pachetului TCP, care trebuie să fie setate pentru ca pachetul să corespundă regulii. Argumentul mască este lista de opțiuni care vor fi verificate (separate prin virgulă), iar comparație este lista de opțiuni care trebuie să fie setate pentru ca pachetul să corespundă. Opțiunile valide sunt: SYN, ACK, FIN, REST, URG, PSH, ALL și NONE. Semnificația acestor opțiuni este descrisă în RFC 793;

– sin – determină ca regula să facă referire doar la pachetele TCP pentru inițierea conexiunii, nu și la pachetele de date (opțiunile ACK și FIN nu sunt setate).

Opțiuni pentru pachete UDP:

– Sport [!] [port[:port]]; – dport [!] [port[:port]] – vezi descrierile de la opțiuile cu același nume pentru pachetele TCP

Opțiuni pentru pachetele ICMP:

– icmp-type [!] tip – specifică tipul de mesaj ICMP. Sunt valide următorele tipuri: echo-request, echo-reply, source-quench, time-exceded, destination-unreachable, neteork-unreachable, host-ureachable, protocol-unreachable și port-unreachable.

Pe lângă acțiunile accept, DROP și REJECT, mai există o serie de acțiuni speciale: – QUEUE – pachetul este introdus într-o coadă de unde va fi preluat de alte programe pentru prelucrări ulterioare;

– RETURN – oprește verificarea regulilor din lanțul curent. Dacă regula a fost apelată dintr-un alt lanț, pachetul este returnat la regula de unde a fost efectuată trimiterea. În caz contrar, va fi utilizată acțiunea implicită pentru lanțul curent;

– LOG – jurnalizează antetul pachetelor care se potrivesc cu această regulă, prin intermediul sistemului syslog (vezi man syslogd pentru detalii).

Există mai multe interfețe grafice pentru generarea de firewall-uri pentru sistemul iptables. Dintre acestea cele mai importante sunt Firewall Builder și Firestarter.

Ultimul pas în cadrul implementării unui firewall este verificarea funcționării acestuia. Testarea firewall-ului poate fi dificilă dacă acesta conține multe reguli. Testarea terbuie efectuată din afara rețelei, utilizând un scanner (NMAP sau SATAN). De asemenea trebuie testată și conectivitatea din interiorul rețelei către exterior. O dată stabilite regulile de filtrare și testată funcționarea firewall-ului, este bine să se salveze configurația curentă a sistemului iptables, apelând comanda iptables-save>/etc/sysconfig/iptables. Pentru a restaura în orice moment configurația, se utilizează comanda iptables restore</etc/sysconfig/iptables.

INET_IP="194.236.50.155"

INET_IFACE="eth0"

INET_BROADCAST="194.236.50.255"

LAN_IP="192.168.0.2"

LAN_IP_RANGE="192.168.0.0/16"

LAN_IFACE="eth1"

LO_IFACE="lo"

LO_IP="127.0.0.1"

/sbin/depmod -a

/sbin/modprobe ip_tables

/sbin/modprobe ip_conntrack

/sbin/modprobe iptable_filter

/sbin/modprobe iptable_mangle

/sbin/modprobe iptable_nat

/sbin/modprobe ipt_LOG

/sbin/modprobe ipt_limit

/sbin/modprobe ipt_state

echo "1" > /proc/sys/net/ipv4/ip_forward

$IPTABLES -P INPUT DROP

$IPTABLES -P OUTPUT DROP

$IPTABLES -P FORWARD DROP

$IPTABLES -N bad_tcp_packets

$IPTABLES -N allowed

$IPTABLES -N tcp_packets

$IPTABLES -N udp_packets

$IPTABLES -N icmp_packets

$IPTABLES -A bad_tcp_packets -p tcp –tcp-flags SYN,ACK SYN,ACK \

-m state –state NEW -j REJECT –reject-with tcp-reset

$IPTABLES -A bad_tcp_packets -p tcp ! –syn -m state –state NEW -j LOG \

–log-prefix "New not syn:"

$IPTABLES -A bad_tcp_packets -p tcp ! –syn -m state –state NEW -j DROP

$IPTABLES -A allowed -p TCP –syn -j ACCEPT

$IPTABLES -A allowed -p TCP -m state –state ESTABLISHED,RELATED -j ACCEPT

$IPTABLES -A allowed -p TCP -j DROP

$IPTABLES -A tcp_packets -p TCP -s 0/0 –dport 21 -j allowed

$IPTABLES -A tcp_packets -p TCP -s 0/0 –dport 22 -j allowed

$IPTABLES -A tcp_packets -p TCP -s 0/0 –dport 80 -j allowed

$IPTABLES -A tcp_packets -p TCP -s 0/0 –dport 113 -j allowed

$IPTABLES -A udp_packets -p UDP -s 0/0 –destination-port 53 -j ACCEPT

$IPTABLES -A udp_packets -p UDP -s 0/0 –destination-port 123 -j ACCEPT

$IPTABLES -A udp_packets -p UDP -s 0/0 –destination-port 2074 -j ACCEPT

$IPTABLES -A udp_packets -p UDP -s 0/0 –destination-port 4000 -j ACCEPT

$IPTABLES -A icmp_packets -p ICMP -s 0/0 –icmp-type 8 -j ACCEPT

$IPTABLES -A icmp_packets -p ICMP -s 0/0 –icmp-type 11 -j ACCEPT

$IPTABLES -A INPUT -p tcp -j bad_tcp_packets

$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -s $LAN_IP_RANGE -j ACCEPT

$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT

$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT

$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT

$IPTABLES -A INPUT -p ALL -d $INET_IP -m state –state ESTABLISHED,RELATED \

-j ACCEPT

$IPTABLES -A INPUT -p TCP -i $INET_IFACE -j tcp_packets

$IPTABLES -A INPUT -p UDP -i $INET_IFACE -j udp_packets

$IPTABLES -A INPUT -p ICMP -i $INET_IFACE -j icmp_packets

$IPTABLES -A INPUT -m limit –limit 3/minute –limit-burst 3 -j LOG \

–log-level DEBUG –log-prefix "IPT INPUT packet died: "

$IPTABLES -A FORWARD -i $LAN_IFACE -j ACCEPT

$IPTABLES -A FORWARD -m state –state ESTABLISHED,RELATED -j ACCEPT

$IPTABLES -A OUTPUT -p tcp -j bad_tcp_packets

$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT

$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT

$IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT

$IPTABLES -A OUTPUT -m limit –limit 3/minute –limit-burst 3 -j LOG \

–log-level DEBUG –log-prefix "IPT OUTPUT packet died: "

$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT –to-source $INET_IP

Figura 5.2. Exemple de linii de comandă ale unui firewall de Linux

În sistemul de operare Windows XP Server 2003, dar și în Windows 2000, este folosit NetBIOS over TCP/IP (NetBT) pentru a realiza comunicarea cu versiunile mai vechi ale OS (NT, 9x). Când comunică între ele sistemele Windows 2000/XP folosesc direct hosting. Serviciul Server Message Block folosit în partajarea resurselor în rețea rulează direct în TCP/IP, fără a mai fi nevoie de NetBIOS pe post de intermediar.

Comunicațiile prin NetBIOS și porturile 135-139 pot dezvălui informații suficiente despre un sistem Windows și permit o multitudine de atacuri asupra acestuia. Este bine ca traficul pe aceste porturi să fie blocat la nivel de firewall.

Până la SP2, firewall-ul XP-ului (ICF – Internet Connection Firewall) era complicat de folosit, mulți renunțând la el în favoarea unui third party: Black Ice sau Zone Alarm. O dată cu acest update, lucrurile se simplifică considerabil pentru un user. Firewall din SP2 se activează din proprietătile conexiunii de rețea.

Tab-ul Exceptions se folosește pentru a permite sau interzice rularea unui anumit program sau pentru a întreține o listă cu programele al căror trafic face excepție de la regula generală. Dacă este activată opțiunea Don’t allow exceptions, nu există astfel de excepții. La prima activare este întâlnită o listă cu aplicații și servicii predefinite care nu pot fi șterse:

File and Printing Sharing;

Remote Assistance;

Remote Desktop;

UpnP framework.

Excepțiile sunt de fapt programe cărora să li se permitetă accesul sau porturi pe care se permite traficul. Ele se pot adăuga cu ajutorul celor două butoane: Add Program sau Add Port.

Scopul se referă la rețeaua din care sau de la care se permite trafic: orice calculator, calculatoarele de pe segmentul de rețea din care calculatorul face parte sau anumite calculatoare.

Toate programele sau serviciile activate în lista Exceptions vor fi activate pentru toate conexiunile care se găsesc în tab-ul Advantaced. Aici se regăsesc următoarele opțiuni:

Network Connection Settings – interfețele pe care se activează firewall-ul;

Security Loggin – opțiunile de jurnalizare;

ICMP – tipul traficului ICMP permis;

Default Settings – restaurează firewall-ul la starea inițială.

Politici de firewall

O politică de firewall este un set de reguli de publicare sau de acces prin care se limitează accesul din exterior către rețea și invers.

ISA Server reprezintă soluția completă pe care o propune Microsoft. ISA Server 2004, special creat pentru platformele Windows Server 2000 și Server 2003, înglobează tehnologia firewall (protejarea resurselor rețelei împotriva virușilor și a accesului neautorizat) și web caching (folosirea eficientă a lățimii de bandă și accesul rapid la resursele din extranet), asigurând rețelei o conectivitate rapidă și securizată la resursele Internet, împreună cu unele platforme integrate de administrare având ca facilități:

Multinetworking – permite stabilirea de relații între rețelele sau mai bine zis, gruparea

rețelelelor în scopul creării de reguli de acces clare. Se poate proteja rețeaua internă limitând comunicația între clienți și în interiorul rețelei. Funcționalitatea multinetworking suportă șcenarii de tipul rețelelor de perimetru pentru protejarea serverelor publice. În plus, se pot defini relații de rutare între rețele în funcție de necesitatea accesului și comunicării între acestea. Când se dorește o comunicație foarte securizată se poate utiliza relația de tip NAT (Network Address Translation), în care adresa IP a clientului este înlocuită cu adresa IP a serverului ISA, resursele rețelei nefiind accessate în mod direct, ci numai după ce au fost filtrate și inspectate de către ISA Server;

Această facilitate este bine reprezentată în arhitecturile Front Firewall și Back Firewall (numite și Back-to-Back). Ele conțin două servere ISA, unul extern (căruia i se aplică Front Firewall) și unul intern (Back Firewall), localizate în ambele părți ale subnetului ecranat. Firewall-ul extern este conectat la Internet, iar cel intern la rețeaua internă. În această configurație nu mai există doar un singur punct de acces. Avantajul este că, pentru a avea acces la rețeaua internă pachetele sunt filtrate de ambele firewall-uri, dar mai important este că oferă posibilitatea definirii unor reguli foarte granulare pentru accesul intern și extern la rețea (figura 5.3.).

Politica de firewall – ISA Server 2004 suportă tratarea protocoalelor complexe, cum

ar fi cele cerute de videoconferințe, precum și controlul porturilor sursă și destinație pentru toate tipurile de protocoale. Sunt suportate diferite tipuri de autentificare Windows, RADIUS, RSA sau SecurID ori alte spații de nume.

Figura 5.3. – Schema de principiu a arhitecturii Back-to-Back

Modul în care e tratată o cerere a unui client din interiorul rețelei este următorul: ISA verifică dacă este definită o legătură între rețeau sursă și rețeaua destinație prin intermediul unei reguli de rețea; dacă răspunsul este afirmativ atunci ISA prelucrează regulile din politica de firewall, verificând îndeplinirea simultană a elementelor:

protocol;

sursă;

dacă este programată;

destinația – adrese IP, URL-uri;

utilizatori;

conținut.

Unele reguli pot fi aplicate doar clienților specificați prin adresa IP sauprin numele utilizatorului.

După instalarea ISA Server și după aplicarea template-ului 3-Leg Perimeter, este preconfigurată o regulă de firewall numită Default rule, cu prioritate Last, care va fi întotdeauna ultima și blochează traficul pe toate protocoalele dinspre toate rețelele spre toate rețelele pentru toți utilizatorii. Această regulă nu poate fi modificată sau ștearsă. Atunci când nu mai este configurată nici o altă regulă de firewall în afară de cea implicită, este blocat tot traficul dintre toate entitățile de rețea. Dacă dorim să permitem accesul neristricționat stațiilor din rețeaua X spre Internet trebuie configurate două reguli:

una care permite accesul dinspre X spre Internet (rețeaua External);

una de firewall, care permite traficul dinspre X spre Internet, pe toate protocoalele, pentru utilizatori.

În ceea ce privește accesarea serverelor din rețeaua de perimetru în mod securizat, de către clienții din exteriorul rețelei, ISA Server permite crearea unei politici de publicare formată din reguli de publicare a serverelor web, a serverelor de e-mail, a serverelor securizate de web și a serverelor de alt conținut decât mail și web. Vizualizarea și crearea regulilor din politica firewall-ului este pasul cel mai important din configurarea ISA Server, deoarece aici se definește modul în care este permis accesul către site-urile web, serverele de e-mail și alte servere din interiorul sau exteriorul rețelei. Pot fi definite reguli care permit sau blochează accesul din intranet sau extranet, reguli de publicare a serverelor web, a serverelor de e-mail, reguli de publicare a serverelor.

Reguli de acces

Regulile de acces specifică serveruli ISA cum să trateze cererile venite de la rețelele sursă de a accesa resursele din rețelele destinație. În cazul următor rețeaua X va avea acces nelimitat la resursele Internet; pentru aceasta trebuie să configurăm o regulă de acces FullManagement:

se deschide consola ISA Server Management, iar din arborele de structură, în secțiunea Configuration, click pe Firewall Policy;

în panoul de activități, click pe tab-ul Tasks, iar din secțiunea Firewall Policy Task click-stânga pe Create a New Acces Rule;

va apărea fereastra Wizard-ului care ne va ajuta la configurarea regulii de acces;

în următoarea fereastră, Rule Action trebuie specificat dacă accesul este permis sau blocat atunci când condițiile regulii sunt îndeplinite. Se va selecta Allow pentru a permite accesul spre Internet;

următoarea fereastră solicită specificarea protocoalelor cărora li se aplică regula. Dacă se dorește acces nelimitat la Internet, se va lăsa opțiunea All outbond protocols. Daca se dorește numai acces web, se selecteazaopțiunea Selected protocols, click-stânga pe butonul Add și apare fereastra Add Protocols de unde se pot selecta protocoale dintr-o gamă extinsă, se expandează nodul Web și se adaugă cu butonul Add cele trei protocoale: FTP, http și HTTPS. Similar, dacă se dorește excluderea unui protocol sau a mai multora, click pe opțiunea All outbond protocols except selected și apoi se adaugă în listă protocoalele excluse. Pentru toate cele trei opțiuni există posibilitatea de a specifica un interval de porturi-sursă cărora li se aplică regula, implicit fiind acceptate toate porturile de comunicație;

fereastra Acces Rule Sources solicită specificarea rețelelor sursă cărora li se va aplica regula adăugată în listă (rețeaua X în exemplul de față);

fereastra Acces Rule Destinations solicită specificarea rețelelor de destinație (Internetul), care vor fi adăugate în listă;

fereastra User Sets solicită specificarea utilizatorilor sau grupurilor de utilizatori din domeniu sau locali; în cazul se va adăuga grupul Studenți, care în prealabil a fost configurat în Active Directory. Implicita este setarea All Users;

se finalizează wizard-ul după revizuirea setărilor regulii de acces nou-create;

se salvează modificările.

O dată creată orice regulă pot fi efectuate următorele acțiuni:

editare – din panoul de activități Edit Selected Rule;

dezactivare – din panoul de activități Disable Selected Rules;

ștergere – din panoul de activități Delete Selected Rules.

Mai apar două noi reguli, și anume Scheudle și Content groups. La opțiunea Scheudle poate fi specificată perioada din zi și/sau săptămână în care regula este activă sau inactivă. Pot fi utilizate cele trei posibilități de programare oferite de ISA – Always (care este și cea implicită, regula est întotdeauna activă), Weekends (regula este activă numai sâmbătă și duminică) și Work Hours (regula este activă numai Luni – Vineri, de la ora 9 la 17) – sau pot fi definite oricare intervale din săptămână și din zi – din fereastra ce se deschide după apăsarea pe butonul New.

O dată selectată opțiunea Content Groups, se poate limita aplicarea regulii la tipuri de conținut specificate. Astfel, prin intermediul unei reguli, poate fi limitat accesul la unele destinații dar și la unele conținuturi. Aceste limitări se aplică doar traficului HTTP și FTP.

Pot fi utilizate grupurile predefinite ale ISA Server sau pot fi create grupuri proprii de conținut.

Presupunând că se impune blocarea descărcării, în timpul week-end-ului, de fișiere audio și video de către studenți din rețeaua X. Pentru aceasta se creează o regulă numită WeekendDeny.

ISA Server este preconfigurat cu un set de politici de firewall care controlează modul în care ISA activează infrastructura necesară pentru a administra secutitatea rețelei și conectivitatea ei. Câteva din aceste reguli sunt activate după instalarea ISA Server și sunt considerate a fi cele mai necesare pentru a administra mediul ISA. În funcție de necesitățile administratorului, aceste reguli pot fi activate sau dezactivate, dar numai după o studiere atentă a efectelor ce decurg de aici;

Suport pentru clienți VPN;

Monitorizare complexă.

Securitatea fizică

În acest capitol am tratat mai mult securitatea din punct de vedere software, însă nu trebuie uitată nici securitatea din punct de vedere fizic a tuturor componentelor rețelei. Este bine ca serverul sau routerul să se afle într-o încăpere sigură protejată împotriva focului, frigului sau a altor factori fizici sau chimici nocivi. În această cameră ar fi bine să aibă accesul numai administratorul sau persoana care se ocupă de protecția rețelei. Este indicat ca datele importante de pe server să fie stocate pe CD-R sau CD-RW cât mai des (de preferință săptămânal). Dacă este posibil, să existe două servere care să îndeplinească funcții asemănătoare, iar în cazul în care unul nu mai poate îndeplini funcțiile pentru care a fost creat cerile sale să fie preluate de celălalt. Obligatoriu, trebuie să fie prevăzut cu o unitate UPS (Unpluget Power Suplly) care să asigure minimul de energie până la remedierea unei eventuale defecțiuni a sistemului de alimentare. Cam acestea sunt principalele reguli de care trebuie să se țină cont la realizarea unei rețele.

Capitolul 6

Vulnerabilități și tipuri de atacuri ale rețelelor

6.1. Vulnerabilități

Vulnerabilitatea este o slăbiciune a unui sistem hardware sau software, care permite utilizatorilor neautorizați să obțină acces asupra sa. Orice platformă are vulnerabilități, astfel că putem concluziona, fără a greși, că nu există vreun sistem 100% sigur. De multe ori, unele particularități ale sistemelor informatice care devin cunoscute utilizatorilor se pot transforma în vulnerabilităti. Există un număr mare de sisteme care prezintă vulnerabilități din pricina slabei administrări a acestora. Există mai multe tipuri de vulnerabilități:

Care permit refuzul serviciilor (denial of service);

Care permit utilizatorilor locali cu privilegii limitate să-și mărească aceste privilegii fără autorizație;

Care permit utilizatorilor exterini (adică de pe mașini aflate la distanță) să acceseze rețeaua sau sistemul local în mod neautorizat.

Cauzele existenței vulnerabilităților sun multiple; dintre acestea putem enumera:

Bug-urile existente în program, introduse de cele mai multe ori neintenționat;

Ignorarea sau nedocumentarea cu bună știință a bug-urilor cunoscute (securitatea prin obscuritate);

Configurarea necorespunzătoare a serverelor și a rețelelor;

Lipsa suportului din partea producătorilor (în general rezolvarea greoaie a bug-urilor);

Comoditatea sau necunoașterea problememlor de securitate din partea administratorilor de sistem sau a conducerii instituțiilor și a companiilor.

Există o bază de date a tuturor vulnerabilităților apărute de-a lungul timpului, care poate fi descărcată de la adresa htttp://cve.mitre.org (Common Vulnerabilities and Exposures).

6.2. Tipuri de atacuri

Există numeroase tipuri de atacuri care pot fi efectuate asupra sistemului. Acestea pot proveni de la distanță sau chiar de pe sistem în sine. În cele ce urmează vom prezenta modalitățile principale de atac asupra calculatoarelor legate la Internet și a utilizatorilor.

A. Bomb e-mail (E-mail bombing)

Un asemenea atac constă în trimiterea repetată a unui mesaj (de ordinul a sute de KBytes), către o anumită adresă de pe un anumit server. Bomba e-mail duce la enerverea destinatarului și la umplerea spațiului disponibil pe disc, precum și la încetinirea traficului prin rețea. Atacul este îndreptat în unele cazuri către mai multe adrese de pe același server, astfel impactul său crescând. De multe ori, este combinat cu atacuri de falsificare a adresei (E-mail spoofing), făcând dificilă sau chiar imposibilă aflarea identității expeditorului. Poate fi stopat prin configurarea serverului de mail pentru a refuza mesajele primite de la mașina sau de la utilizatorul respectiv. Această soluție nu rezolvă problema traficului suplimentar prin rețea.

B. Spam (E-mail spamming)

Acesta nu este un atac, ci o modalitate de a trimite mesaje nesolicitate în general conținând reclame. În general adresa expeditorului este falsă, astfel că acest tip de atac poate fi prevenit prin configurarea serverului de mail în vederea refuzării mesajelor provenite de pe domenii sau calculatoare inexistente. Efectul spam-ului poate fi mai accentuat dacă mesajul este trimis pe liste de discuții, putând astfel ajunge la sute sau chiar mii de adrese e-mail. Poate fi „contiunat”dacă unul dintre membrii listei răspunde la e-mail, făcând astfel ca toți ceilalți membrii să primească și ei mesajul de răspuns, sau în cazul programelor de răspuns automat incorect configurate. Dacă adresa expeditorului este corectă, poate fi încercată contactarea administratorului mașinii de pe care a fost trimis mesajul sau erfuzarea mesajelor provenite de pe respectivul server. De cele mai multe ori acest atac este combinat cu falsificarea adresei expeditorului.

C. Falsificarea adresei expeditorului (E-mail spoofing)

Efectul acestui atac este recepționarea de către un utilizator a unui e-mail având adresa expeditorului diferită de cea originală, de multe ori fiind inexistentă. Este folosit fie pentru a ascunde identitatea persoanei care a expediat e-mail-ul, fie pentru a „păcăli” utilizatorul și a-l determina să răspundă la atac sau să divulge informații importante (parole). Exemple de falsificare ce ar putea afecta securitatea unui server:

Mesaje care pretind că provin de la administratorul sistemului, solicitând utilizatorului să își divulge parola sau să și-o schimbe, furizându-i noua parolă. Aceste mesaje pot fi însoțite de amenințarea că contul va fi suspendat în caz contrar.

Mesaje care pretind că provin de la o persoană autorizată și care solicită o copie a fișierului de parole sau alte informații importante. Modificarea adresie expeditorului este posibilă deoarece protocolul pentru transportul mesajelor, SMTP (vezi cap) nu prevede nici un sistem de autentificare. Dacă serverul de e-mail permite conectarea oricărui utilizator la portul SMTP pot fi trimise mesaje având orice antet și deci orice adresă de e-mail corect formatată.

D. Abonarea la liste de discuții

Reprezintă înscrierea unei adrese e-mail pe una sau mai multe liste de discuții, fără ca persoana căreia îi aparține adresa să fi cerut explicit acest lucru. Un astfel de „atac” are ca efect enervarea persoanei în cauză și creșterea traficului prin rețea. Nu există soluții rapide pentru stoparea acestora, ci doar trimiterea de cereri de dezabonare. Atacurile prin intermediul serviciului de e-mail sunt foarte răspândite îndeosebi ca urmare a faptului că nu necesită cunoștințe avansate și că există o multitudine de programe, răspândite pe Internetm, care facilitează asemenea atacuri sub toate sitemele de operare existente pe piață.

E. Atacul pentru refuzul serviciilo (Denial of Service)

Aceste atacuri sunt reprezentate de așa-numitele DoS, care degradează calitatea funcționării anumitor servicii oferite de un server sau duce chiar la dezafectarea acestora. Cel mai cunoscut atac de refuz al serviciilor este atacul de tip „packet flood” (bombardament de pachete), care afetează în general stiva de protocoale TCP/IP și care desemnează trimiterea către un calculator țintă a unui număr foarte mare de pachete de date, având ca rezultat blocarea temporară a celorlalte conexiuni deschise pe calculatorul țintă și încărcarea traficului prin rețea. În cele mai multe cazuri avem de-a face cu atacuri provenite de la o singură sursă, dar există și mute situații când aceste atacuri provin de la mai mult surse pe care le vom numi atacuri distrbuite (DDoS, Disributed Denial of Service). Cazurile în care atacul este înderptat către mai multe țunte sunt foarte rare. Se pot distinge trei tipuri de bombardamente cu pachete:

cu pachete TCP – un flux de pachete TCP sunt trimise către ținte. Cel mai des sunt utilizate atributele SYN, ACK și RST;

cu pachetele ICMP (cunoscute și sub numele de ping flood) – se utilizează trenuri de pachete ICMP;

cu pachete UDP. Multe dintre atacuri, în special cele realizate cu ajutorul programelor specializate, modifică atributele pachetelor trimise, după cum urmează

adresa IP sursă. În multe cazuri este utilizată o adresă IP falsă, metodă numită falsificarea adresei IP (IP spoofing), pentru a ascunde identitatea reală a pachetelor;

portul sursă sau destinație. De multe ori, în cazul atacurilor cu pachete TCP sau UDP, este modificat portul sursă sau cel destinație cu scopul de a face filtrarea pachetelor mai dificilă.

Alte valori ale atributelor din antetul pachetelor IP, pentru a deruta filtrele de pachete.

Exemple de bombardamente cu pachete în vederea încărcării traficului și calculatorului țintă:

Atac SYN flood. Reprezintă trimiterea unui volum mare de cereri de conexiune către o mașină, conducând pe de o parte la supraîncărcarea traficului și pe de altă parte la imposibilitatea de a răspunde la alte cereri din pricina umplerii cozii de pachete. Este cauzat de creearea unui număr mare de conexiuni deschise doar pe jumătate (pachete TCP având doar bitul SYN setat). Deoarece fiecare conexiune deschisă trebuie prelucrată până în starea sa finală (în acest caz, depășirea timpului maxim admis, timeout), sistemul va fi temporar blocat.

Atac smurf. Este un atac cu pachete ICMP împotriva adresei broadcast a rețelei, având adresa sursă falsificată,efectul fiind că toate calculatorele din cadrul rețelei vor răspunde la cererea ICMP, generând în acest mod trafic suplimentar, putând duce cu ușurință la cungestia unei legături lente.

Atac fraggle. Este o variantă a atacului smurf, care trimite pachete UDP către portul 7, la adrese broadcast a rețelei. O adresă broadcast are setați toți biții pentru mașină fie pe 1, fie pe 0. Asemenea adrese sunt doar broadcast dacă routerul de pe respectiva subrețea le interpretează ca atare. Dacă routerul în cauză a configurat această adresă în tabelele sale de rutare, va redirecționa pachetele IP ca broadcast pe respectivul segment de rețea astfel încât totate calculatoarele din acel segmnt vor recepționa pachetul. Aceste ultime două atacuri sunt utilizate pentru că un singur pachet va transmis întregului segment de rețea, crescând astfel cu ușurință traficul.

Exemple de bombardamente cu pachete în vederea exploatării unor vulnerabilități a serviciilor de rețea, cum ar fi serverul Web sau implementarea setului de protocoale TCP/IP:

Atacuri teardrop, care exploatează implementările de TCP/IP ce nu gestionează corect fragmentele IP suprapuse, în sensul că nu verifică corectitudinea lungimii fragmentelor;

Atacuri land craft, care trimit pachete SYN ce au adresa și portul sursă identice cu adresa, respectiv portul destinației. Sistemul va răspunde propriei adrese cu pachete având biții SYN și ACK setați, deschizând astfel o conexiune vidă. Aceste conexiuni vor fi închise doar după scurgerea unei anumite perioade de timp, perioadă în care alte conexiuni vor fi refuzate ca urmare a umplerii cozii de socketuri deschise;

Atacuri ping of death, care trimit pachete ICMP de dimensiuni mari. Lungimea maximă a unui pachet ICMP este de 64 kb, depășirea acestei valori putând cauza fie disfuncții ale stivei TCP/IP, fie blocaje ale sistemului de operare (cauza fiind depășirea zonelor tampon alocate pentru comunicația TCP/IP), ca urmare a proastei impementări a acesteia.

Atacuri naptha, care exploatează proasta funcționare a stivei TCP/IP și a aplicațiilor de rețea din punctul de vedere al gestiunii stărilor TCP/IP. Acest tip de atac constă în deschiderea unui număr mare de conexiuni TCP și abandonarea acestora în diferite stări, cum ar fi așteptarea datelor care vor fi transmie sau închderea conexiunii. O dată atins numărul maxim de conexiuni acceptate de stiva TCP/IP se ajunge la un refuz al serviciilor de rețea pe calculatorul-țintă.

Există câteva tipuri de atacuri care pot fi greu de detectat folosind doar informațiile din antetul pachetelor:

Atacuri prin schimbarea adresei IP sursă. În acest tip de atac, intrusul transmite pachete din afara rețelei, care au setată ca adresă sursă o adresă din cadrul rețelei. Atacatorul speră ca folosirea unei adrese falsă să-i pemită penetrarea sistemului prin faptul că pachetele provenind de la calculatoarele din interiorul rețelei sut acceptate. Acest tip de atac poate fi prevenit prin eliminarea pachetelor cu adrese interne ce provin de pe Internet.

Atacuri rutare de la sursă. Calculatorul sursă specifică ruta pe car epachetul o va urma, cu scopul de a ocoli măsurile de securitate și de a face ca pachetele să urmeze căi neașteptate spre destinție. Soluția constă în eliminarea tuturor pachetelor având opțiunea de rutare de la sursă setată.

Atacuri prin fragmente mici. Atacatorul utilizează posibilitate de fragmentare a pachetelor IP, pentru a crea fragmente foarte mici și a forța ca antetul cu informații TCP să se afle într-un alt pachet decât cel cu adresele IP. Acest atac urmărește să evite regulile de filtrare ale firewall-urilor sperând ca acesta din urmă va examina numai primul fragment și va permit celorlalte să treacă. Se previne prin eliminarea tuturor pachetelor al căror protocol este TCP și care au offset-ul fragmentului IP egal cu 1.

F. Depășirea capacității zonelor tampon (Buferr overflow)

Ca urmare a unei erori de programare, este posibil ca anumite programe să aloce un spațiu insuficient de memorie pentru stocarea unor informații. Atunci când apare o depășire a acestui spațiu de memorie, informațiile ce depășesc zona sunt stocate la o altă adresă. Prin manevrarea adreselor la care ajung, aceste date suplimentare pot produce executarea unor comenzi sub utilizatorul root, dacă programul se execută sub acest utilizator. Acest tip de atac nu poate veni din afara mașinii ci din interiorul ei, dar aceasta nu reprezintă o regulă generală. Prin instalarea unui cal troian exploatarea bug-urilor din programe poat efi realizată și de la distanță. Nu poate fi prevenit decât prin utilizarea de tehnici de programare corecte care să verifice eventualele depășiri ale dimensiunilor zonelor de memorie alocată. În genere, pe măsură ce asemenea erori sunt descoperite sunt generate actualizări ale programelor în cauză. Este recomandată instalarea de versiuni actualizate ale pachetelor de programe, atunci când acestea devin disponibile.

G. Interceptoarele rețelei (IP sniffing)

Atacul constă în monitorizarea informațiilor care circulă printr-o interfață de rețea pentru a detecta eventualele parole transmise în mod necriptat prin rețea. Programele ce efectuează interceptarea traficului din rețea se numesc sniffere. Modul de funcționare a unui program de interceptare se bazează în principal pe comutarea interfeței de rețea în mod neselectiv (promiscuos), iar apoi capturareea traficului de rețea într-un fișier. Acest mod neselectiv este modalitatea prin care un calculator poate recepționa tot traficul care trece prin rețea, nu doar pe cel adresat lui. Conectarea prin serviciul telnet, este nesigură deoarece parolele nu sunt criptate, putând fi determinate cu ușurință și de pe altă mașină legată în aceeași rețea. „Ascultarea” traficului din rețea nu este întotdeauna foarte eficientă. În cazul rețelelor de viteză mare (100 MB/s), precum și al celor aglomerate se poate pierde o cantitate mare de date. De asemenea, viteza de scriere pe disc este de cele mai multe ori mai mică decât viteza rețelei, astfel încât un număr apreciabil de pachete vor fi și în acest caz pierdute. Folosirea unui interceptor nu este foarte ușoară, deoarece acesta trebuie supravegheat. În rețelele cu trafic intens, fișierul generat de un interceptor poate umple rapid un hard-disk. Din acest motiv cei ce utilizează astfel de programe capturează de multe ori doar primele sute de octeți ai fiecărui pachet, care conține în general, în timpul autentificării, numele și parola utilizatorului. Un asemenea atac poate proveni doar din interiorul rețelei locale. Pentru a-l preveni este bine să utilizăm, cel puțin pentru transmiterea parolelor prin rețea, protocoale sigure, criptate, cum ar fi SSH. Eficiența unui astfel de atac poate fi limitată și prin utilizarea switch-urilor sau prin segmentarea rețelei în mai multe sub-rețele.

H. Cai troieni (Trojan Horses)

Acestea sunt programe rău intenționate, care se „deghizează” sub forma unor fișiere executabile obișnuite. Un cal troian este un program legitim care:

Apelează un program neautorizat, acesta efectuând operații nedorite;

A fost modificat și conține un fragment de cod care realizează operații nedorite.

Numele lor provine din epopeea Iliada lui Homer, de la calul de lemn care a reușit să intre pe poarta cetății Troia sub forma unui cadou în timpul bătăliei. Troienii pot efectua orice fel de operațiune necunoscută și nedorită, cum ar fi:

Determină diferite informații despre sistem sau rețea și le transmite unei terțe persoane sau le stochează într-un fișier ascuns; cu cât cresc privilegiile utilizatorului care a lansat în execuție programul-cal troian, cu atât informațiile dezvăluite pot fi de importanță mai mare;

Distruge informații; dacă privilegiile utilizatorului sub care se exercită programul sunt mari, distrugerile pot fi pe măsură;

Lansează atacuri asupra altor calculatoare cum ar fi cele din rețeaua internă cu scopul de a ascunde adevărata identitate a atacatorului.

În prezent, cea mai cunoscută formă a acestui gen de programe o constituie aplicațiile denumite black widow (văduva neagră) care sunt folosite pe www și care pot bloca și deteriora browserele Web. De asemenea, profitând de bug-urile prezente în astfel de browsere aceste programe pot să copieze sau să deterioreze informații de pe calculatorul client. Un alt tip de cal troian „la modă” este scriptul HGI prost proiectat, de multe ori intenționat. Scripturile HGI nu trebuie să poata accesa informații confidențiale de pe mașina de pe care rulează, administratorul trebuie să verifice aceste scripturi. Se recomandă realizarea de copii de siguranța a sistemelor de fișiere, pentru a putea restaura fișierele executabile originale în cazul alterării acestora de către caii troieni. O altă posibilitate este utilizarea unui program de monitorizare a sistemelor de fișiere (tripwire). Există și un site dedicat cailor troieni: http://www.tlsecurity.com pe trojanh.html.

I. Uși ascunse (backdoors si traps)

Ușile ascunse sunt cazuri particulare de cai troieni. Un asemenea program creează o „poartă” (un utilizator nou) care să permită accesul ulterior la calculatorul în cauză sau să acorde unui anumit utilizator privilegii speciale.

J. Viruși

Virușii sunt programe care pot efectua operațiuni nedorite, de obicei distructive, și care au capacitatea de a se „multiplica”, adică de a infecta și alte programe. Virușii rezidă în cadrul fișierelor executabile. Conform RFC 1135 (The Helminthiasis of the Internet), „un virus este o secvență de cod care se auto-inserează într-o gazdă inclusiv în sistemul de operare, pentru a se propaga. Nu poaterula independent. Necesită execuția programului-gazdă pentru a se putea activa”. Sistemele UNIX nu sunt vulnerabile la viruși datorită gestiunii stricte a memoriei și a proceselor care se execută. Este recomandat în orice caz să nu se execute ca root nici un fișier executabil despre care nu se cunoaște ce face. Au existat viruși sub Linux, un exemplu în acest sen fiin Bliss, care avea efect doar dacă se executa ca root. Posibilitatea sa de replicare era extrem de redusă. Cu toate că sub Linux nu există viruși, există programe antivirus. Acestea sunt utile pentru verificarea fișierelor stocate pe servere de fișiere Linux, care urmează a fi accesate de clienții Windows sau pentru a verifica și filtra e-mailurile transmise. Exemple de asemenea programe sunt Kaspersky Anti-Virus (http://www.kaspersky.com) sau Bit Defender (http://www.bitdefender.com). Există o largă răspândire a virușilor pe sistemele Windows, în special a celor numiți macro virus. Acestea au forma unor scripturi de comenzi și se execută în momentul în care utilizatorii efectuează anumite acțiuni. Un exemplu de asemenea virus a fost Melissa, care se propagă prin intermediul e-mail-urilor și conținea un script Visual Basic care se executa prin intermediul programului Microsoft Outlock. Acest virus trimetea o copie a mesajului la primele 50 de adrese de e-mail memorate, mesajele fiind retransmise la rândul lor automat atunci când destinația era o listă de discuție. Efectul acestui virus a fost congestionarea rapidă a traficului prin Internet și blocarea a numeroase servere. Există tendința de a realiza viruși independenți de platformă, cum ar fi cei scriși în Java și care sunt executați prin intermediul navigatoarelor Web (de exemplu StrangeBrew sau DiskHog).

K. Viermi (Worms)

Viermii sunt programe de sine stătătoare, capabile să se multiplice, să se transfere pe alte calculatoare și eventual să efectueze operațiuni distructive. Sunt așadar asemănători cu virușii însă nu se reproduc local, ci pe alte calculatoare. Conform RFC 1135, „un vierme este un program care poate rula independent, care consumă resursele gazdei pentru a se executa și care poate propaga o versiune funcțională a sa către alte calculatoare”. Ei funcționează după principiul „caută și distruge” (search end destroy). Dacă virușii se propagă bazându-se în special pe neatenția sau ignoranța utilizatorilor care deschid și lansează în execuție programe găsite pe Internet sau fișiere dubioase atașate mesajelor, viermii se răspândesc în mod automat. Ei caută calcculatoare care prezintă vulnerabilități, se instalează pe respectivele sisteme, le penetrează, realizează anumite acțiuni distructive, iar apoi încearcă să se răspândească mai departe. Factorul de multiplicare a viermilor este de ordin exponențial. Faptul că un calculator este mai cunoscut (un site Web) sau mai puțin cunoscut (un calculator de casă) tinde să devină tot mai puțin important, pentru că viermii nu fac nici o diferență. Viermii pot avea acțiuni distructive, cum ar fi ștergerea de informații, crearea unor uși ascunse pentru a pemite accesul ulterior al autorilor lor sau lansarea unor atacuri de refuz al serviciilor. De multe ori, viermii informează în mod automat autorul lor despre fiecare sistem penetrat, astfel încât acesta poate accesa sistemele afectate sau efectua alte acțiuni distructive. Pe lângă acțiunile distructive îndreptate împotriva calculatoarelor-țintă, un mare impact al viermilor este faptul că propagarea efectivă a acestora creează un refuz al serviciilor ca urmare al traficului uriaș generat pe Internet. Primul vierme cu impact asupra unui număr mare de caculatoare – numit ulterior Viermele Morris – a fost lansat pe data de 2 noiembrie 1988, de către un student la [anonimizat]. Deși nu fusese programat să efectueze operațiuni distructive, viermele s-a răspândit foarte repede, din pricina unei erori în cadrul programului, afectând circa 2.000 de calculatoare. Cercetarile ulterioare au scos la iveală faptul că viermele fusese creat și lansat de un student, cu numele Robert Morris. Alt vierme cu impact major a fost Code Red (lansat pe 19 iulie 2001, ce a afectat 250.000 de sisteme în doar 9 ore), care exploata un bug din serviciul Web al Microsoft IIS. De remarcat este faptul că majoritatea viermilor apăruți în ultima perioadă vizează sistemele Windows.

L. Ghicirea parolelor (Password Guessing)

Acest tip de atac se referă la folosirea unui program pentru a determina parolele prost alese, denumit în genere spărgător de parole (cracker). Un astfel de program poate determina printr-o analiză comparativă, o corespondență între variante de presupuse parole criptate. Multe dintre aceste programe folosesc chiar o metodă prea puțin inteligentă și anume aceea de a încerca cuvânt după cuvânt, până când va fi găsit unul care să se potrivească. Cuvintele sunt generate fie prin permutări ale caracterelor componente, fie utilizând cuvinte dintr-un dicționar. Desigur, aceste tehnici sunt limitate fiindcă pot dura foarte mult timp. Ele se bazează pe comoditatea utilizatorilor de a-și alege parole cât mai scurte și cât mai simplu de memorat. Programele pentru spargerea parolelor utilizează aceeași algritmi folosoți pentru criptare, pornind de la niște cuvinte stabilite și căutând o corespondență sau o potrivire între cuvântul criptat și parola criptată originală. Asemenea programe aplică adesea fiecărui cuvânt o listă de reguli cum ar fi:

Alternarea literelor mari cu litere mici;

Scrierea cuvântului, apoi a aceluiași cuvânt în sens invers;

Adăugarea unei cifre la începutul sau sfârșitul cuvântului.

Această modalitate de atac este foarte veche în special pe sistemele UNIX deoarece în versiunile vechi, fișierul de parole, /etc/passwd, putea fi accesat de toți utilizatorii astfel încât oricare dintre aceștia putea să folosească un program de ghicire pentru a afla parola utilizatorului root, spre exemplu. Majoritatea versiunilor recente de UNIX suportă mecanismul shadow de „ascundere a parolelor”, care presupune că parolele sunt stocate într-un alt fișier, inaccesibil utilizatorilor obișnuiți, și anume /etc/shadow.

M. Sustragerea parolei (Password phishing)

În momentul în care un abonat America-On-line (AOL) a încercat să se identifice pentru a intra în propriul său cont, fereastra care conținea rubricile și comenzile de identificare a afișat un mesaj prin care era anunțată anularea contului său. Abonatul a sunat la AOL și a descoperit că-i fusese anulat contul. De ce? Peste 500 de persoane primiseră un cal troian purtând adresa lui de e-mail. Abonatul respectiv a fost o victimă a infracțiunii de „password phishing”. Un cracker fura parole, nume de conturi și/sau informații referitoare la cărți de credit. În cazul furnizorului de servicii de Internet AOL, un grup de crackeri a furat parola abonatului și i-a utilizat contul pentru a trimite cât mai multor abonați un cal troian, prin intermediul căruia să poată fura parolele altor abonați AOL. Adesea, pentru a putea înfăptui această infracțiune, un cracker se va prezenta sub un nume fals pentru a putea obține informațiile dorite. De îndată ce informațiile referitoare la un cont de utilizator parvin cracker-ului, acesta poate pătrunde în folderele utilizatorului pe care le poate utiliza ca spațiu de stocare pentru fișiere furate de el.

6.3. Modalități de atac ale rețelelor

Sistemele de operare, protocoalele, serviciile de rețea etc, chiar dacă sunt create de o bună bucată de vreme, au încă multe lipsuri în ceea ce privește asigurarea securității datelor. Există multe modalități de ocolire a regulilor de lucru, însă vor fi prezentate doar două procedee de ascundere a idntității, de fapt a adresei IP a pachetelor expeditorului: serverele Proxy și Wingates

Serverul Proxi

Serverul proxy este un server de Internet care se comportă ca o poartă de acces între computerul conectat la Internet și o destinație din Internet, fie un Web site, IRC etc. toate conectările pentru anumite tipuri de servicii în lod să se facă direct pe serverul dorit, se fac către mașina ce rulează proxy-ul respectiv. Proxi-ul preia cererea și i-o transmite serverului în cauză. Răspunsul de la server este apoi returnat către client, tot prin intermediul proxy-ului. Proxy-ul nu trebuie să fie confundat cu un router, acesta din urmă redirectând prin alte mijloace traficul de pe un segment de rețea pe altul. Aceste proxy-uri primesc cereri de conectare de la un anumit user pentru a vedea o pagină web, spre exemplu. Apoi ele retrimit (forwarding) cererea spre serverul Web care conține pagina respectivă. Serverul de Web trimite înapoi pagina de Web către serverul proxy,care la rândul lui va trimite pagina solicitată. Serverele Proxy, în majoritate, folosesc și un cache care reține opaginile deja cerute și la următoarea cerere în loc să le mai caute direct pe Internet, le trimiti userului direct din memoria cache. Astfel surfingul devine mult mai rapid pentru userii care posedă conexiuni cu lățime mică de bandă (în special dial-up). Dacă fișierle nu mai există în cache sau dacă au depășit o anumită dată atunci ele sunt aduse din nou de la sursă. Un Reresh în browser poate forța serverul Proxi să aducă fișierele de la sursă, în loc să le ia din memoria cache. Serverle proxy sunt de două feluri:

Transparente – retrimit către site-ul solicitat atât cererea paginii web solicitate cât și

adresa IP de origine a cererii. Un proxy transparent se fololește de obicei, dacă rețeaua locală de computere are ieșire la Internet prin intermediul unui singur computer din cadrul acelei rețele. Cu ajutorul unui proxy se poate asigura un acces limitat și contolat la Internet, pentru computerele din rețeaua locală, în cazul anumitor tipuri de servicii. Adesea furnizorii de servicii Internet, pun la dispoziția clienților lor un proxy. Aceasta reprezintă o modalitate de a beneficia de un transfer la viteze mai ridicate, folosind anumite mecanisme ce sunt furnizate de proxy. Totodată clienților unui server proxy li se poate restricționa accesul către anumite site-uri sau domenii ori se poate monitoriza felul în care ei folosesc accesul la Web, ceea ce reprezintă un ajantaj mai degrabă pentru administratorii de servere, pentru furnizorii de acces Internet și pentru managerii de rețele locale care ar dori să controleze traficul de Web al utilizatorilor.

Anonime – retrimit către site-ul solicitat doar cererea paginii Web solicitate, dar nu și

adresa IP de origine a cererii. Astfel de srvere sunt folosite pentru surfingul anonim, dar și pentru mărirea vitezei de browsing. Mulți utilizatori care folosesc Internetul utilizează și serverele proxy pentru a rămâne anonimi pe Internet. În acest mod site-urile care înregistrează IP-ul real al userului pentru diverse scopuri (de multe ori nu tocmai bune) pur și simplu înregistrează adresa IP a serverului Proxy și astfel user-ul rămâne anonim. Totuși, acest mod de surfing pe Internet poate fi folosit fie de către utilizatori cu gânduri bunecare vor să rămână anonimi când vizitează site-uri cae rcolectează informații personale în scopuri publicitare sau siteuri care distribuie programe spyware pe malware, dar pe de altă parte și de către utilizatorii care utilizează site-urile în scopuri malițioase adică crackeri – comunitatea underground de pe Internet. Mulți crackeri pot rămâne anonimi în timp ce scanează diverse site-uri pentru găsirea vulnerabilităților și mai apoi pentru ascunderea adresei IP reale în timp ce compromit site-urile scanate și găsite vulnerabile. Serverele proxy se pot folosi pentru conexiuni utilizând protocoalele http, ftp, gopher, https și altele. De obicei conexiunile la serverele proxy se fac pe porturile 80, 8000, 8080, 8180 ș.a. Totuși serverele anonime nu sunt întotdeauna publice și astfel după un timp vor „pica”. Pentru a crește gradul de anonimitate pe Internet se poate folosi și o metodă de legare a mai multor proxy în lanțuri care astfel sporesc anonimitatea considerabil. Un utilizator se conectează prima dată la Proxy 1 și apoi la Proxy 2 ș.a.m.d. până la serverul dorit. Serverul solicitat acum va loga numai adresa IP a ultimului server Proxy din lanț. Un lanț proxy trebuie să conțină cel puțin un proxy anonim, de preferat ultimul. Serverul solicitat de user va loga tot în lanț adresele IP până va ajunge la utilizator și lanțul nu mai este viabil. Trebuie folosite folosite proxy-uri anonime, care să aibă o viteză bună deoarece la fiecare conexiune pachetele de date vor trece prin mai multe host-uri și astfel timpul de răspuns va fi mult diminuat (primul proxy din lanț trebuie să aibă o viteză mai mare sau cel puțin egală cu cea a ultimului proxy din lanț) și toate să fie on-line în același timp. Totuși dacă se va folosi un lanț lung de proxy-uri viteza se va diminua, dar factorul de anonimitate va crește. Aceste două valori sunt invers proporționale. Dacă un proxy din lanț nu mai este valid, lanțul nu va mai funcționa. Acesta este un defect al metodei de folosire a serverelor proxy în lanț. În acest caz se vor lua pe rând proxy-urile din lanț și se vor testa dacă mai sunt on-line sau nu. Apoi lanțul se poate reface folosind doar proxy-urile valide. Pentru hackeri o astfel de metodă este foarte bună deoarece sunt șanse foarte mici ca ei să fie prinși în cazul în care vor compromite o țintă. Mai ales dacă proxy-urile folosite sunt din țări diferite sau din rețele diferite ale aceleiași țări. De obicei, până cei care caută hackerul suspect ajung să aibă acces la logourile ultimului și poate chiar al penultimului server proxy din lanț urma se poate pierde dacă un server proxy folosit în lanț nu mai este on-line. Totuși, această metodă de conectare la un server nu este 100% anonimă și sigură. Până la urmă, cu mult noroc și timp pierdut se poate ajunge la utilizatorul inițial, dar astfel de cazuri sunt extrem de rare. Un hacker poate totuși „rupe” lanțul într-un mod intenționat folosind un atac asupra unui proxy din lanț, dacă își dă seama că a fost descoperit și este urmărit. Această metodă este una dintre cele mai anonime. Dacă se folosește un astfel de lanț de servere proxy este cel mai bine să fie folosite în medie trei până la cinci proxy-uri în lanț (anonime și cu viteze asemănătoare). Pentru Internet Explorer, declararea unui lanț de servere proxy se configurează în felul următor: Tools Internet Options Connections Lan Settings se bifează opțiunea „Use a proxy server for this connection” în căsuța host se introduce adresele pentru lanțul de proxy: 61.55.134.196:80 218.188.8.182:80 140.247.60.123 Port: 3128.

Figura 6.1. – Setarea serverului proxy

Sintaxa presupune introducerea adreselor IP ale serverelor proxy sub forma IP: port. La ultimul proxy se setează valoarea portului TCP în căsuța Port: din fereastră (figura 6.1.). Din butonul Advanced este posibilă declararea unor adrese IP care să fie accesate direct, fără transmiterea pachetelor de date prin lanțul de proxy. Se recomandă încercarea lanțului accesând o pagină web care afișează real timp IP-ul vizitatorului, de exemplu www.iplocate.com. La o astfel de accesare IP-ul afișat ar trebui să fie ultimul din lanțul de servere proxy folosit. De obicei serverele proxy se instalează pe serverele UNIX/Linx cu legături la Internet de bandă largă (DSL, cablu, fibră optică) și vin de obicei în pachetul-standard al oricărei distribuții UNIX/Linux (pentru Linux daemonul Squid).

Serverul Wingate

Servereul Wingate este tot un tip de server proxy care se poate instala pe host-urile cu OS Windows (NT/2000/XP) și lucrează pe portul 23, portul serviciului telnet. La un astfel de Wingate se pot face una sau mai multe conexiuni simultane provenite de la un host sau mai multe. De obicei, astfel de host-uri cu servere Wingate sunt greu de găsit deoarece de cele mai multe ori sunt folosite ca puncte de plecare a multor atacuri de tip telnet lansate de hackeri către diverse alte host-uri. Totuși, sunt multe site-uri underground care publică liste cu astfel de hosturi. Multe sunt găsite în urma scanării multor rețele de către hackerii folosind diverse utilitare, mai utilizat fiind NetScan.

Serverele Wingates pot fi și ele folosite pentru lanțuri de conexiuni. Mai este necesară o listă cu câteva hosturi wingate prin care se realizează conectarea la hostul telnet final care este de obicei un host cu OS UNIX/Linux. Prima dată se face conectarea la primul host din listă, apoi după mai multe conexiuni (câte host-uri dorim), se realizează conectarea la hostul final care nu va mia detecta adresa IP inițială a conexiunii.

Și la Wingates se mențin regulile de viteză și anonimitate enunțate de serverele proxy.

Capitolul 7

LEGEA șI securitatea rețelelor

7.1.Conceptul de criminalitate informatică

Criminalitatea informatică reprezintă un fenomen al zilelor noastre, reflectat în mod frecvent în mass-media. Un studiu indică că teama de atacuri informatice depășește în intensitate pe cea față de furturi sau fraude obișnuite. Cercetările criminologice asupra infracțiunilor realizate prin sisteme informatice se află încă în stadiul tatonărilor. Chiar și cele realizate până în acest moment tind să schimbe modul clasic în care sunt privite infracțiunile în sistemele actuală de justiție penală. Doar o mică parte din faptele penale legate de utilizarea sistemelor informatice ajung la cunoștința organelor de cercetare penală, astfel încât este foarte greu de realizat o privire de ansamblu asupra amplorii și evoluției fenomenului. Dacă este posibil să se realizeze o descriere adecvată a tipurilor de fapte penale întâlnite, este foarte dificilă prezentarea unei sinteze fundamentate asupra întinderii pierderilor realizate de acestea, precum și a numărului real de infracțiuni comise. Numărul cazurilor de infracțiuni informatice este în continuă creștere. Astfel, în Germania au fost înregistrate în 1996 32.128 de astfel de cazuri, în Olanda, în perioada 1981-1992 au fost întâlnite 1400 de cazuri, iar în Japonia între 1971 și 1995 un număr de 6671 de cazuri. S-a estimat că doar 5% din faptele comise ajung la cunoștința organelor de urmărire penală. Pentru a contracara această lipsă de informație s-a recurs la procedeul sondajelor. Ultimul sondaj efectuat de CCI (Computer Crime Institute) și FBI (Federal Bureau of Investigation) în 2003 indică pierderi de 201.797.340 de dolari în cazul a 537 de întreprinderi și instituții din SUA chestionate. În cursul anului 2003, serviciile specializate din România au cercetat doar 200 de infracțiuni de natură informatică din care 50% au fost licitații electronice frauduloase, 30% bunuri comandate on-line fraudulos, 10% au privit accesul neautorizat la sisteme informatice și 10% referindu-se la scrisori nigeriene, transmiterea de viruși, pornografie infantilă, folosirea de identități false.

Cifra neagră este motivată de mai multe cazuri dintre care amintim:

Tehnologie sofisticată utilizată de făptuitori;

Lipsa instruirii specifice a ofițerilor din cadrul organelor de cercetare penală;

Lipsa unui plan de reacție în caz de atacuri, din partea victimelor acestor fapte penale, fapt ce poate duce la neidentificarea pierderilor provocate;

Reținerile în a raporta organelor de cercetare penală săvârșirea infracțiunilor

În această din urmă situație chiar dacă infracțiunea a fost sesizată, victimile nu înștiințează organele de urmărire penală în vederea descoperirii și sancționării făptuitorului. Printe motivații amintim: preocupările față de imaginea publică, dorința de a nu suporta costurile unei eventule investigații, lipsa posibilității de a recupera pierderile suferite, chiar în cazul depistării făptuitorului.

În același timp investigațiile în domeniul infracționalității informatice sunt complexe și implică utilizarea de echipamente sofisticate, cu costuri ridicate; pregătirea oersonalului de specialitate este un proces de durată și implică costuri mari. Un investigator în domeniul criminalității informatice poate lucra maximum 3-4 cazuri pe lună, în timp ce un investigator tradițional poate soluționa 40-50 de cazuri în aceiași perioadă de timp. Definiția de lucru dată faptelor penale de natură informatică de catre grupul de experți OECD în 1983 (orice comportament ilegal, neetic sau neautorizat ce privește un tratament automat al datelor și/sau o transmitere de date) permite integrarea dezvoltărilor ulterioare ale tehnicii în domeniul informatic. Mai târziu sau exprimat diferite definiții date de UNAFEL, Comitetul European pentru probleme criminale, Manualul ONU, pentru a caracteriza infracțiunile iformatice, definiții ce cuprind în special fraude de tip electronic, falsificare de documente, atingeri aduse dreptului la viața privată, penetrarea sistemelor informatice, spionaj informatic, pirateria programelor etc.

Conștientizarea existenței pericolului social al faptelor penale de natură informatică a atras după sine incriminarea acestora în numeroase state ale lumii. A luat astfel ființă conceptul de „drept penal cu specific informatic”, ca o reflectare a numeroaselor elemente de noutate introduse în materia dreptului penal de noile forme ce penalitate bazate pe tehnologia modernă. Legiferarea în domeniul criminalitătii informatice a urmat începând din anii ’70 mai multe „valuri”. Primul „val” a fost determinat de necesitatea protejării dreptului la viața privată. Legi privind protecția persoanei fizice față de prelucrarea datelor cu caracter personal au fost adoptate în Suedia (1973), SUA (1974), Germania(1977), Austria, Danemarca, Franța și Norvegia (1978), sau mai recent în Belgia, Spania, Elveția (1992), Italia și Grecia (1997). Al doilea „val” este legat de represiunea infracțiunilor cu caracter economic, producând modificări legislative în SUA și Italia (1978), Australia (1979), Marea Britanie (1981) sau Elveția (1994) și Spania (1995). A treia serie de reglementări este legată de intervenția legislativă în vederea protecției proprietății intelectuale în domeniul tehnologiei informatice în țări ca SUA (1980), Ungaria (1983), Germania, Franța, Japonia, Marea Britanie (1985), sau Austria (1993), România(1996), Luxemburg (1997). Al patrulea val de reforme privește reglementarea distrbuirii de informații ilegale sau prejudiciabile, și a fost puternic impulsionat la sfârșitul anilor ’80 de amploarea luată de rețeaua Internet. Al cincilea „val” este legat de modificările intervenite în materia dreptului procesual, cu aspecte la procedură penală ridicate de incidența tehnologiei informației, în timp ce al șaselea „val” privește impunerea unor obligații și limite în materia securițății informatice. În acest sens, la nivel internațional, Consiliul Europei a inițat o serie de reglementări cu privire la criminalitatea informatică. Astfel, dacă în 1995 a fost adoptată Recomandarea nr. R (95) 13 cu privire la problemele de procedură penală legate de tehnologiile informaționale, în 23 noiembrie 2001 a fost semnată la Budapesta Convenția privind criminalitatea informatică. Convenția își propune să prevină actele îndreptate împotriva confidentalității, integrității și disponibilității sitemelor informatice, a rețelor, precum și a utilizării frauduloase a unor asemenea sisteme, rețele și date, prin asigurarea incriminării unor asemenea conduite și prin încurajarea adoptării unor măsuri de natură a pemite combaterea eficace a acestor tipuri de infracțiuni, menite să faciliteze descoperirea, investigarea și urmărirea penală a acestora atât la nivel național, cât și internațional,precum și prin prevederea unor dispoziții materiale necesare asigurării unei cooperări internaționale rapide și sigure. Convenția a fost ratificată de România prin Legea 64/2004.

7.2. Reglementări legale

Spărgătorii de sisteme informatice trebuie priviți – din punct de vedere juridic – ca rău-făcători. Majoritatea țărilor lumii au adoptat legi care să prevadă infracțiunile în domeniul informatic. O serie de infracțiuni mai importante sunt următoarele:

Încălcarea proprietății – se referă la accesarea unui sistem în mod neautorizat;

Furtul de informații – reprezintă extragerea de informații de pe un calculator, în mod neautorizat;

Frauda – semnifică obținerea unei identități false, furtul de bani prin mijloace electronice;

Vandalismul – se referă la distrugerea cu intenție a unor informații stocate pe un calculator.

Țara noastră a elaborat recent o lege privind informațiunile informatice, denumită Legea privind comerțul electronic și anume Legea 365/7 iunie 2002. Legea reglementează reguluile de funcționare a furnizorilor de servicii Internet, operațiunile de plată prin Internet, și definește ideile de acces neautorizat, copierea neautorizată de informații etc. sunt prevăzute de asemenea pedepsele pentru efectuarea de operațiuni neautorizate, la art. 29:

Accesul neautorizat într-un sistem informatic sau domeniu se pedepsește cu închisoare sau amendă;

Transferul neautorizat de date dintr-un sistem informatic sau domeniu pentru uzul personal sau către terți se pedepsește cu închisoare;

Modificarea, distrugerea parțială sau totală, în mod neautorizat, a informației stocate într-un sistem informatic sau domeniu se pedepsește cu închisoarea.

S-au furnizat Norme metodologice pentru aplicarea acestei legi, în data de 20 noiembrie 2002.

Legea nr. 161/2003 privind „Prevenirea și combaterea criminalității informatice” (ca mai recentă) reglementează categoriile de infracțiuni contra confidențialității și integrității datelor și sistemelor informatice:

Infracțiunile de acces ilegal la un sistem informatic prevăzute în articolul 42. Textul de

lege prevede: „accesul fără drept la un sistem informatic constituie infracțiune și se pedepsește cu închisoare”. Reglementarea legală urmărește să protejeze sistemele informatice și datele stocate pe acestea de accesul neautorizat la acestea. Accesul fără drept la un sistem informatic înseamnă, în sensul legii, că persoana respectivă se află în urma dintre situațiile: nu este autorizată în temeiul legii sau al unui contract, depășește limitele autorizării și nu are permisiunea din partea persoanei fizice sau juridice competente să o acorde, de a folosii, administra sau controla un sistem informatic ori de a desfășura cercetări științifice sau de a efectua orice altă operațiune într-un sistem informatic.

Interceptarea ilegală a unei transmisii de date informatice prevătă în articolul 43.

Textul de lege prevede: „interceptarea fără drept, a unei transmisii de date sau emisii de date elctromagnetice provenite dintr-un sistem informatic informatice care nu este publică și care este destinață unui sistem informatic, provine dintr-un asemenea sistem sau se efectuează în cadrul unui sistem informatic, constituie infracțiune și se pedepsește cu închisoare”. Reglementarea legală protejează transmisiile de date informatice din cadrul sistemelor informatice, indiferent de modul cum se realizează acestea. Din ce în ce mai multe activități sunt informatizate atât în cadrul mediului de afaceri cât și în sectorul public. Titlul II, „Transparența în administrarea informațiilor și serviciilor publice prin mijloacele electronice” a legii creează Sistemul Electronic Național (SEN) și urmărește „promovarea utilizării Internetului și a tehnologiilor de vârf în cadrul instituțiilor publice”. De asemenea, trebuie încurajate crearea arhivelor, garantarea calității datelor conținute și permiterea accesului larg și complet la acestea prin intermediul portarurilor de informații care ușurează accesul prin Internet și explorarea bazei de date a administrației publică.

Alterarea integrității datelor informatice este reglementată de articolul 44, textul de

lege precizând: „fapta de a transfera neautorizat sau tansfera dintr-un mijloc de stocare a datelor informatice date sau a modifica, șterge sau deteriora date informatice ori de a restricționa accesul la aceste date fără drept constituie infracțiune și se pedepsește cu închisoare”. Reglementarea legală urmărește să protejeze datele informatice stocate în cadrul sistemelor informatice, urmărind să împiedice modificarea, ștergerea sau deteriorarea datelor informatice, restricționarea accesului la ele, transferul neautorizat de date dintr-un sistem informatic sau dintr-un mijloc de stocare a datelor informatice.

Perturbarea funcționării sitemelor informatice este prevăzută de articolul 45. Textul de

Lege precizează: ”fapta de a perturba grav, fără drept, funcționarea unui sistem informatic, prin introducerea, transmiterea, modificarea, ștergerea sau deteriorarea datelor informatice sau prin restricționarea accesului la aceste date constituie infracțiune și se pedepsește cu închisoare”. Reglementarea legală urmărește să protejeze datele informatice stocate în cadrul sistemului informatice. Accentul este pus pe efectul pe care îl au pentru sistemele informatice afectate acțiunile asupra datelor informatice.

Operațiui ilegale cu dispozitive sau programe informatice sunt prevăzute în articolul

46. Texul de lege prevede: „fapta de a produce, vinde, importa, distribui sau pune la dispoziție, sub orice altă formă, fără drept, a unei parole, cod de acces sau alte asemenea date informatice care permit accesul total la un sistem informatic, a unui dispozitiv sau program informatic conceput sau adaptat în scopul săvârșirii uneia din infracțiunile prevăzute în art. 42, 45”. Înscrierea acestei infracțiui în lege urmărește să limiteze accesul la instrumente (dispozitive, programe informatice, parole, coduri de acces) care permit săvârșirea infracțiunilor reglementate de legea criminalității informatice.

În afară de aceste legi mai există o lege care tratează certificatele digitale și anume Legea 455 din 18 iulei 2001 privind semnătura electronică. Ea este însoțită și de Normele tehnice și metodologice din 13 septembrie 2001 pentru aplicarea acesteia.

În noul cod penal (legile existente până atunci cu privire la infracțiunile comise prin intermediul calculatorului vor fi abrogate), în Titlul X, Capitolul I – Delicte contra confidențialității și integrității datelor și sitemelor informatice, art. 440 prevede: „(1) Accesul, fără drept, la un sistem informatic se pedepsește cu închisoare strictă de la un an la 3 ani sau cu zile-amendă;

(2) Fapta prevăzută în alin. (1) săvârșită în scopul obținerii de date informatice se pedepsește cu închisoare strictă de la un an la 5 ani;

(3) Dacă fapta prevăzută în alin. (1) sau (2) este săvârșită prin încălcarea măsurilor de securitate, pedeapsa este închisoarea strictă de la 3 la 12 ani;”

În același sens și art. 441: „(1) Interceptarea, fără drept, a unei transmisii de date informatice care nu este publică și care este destinată unui sistem informatic, provine dintr-un asemenea sistem sau se efectuează în cadrul unui sistem informatic se pedepsește cu închisoare strictă de la 2 la 7 ani;

(2) Cu aceeași pedeapsă se sancționează și interceptarea, fără drept, a unei emisii electromagnetice provenite dintr-un sistem informatic ce conține date informatice care nu sunt publice.” și art. 442: „(1) Fapta de a modifica, șterge sau deteriora date informatice ori de a restricționa accesul la aceste date, fără drept, se pedepsește cu închisoare strictă de la 2 la 7 ani;

(2) Transferul neautorizat de date dintr-un sistem informatic se pedepsește cu închisoare strictă de la 3 la 12 ani;

(3) Cu pedeapsa prevăzută la alin. (2) se sancționează și transferul neautorizat de date dintr-un mijloc de stocare a datelor informatice.”

Textul art. 443 pedepsește perturbarea funcționării sistemelor informatice astfel:

„Fapta de a perturba grav, fără drept, funcționarea unui sistem informatic, prin introducerea, transmiterea, modificarea, ștergerea sau deteriorarea datelor informatice sau prin restricționarea accesului la date informatice se pedepsește cu închisoare strictă de la 3 la 15 ani.”

Tentativa la delictele prevăzute în prezentul titlu se pedepsește, după cum se specifică în art. 447. Ca element de noutate apare pedepsirea persoanei juridice (art. 448).

Convenția privind criminalitatea informatică (seria Tratatelor Europene numărul 185) aprobată prin legea 64/2004 și publicată în Monitorul Oficial, partea 1, nr. 343/2004. a fost adoptată la Budapesta în 23 noiembrie 2001. Convenția prevede că „statele membre ale Consiliului European și celelate state semnatare ale prezentei convenții, convinse de necesitatea de a urmări aplicarea unei politici penale comune, destinată să protejeze societatea împotriva criminalității informatic, în special prin adoptarea unei legislații adecvate, conștiente de profundele schimbări determinate globarizarea continuă a rețelelor de calculatore, preocupate de riscul că rețelele retlele de calculatoare și informația electronică ar putea fi utilizate și pentru comiterea de infracțiuni, conștiente de necesitatea dreptului la protecția datelor personale” au convenit în capitolul II:

Art. 2 privind accesarea ilegală: „fiecare parte va adopta măsurile legislative și late

măsuri considerate necesare pentru a incrimina ca infracțiune, potrivit freptului său intern, accesarea intenționată și fără drept a ansamblului ori a unei părți a unui sistem informatic. O parte poate condiționa o astfel de incriminare de comiterea încălcării respective prin violarea măsurilor de securitate, cu intenția de a obține date informtice ori cu alte intenție delivtuală sau de legătură dintere încălcarea respectivă și un sitem informatic conectat la alt sistem informatic.”

Art. 3 privind interceptarea ilegală: „fiecare parte va adopta măsurile legislative și

alte măsuri considerate necesare pentru a incrimina ca infracțiune, potrivit dreptului său intern, interceptarea intenționată și fără drept, efectuată prin mijloace tehnice a transmisiilor de date informatice care nu sunt publice, destinate, provenite sau aflate în interiorul unui sistem informatic, inclusiv a emisiilor electromagnetice provenind de la un sistem informtic care transportă asemenea date. O parte poate condiționa o astfel de incriminare de comiterea încălcării respective cu intenție delictuală sau de legătra dintre încălcarea respectivă și un sistem informatic conectat la alt sistem informatic.”

Art. 5 privind afectare integrității sistemului: „fiecare parte va adopta măsurile

legislative și alte măsuri care sunt necesare pentru a incrimina ca infracțiune, în conformitate cu dreptul intern, afectarea gravă, intenționată și fără drept a funcționării unui sistem informatic prin introducerea, transmiterea, periclitarea, ștergerea, deteriorarea, alterarea sau suprimarea datelor informatice.”

Art. 11 prevede că tentativa și complicitatea sunt pedepsite

7.3. Cazuri de comitere de infracțiuni și măsuri luate

În legătură cu delictele comise prin intermediul calculatorului există la această oră un adevăr incontestabil: doar o mică parte a acestora sunt descoperite de poliție iar organele de anchetă dispun de un volum mic de informații. În contextul actual cifrele relativ scăzute din statisticile acestor infracțiuni s-ar putea trage concluzia falsă că pericolul este supraestimat. Societatea, nu este pregătită suficient de bine la această oră pentru a preîntâmpina acest gen de fapte antisociale. În continuare voi prezenta câteva exemple concrete de infracțiuni săvârșite prin intermediul calculatorului pe plan mondial, dar și pe plan autohton.

România

Un hacker din România, supărat pe prețurile mereu în creștere practicate de RomTelecom, apătruns în rețeaua societății și a modificat tarifele din site, făcându-le 1 leu pentru 5 ore de convorbire. Un alt hacker a reușit să intre pe site-ul FBI, atașând pe acesta poza lui Ion Iliescu.

Un foarte bun hacker român a găsit niște bug-uri în rețeaua firmei Ericsson și a trimis acesteia constatările lui și felul în care se poate rezolva problema. În schimb, a primit de la patronii firmei un telefon de ultimul tip placat cu aur.

În primăvara anului 1999, pe unul din calculatoarele din rețeaua dezvoltatorilor de software din Sidex a fost descoperit un virus spion. Intrusul nu a apucat însă să-și atingă scopul, fiind detectat și anihilat la timp. Tot atunci a fost descoperit și autorul, o firmă de soft din București care urmărea anumite interese comerciale cu Sidex. Prea multe detalii despre caz nu au fost făcute publice, ci a fost avută în vedere avertizarea asupra acestei categorii de pericole publice.

În toamna anului 2000, un hacker a pătruns în sistemul informatic al C.S. SIDEX S.A. Sistemul, bazat pe o rețea de calculatoare HP 9000, a fost „deranjat” de acesta prin lansarea unor mesaje injurioase, apoi ș-ia vărsat amarul pe directorul IT. Pătrunderea în sistem a fost posibilă deoarece hackerul a cunoscut datele de identificare ale unui programator.

Ieșeanul care a produs și eliberat pe Internet un virus informatic a fost trimis în judecată, sub acuzația de perturbare gravă a unui sistem informatic și deținere fară drept a unui program informatic conceput în scopul săvârșirii de infracțiuni. D.C., în vârstă de 26 de an iabsolvent al Universității Tehnice „Gheorge Asachi” din Iași, a fost reținut în septembrie 2003 deoarece a virusat caculatoarele respectivei instituții, dar și computere din Belgia și Olanda, cu ajutorul unei variante modificate a virusului MsBlast.

Unii infractori au fost prinși, dar au scăpat cu o simplă admonestare, fără vâlvă prea mare, alții însă nu au fost prinși și identificați nici în ziua de azi.

Statele Unite

Studentul american Robert Morris care în 1988 a dat o lovitură grea Internet-ului prin lansarea primului program de tip vierme.

Primul incident care a atras atenția legislaturii are loc în 1981, când un grup de crackeri au preluat controlul tabloului de comandă al Casei Albe și au folosit liniile telefonice pentru a convorbiri peste ocean. Acest incident a determinat apariția legii din 1986 – Computer Fraud and Abuse Act.

Mark Abene, un tânăr new-york-ez a fost condamnat în 1994 la un an închisoare deoarece a compromis o rețea ce aparținea unei televiziuni din New-York. Un student pe nume John Lee, din același oraș a fost condamnat la aceeași pedeapsă într-o închisoare federală, după ce a intrat în sistemele unor firme de telecomunicații, firme de electronice și firme ce proiectau rachete teleghidate.

Un alt om a fost a arestat de Serviciile Secrete Americane deoarece trimitea mesaje prin care îl amenința cu moarte pe președintele Clinton.

California

Este considerată de majoritatea capitala lumii a infracțiunilor comise cu ajutorul calculatorului. În acest stat a fost înregistrat cel mai cuoscut caz de penetrare a unui site ce conținea date cu caracter militar. Cel responsabil cu spargerea acestui site este Kevin Poulsen, a fost eliberat în 1999, după 5 ani de închisoare, când guvernul și-a retras acuzația de spionaj.

În 1995 un student al universității Irvine a fost acuzat, după ce a trimis un mesaj pe site-urile unui număr de 60 de universități, prin care amenința cu moartea studenții asiatici.

Canada

Allan Soifer, administrator de poștă electronică în Ottawa, nu și-a dat seama că un cracker îi scana PC-ul de acasă de câteva ore. Acesta găsise o poartă de intrare și avea nevoie numai de o paolă pentru a accesa fișierele. Acesta bombarda respectivul calculator cu parole generate aleatoriu, sperând că va nimeri combinația corectă. Victima a fost norocoasă deoarece avea instalat ZoneAlarm un program de protecție de tip firewallpersonal preluat de la firma ZoneLabs. Programul l-a alertat despre multitudinea de parole cu care era bombardat PC-ul. În plus el a putut identifica chiar ISP-ul cracker-ului pe care l-a localizat în Anchorage, Alaska.

China

În 1992 presa comunică primul incident – Shi Biao, un naționalist chinez, reușește să spargă securitatea site-ului unei bănci și să sustragă, cu ajutorul calculatorului, aproape 200.000$. Jumătate de an mai târziu a fost prins, condamnat la moarte și executat. De atunci, guvernul chinez a construit o rețea ce poate monitoriza și intercepta întreg traficul pe tot cuprinsul acestei țări.

Rusia

Cu toate că în 1995, președintele Yeltsin decretează ca toate organizațiile guvernamentale, de telecomunicații etc să folosească dispozitive de criptare legale și aprobate de FAPSI, în anul 2000 este arestat un hacker al cărui nume nu este cunoscu în Londra pentru că ar fi prejudiciat Banca Națională a Rusiei cu 10 milioane de dolari, din care au fost recuperați mai mult de jumătate.

Marea Britanie

Pe data de 6 ianuarie 1993, câțiva hackeri din Marea Britanie au pătruns în baza de date a unei companii comerciale din Londra operând un transfer de 10 milioane de lire.

Christopher Pile, cunoscut și sub pseudonimul de Black Baron este eliberat în 1995, după ce a fost condamnat la o pedeapsă privativă de libertate de 18 luni. Pedeapsa a fost una minimă, deoarece acesta a eliberat un virus într-o serie de rețele fără a avea intenția de a produce pagube însemnate (s-a avut în vedere și cazul lui Morris din SUA).

7.4. Drept comparat

Europa

Franța. Noul Cod Penal Francez (în vigoare din 1993) prevede în Capitolul 3 „Atacuri asupra unui sistem pentru obținerea de date”, art. 321-1: „obținerea accesului în mod fraudulos sau ajutorul dat unei persoane pentru a obține date stocate pe un calculator se pedepsește cu închisoare de la 1 la 8 ani și o amendă de 500.000 de franci. Dacă fapta prevăzută în al. 1 are ca efect modificarea datelor, fapta se pedepsește cu închisoare de până la 2 ani și o amendă de 200.000 franci.”;

Art. 323-2 prevede: „distrugerea datelor sau oprirea funcțiilor îndeplinite de unsistem de operare al unui comuter se pedepsește cu închisoare de maxim 3 ani și amendă de maximum 300.000 franci.”;

Iar în art. 323-4 se menționează: „participația, în vederea săvârșirii de fapte prevăzute în art. 323 reprezintă forma agravantă și se pedepsește cu închisoare prevăzută pentru cele mai grave infracțiuni.”.

Italia. Codul Penal Italian, în art. 615 indice 3 privind Accesul neautorizat într-un computer sau într-un sistem de telecomunicații menționează că: „oricine pătrunde neautorizat într-un computer sau într-un sistem de telecomunicații, protejat, sau folosește un astfel de sistem nemaiavând acest drept, fără ca o persoana autorizată să cunoasca acest lucru va fi condamnat la o pedeapsă cu închisoarea care să nu depășească 3 ani. Această faptă se pedepsește cu închisoare de la 1 la 5 ani dacă:

– infracțiunea este săvârșită de un fucționar public, de un detectiv particular sau de un administrator de rețele;

– pentru a comite infracțiunea amenință sau folosește o armă;

– cauzează întreruperea sistemului totală sau parțială sau distruge modifică date de pe acea mașină.”

În același articol, indice 4 sunt prevăzute Posesia ilegală și răspândirea codurilor de acces a (sau prin intermediul) calculatoarelor sau sistemelor de telecomunicații astfel: „…reprezintă infracțiune fapta de a reproduce, propaga, transmite sau livra coduri, parole sau alte moduri prin care se poate avea acces la un computer sau un sistem de telecomunicații, în scopul de a obține un profit pentru sine ori pentru altă persoană sau pentru a cauza distrugeri ori pierderi unei persoane, și se pedepsește cu o închisoare de maxim 1 an și o amendă ce nu poate depăși 10 milioane de lire.”

În sfârșit, în art. 615 indice 5 este prevăzută „Infracțiunea de răspândire de programe ce au ca scop distrugerea sau întreruperea unui sistem de operare” astfel: „oricine propagă, transmite sau livrează un program – editat de el sau de către altcineva – cu scop și efect de a distruge un computer sau un sistem de telecomunicații, datele sau programele conținute de acestea, sau cu scop de a întrerupe parțial sau total sarcinile pe care le îndeplinește, este pedepsit cu o închisoare ce nu poate depășii 2 ani și la o amendă ce nu poate depășii 20 de milioane de lire”

Spania. Codul Penal Spaniol prevede în Capitolul I intitulat „Despre descoperirea de secrete”, în art. 197 că: „orice individ care, în scopul de a descoperi secrete despre cineva,… acaparează poșta electronică sau alt document al unei alte persoane, interceptează telecomunicațiile sale ori folosește dispozitive de ascultare, transmitere, înregistrare sau de reproducere a imaginii video ori a sunetului, va fi pedepsit cu închisoare între 1 și 4 ani.”

„- aceeași pedeapsă va fi aplicată oricărui individ, care fără autorizare confiscă, folosește sau modifică date, despre un terț aflate pe acel comuter, fișiere electronice, fișiere de tip poză sau media, sau orice fel de fișiere publice sau private;

– se pedepsește cu închisoare de la 2 la 3 ani aceeași faptă dacă datele ori fișierele media sau paragrafele sunt arătate sau transferate unui terț;

– se pedepsește cu închisoare de la 1 la 3 ani fapta celui care, fară să fi participat la activitatea ilicită comite fapte descrise mai sus;

– dacă faptele descrise în aliniatele 1,2 sunt comise de o persoană ce administrează acel calculator, poșta electronică, fișierele media sau înregistrările, pedeapsa este între 3 și 5 ani, iar dacă sunt făcute publice se poate adăuga un maxim de jumătate din pedeapsa prevăzută;

– dacă actele descrise în acestă secțiune implică date personale cu privire la ideologie, credință, religie, orientare sexuală, ori dacă victima este un minor sau o persoană lipsită de capacitate se poate adăuga un maxim de jumăte din pedeapsă.”

Secțiunea „Despre fraude” prevede în art. 248, al. 2 că: „de asemenea se face vinovat de fraudă orice individ, care, cu intenția de a scoate un profit folosește computerul pentru a manipula un transfer neautorizat de bani, prejudiciind un terț.”

Ungaria. Codul Penal al Ungariei prevede în secțiunea 300/C intitulată „Fraude comise prin intermediul calculatorului în art. 1: „persoana, care – pentru a-si atrage un profit ilicit sau pentru a cauza o pagubă – influențează rezultatele computerizate schimbându-le programul, stergând, introducând erori sau date deficiente sau producând alte operații neautorizate, comite o infracțiune și va fi pedepsită cu închisoare de maxim 3 ani.”.

În art. 2 se prevede: „lit a) pedeapsa va fi de până la 5 ani dacă frauda comisă prin intermediul calculatorului cauzează pagube considerabile;

lit b) închisoare de la 2 la 8 ani dacă frauda comisă prin

intermediul calculatorului cauzează pagube foarte mari;

lit c) închisoare de la 5 la 10 ani dacă frauda comisă prin

intermediul calculatorului cauzează pagube extrem de mari.”

În art. 3 de asemenea este considerată fraudă „…fapta unei persoane comisă prin intermediul calculatorului, ce comite actele comise în aliniatele 1,2 utilizând un card electronic folosit pentru serviciile de telefonie publică sau pentru serviciile de telefonie celulară ori modifică un program al unui calculator ce controlează serviciul de telefonie celulară.”.

Germaia.Codul Penal prevede în Secțiunea 202A-„Spionajul electronic” art.1 „oricine obține în mod neautorizat, pentru sine sau altul, fișiere protejate împotriva accesului neautorizat va fi condamnat al o pedeapsă cu închisoarea maximum 3 ani sau amendă.”

Secțiunea303A-„Modificarea de date sau fișiere” art.1: „oricine șterge, modifică, sau schimbă în mod ilegal date (fișiere) va fi condamnat la o pedeapsă cu închisoarea de maximum 3 ani sau amendă .”

Secțiunea 303B-„Sabotajul electronic” art. 1 „se impune o pedeapsă cu închisoarea de maxim 5 ani sau amendă pentru oricine interceptează date (fișiere) ce sunt deosebit de importante pentru o persoană juridică sau o autoritate administrativă:

a)prin comiterea unor fapte prevăzute la secțiunea 303

b)distrugând, defectând, făcând să nu funcționeze, înlăturând un sistem sau un fișier conținute pe un calculator .”

art. 2: „Tentativa se pedepsește.”

Grecia. Codul Penal prevede în Secțiunea 2, art. 370C, al. 1: „oricine obține accesul în mod ilegal la datele ținute pe un calculator sau pe memorii flash externe ori transmise prin sistem de unde radio va fi condamnat la pedeapsă cu închisoarea de cel puțin 3 luni sau amendă de cel puțin 10.000 de drahme. Dacă fapta privește securitatea națională a statului pedeapsa se acordă în conformitate cu prevederile art. 148. Dacă cel vinovat de faptele arătate mai sus dovedește că se află în executarea unui ordin al superiorului sau a celui care ține datele ori a oricărui angajat competent nu va fi pedepsit.”

Islanda. Codul Penal prevede în Secțiunea 1 art. 228 al. 1: „…aceeași pedeapsă se aplică oricărei persoane ce obține în mod ilicit accesul la fișiere sau programe ținute pe un calculator”

Asia

Japonia. Codul penal al Japoniei prevede în Capitolul 37, Secțiunea 246 – 2 „Fraude prin intermediul calculatoarelor”: „obținerea unui profit pentru sine sau pentru altul, în mod ilicit prin introducerea unor informații false sau instrucțiuni greșite într-un calculator care este folosit pentru tranzacții de afacerii sau…, se pedepsește cu munca în închisoare nu mai mult de 5 ani”

Secțiunea 250 „Tentativa”: „orice persoana care încearcă să comită orice infracțiune de acest gen va fi pedepsită.”

Secțiunea 259 „Distrugerea de documente private”: „distrugerea de documente sau cartele electromagnetice (carduri), falsificarea de date se pedepsește cu muncă în închisoare, nu mai mult de 5 ani”

Capitolul 36 Secțiunea 234-2 „Interceptarea tranzacțiilor prin intermediul calculatorului”: „spargerea sau interferarea, cu ajutorul unui program, a unui sistem de operare de pe un calculator care este folosit în tranzacții financiare, sau folosirea de orice alt mijloc iligal pentru a pătrunde în sistem pentru a introduce informații false ori instrucțiuni greșite în scopul obținerii unui profit pentru sine sau altul se pedepsește cu muncă în închisoare nu mai mult de 5 ani sau amendă ce nu poate depăși 100.000 yeni.”.

India. Legea 21/2000 privind Tehnologia informatică, prevede în capitolul XI-„Infracțiuni” Secțiunea 66-Hacking-ul art. 1: „oricine, cu rea-voință sau conștient că va aduce atingere bunurilor publice sau bunurilor unei persoane prin distrugerea, stergerea sau modificarea oricăror informații stocate pe un calculator sau scoaterea acestora din funcțiune prin orice mijloace comite o violare.”

Art. 2 „orice astfel de faptă va fi pedepsită cu închisoare de până la 3 ani sau o amendă de 100.000 de rupe ori ambele.”.

China. Din Decretul nr. 147/1994 rezultă Regulamentul R.P.China cu privire la protecția informației tehnologice care prevede în Secțiunea „Sistem”, Capitolul 4-„Responsabilități legale” art. 1: „organismele publice pot avertiza ori impune o amendă de maximum 5.000 de yuani pentru persoane fizice sau de 15.000 yuani pentru persoane juridice în cazul în care introduc un virus de calculator sau alt program prin care să producă o pagubă cu intenție. În caz că există bunuri rezultate din infracțiune sau profit se confiscă, iar amenda se poate tripla.”.

Ordonanța telecomunicațiilor prevede în Capitolul 27A, Sectiunea 161-„Accesul la un calculator cu rea-intenție”, art. 1: „orice persoana obține accesul al un calculator prin… comite o infracțiune și va fi condamnat la închisoare de până la 5 ani.”.

America

Argentina. Nu există încă o legislație în acest sens.

Mexic.Codul Penal Mexican prevede în Partea 9, Capitolul 2 art. 211 bis 1: „modificarea, distrugerea sau cauzarea pierderii de informații conținute pe un calculator sau un echipament protejat, fără autorizare se pedepsește cu închisoare de la 6 luni la 2 ani și muncă în folosul comunității de la 100 la 300 de zile. Obținerea accesului de informații conținute pe un calculator ori un echipament protejat, fără autorizare se pedepsește cu închisoare de la 3 luni la 1 an.”;

Art. 211 bis 2: „modificarea, distrugerea sau cauzarea pierderii de informații conținute pe un calculator guvernamental sau un echipament protejat, fără autorizare se pedepsește cu închisoare de la 1 an la 4 ani.”;

Art. 211 bis 3: „modificarea, distrugerea sau cauzarea pierderii de informații conținute pe un calculator al unor instituții sau un echipament protejat, fără autorizare se pedepsește cu închisoare de la 6 luni la 4 ani.”;

Chile. Legea referitoare la infracțiuni comise prin intermediul calculatorului, publicată și promulgată în 1993 prevede în art. 1: „acela care, cu rea-voință, distruge sau face ca un sistem de operare să fie de nefolosit sau modifică datele sale, va suporta o pedeapsă cu închisoare cuprinsă între gradul minim și maxim al tipului de infracțiune săvârșită. Dacă, ca rezultat al acestei acțiuni, datele conținute pe sistem vor fi afectate se va aplica o pedeapsă maximă indicată la punctul anterior.”.

Venezuela. Statutul special împotriva infracțiunilor comise prin intermediul calculatorului publicat în 2001 prevede în Titlul II-„Infracțiunea comisă prin folosirea tehnologiei informatice” art. 6-„Accesul ilegal” al. 1: „orice persoană, care, fără a fi autorizată, obține accesul sau interceptează un fișier folosindu-se de un program tehnologic, va fi pedepsită la închisoare de la 1-5 ani și o amendă sub forma impozitului de la 10 la 50 de unități.”.

Art. 9-„Accesul ilegal sau sabotajul unui sistem protejat” al.1: „pedepsele prevăzute în art. 6 se pot dubla dacă prin această faptă se afectează componente, părți sau informații tehnologie protejate aparținând bunurilor publice sau private ori persoanelor fizice sau companiilor.”.

Canada. Codul Penal al Canadei, în Secțiunea 342.1 prevede: „1. Orice persoană, care, în mod fraudulos sau fără vreun drept a) obține, direct sau indirect, vreun serviciu al vreunui calculator; b) interceptează ori cauzează interceptarea, directă sau indirectă, folosind orice mijloc, al unui fișier de pe un calculator; c) folosește un sistem de operare pe un calculator cu intenția de a comite o infracțiune prevăzută la pct. a și b ori o infracținue prevăzută în Secțiunea 430 în legătură cu fișiere sau date ținute pe calculator

este vinovat de comiterea unei grave infracțiuni și pedepsit la închisoare de maximum 10 ani.”.

Africa

Africa de Sud. Legea 25/2002 privind Comunicațiile electronice și tracțiile menționează în Capitolul XII-„Infracțiuni produse prin intermediul calculatorului”, Secțiunea „Accesul neautorizat, interceptarea sau interferarea de date” art. 86: al. 1: „o persoană care, cu intenție accesează sau interceptează orice date, fără de a o face se face vinovată de săvârșirea unei infracțiuni.”;

Al. 2: „o persoană, care cu intenție și fără autorizare interpune date într-un sens cu scopul de a le modifica, distruge sau comite orice astfel de acte, se face vinovată de săvârșirea unei infracțiuni.”;

Al. 4: „o persoană care utilizează un mod ilegal un echipament sau un program de calculator în scopul de a penetra măsurile de siguranță proiectate cu scopul de a proteja anumite date, se face vinovată de săvârșirea unei infracțiuni.”;

„Pedepse” art. 88: „o persoană vinovată pentru săvârșirea uneia din infracțiunile prevăzute în art. 86 poate fi condamnată la închisoare până la 5 ani și obligată la plata unei amenzi.”;

Mauritius. În iulie 2003 este adoptată Legea privind abuzurile pe calculator și infracțiunile comise prin intermediul calculatoarelor, care menționează în partea a 2-a „Accesul neautorizat la fișierele unui calculator” art. 1: „orice persoană care cauzează unui sistem de operare de pe un calculator sau o stație, știind că accesul la datele pe care dorește să le acceseze este neautorizat, va comite o infracțiune și va fi obligat la plata unei amenzi ce nu poate depăși 50.000 de rupe și detențiune penală ce nu poate depășii 5 ani.”;

Secțiunea 4 „Accesul cu intenția de a comite infracțiuni” art. 1 „orice persoană care accesează un sistem de operare a unui calculator pentru a executa funcții cu scopul de a accesa date securizate sau date ținute pe orice calculator, cu intenția de a comite o infracțiune prevăzută în orice acte legislative va comite o infracțiune și va fi obligat să plătescă o amendă de 200.000 de repe sau detențiune penală ce nu poate depăși 20 de ani”

Secțiunea 5 Accesul neautorizat și interceptarea serviciilor oferite de calculator art. 1: „orice persoană, care cu orice mijloace:a) conștient accesează un calculator cu scopul de a obține direc sau indirect un serviciu

b) interceptează sau cauzează interceptarea direct sau

indirect a oricărei funcții sau a oricărei date ținută pe un computer – va comite o infracțiune”

art. 2 lit. a) „persoana condamnată pentru infracțiunea prevăzută de art. 1 va fi obligată să plătească o amendă ce nu poate depăși 100.000 de rupe și o detențiune penală ce nu poate depăși 10 ani;

lit. b) rezultatul comiterii unei infracțiuni prevăzute în art. 1 ce are ca efect modificare datelor conținute pe calculator se pedepsește cuobligarea persoanei la plata de 200.000 de rupe și cu o detențiune penală ce nu poate depăși 20 de ani.”;

secțiunea 8 lit. a „Divulgarea neautorizată de parole”: „orice persoană care, conștient divulgă o parolă, un cod de acces sau orice alt mijloc prin care se poate obține accesul la un program sa udate ținute pe un calculator:

1 din greșeală

2 pentru un scop ilicit

3 cu intenția de a cauza un prejudiciu unei persoane,

va comite o infracțiune și va fi obligată la o amendă ce nu poate depăși 50.000 de rupe și o închisoare ce nu poate depăși 5 ani.”.

Tunisia. Nu există încă o legislație în acest sens.

Noua Zeelandă. nu există încă o legislație în vigoare în ceea ce privește infracțiunile comise prin intermediul calculaorului, însă se află în dezbaterile parlamentului o lege ce cuprinde titluri precum: Accesarea computerului cu un scop fraudulos, Accesarea coputerului fără autorizație, distrugerea unui sistem de operare pe calculator.

Statele Unite. Legislația Statelor Unite este foarte bogată și cuprinzătoare în acest sens, fiind cea mai reprezentativă. În acest sens legislația este reprezentată de: „Legea privind Intimitatea comunicării electornice” per 2001 care aduce unele modificări și completări Codului Penal (Secțiunea 209 „Obținerea de fișiere audio de tip mail sau alt tip fără autorizație”; Secțiunea 814 ce modifică Secțiunea 1030 lit. c a codului prin mărirea pedepsei cu închisoarea de la 10 ani la 20 ani) și Codul S.U.A. în Titlul 18-Infracțiuni și proceduri, Partea I-Infracțiuni, capitolul 47-Frauda și identitatea falsă (intrat în vigoare la 30 oct. 1996), Secțiunea 1030 Frauda și activitățile adiacente în legătură cu calculatorul.

Similar Posts