Agora
Media
Libraria Byblos



AgoraNews  





PC Magazine Ro  




NET Report   




Ginfo   




agora ON line   





PC Concrete   





Liste de discuții   




Cartea de oaspeți   




Mesaje   





Agora   








Clic aici
PC Report - ultimul numar aparut


Soluții - PC Magazine Romania, Decembrie  2002

Motto: "- Dumnealui este dl. Davis, de la FBI... dl. Crane, de la CIA... detectivul Morgan, de la N.Y.P.D... Și mai este acolo, în spate, un domn ...
- Da, eu sunt... de la o Altă Agenție..."
(Dintr-un film polițist)

De Crăciun ne-am luat rația de Libertate

Răzvan Sandu

La ora la care scriu aceste rânduri, situl www.linuxwill.go.ro , dedicat de mine utilizatorilor de Linux din România, a fost "spart" de către un cracker. El a adăugat o animație Flash, pe fundal negru, înaintea paginii principale, lăsând restul neatins. Dincolo de faptul că vreau să îi mulțumesc - niciodată acest sit nu s-a bucurat de atâția vizitatori ca acum - promit să nu mai folosesc niciodată parole slabe.
Astăzi vom vorbi, așadar, despre libertate. Și despre ceea ce vrem - sau nu vrem - să devină internetul.

Cine ești dumneata, domnule root?
Pentru aceia dintre Dvs. care nu știu încă, voi începe prin a spune ce se înțelege prin securitatea unei mașini sau a unei rețele. Fără a încerca o definiție precisă, un sistem este numit "sigur" dacă:

  • permite utilizatorilor să citească și/sau să modifice numai acele informații pe care sunt autorizați să o facă (confidențialitate, integritate);
  • nu permite nimănui ca, prin vreo acțiune asupra sistemului, să interzică utilizatorilor legali accesul la datele stocate - denial of service - (disponibilitate)

Desigur, persoana care are - și trebuie să aibă - drepturi "de viață și de moarte" asupra întregii mașini este administratorul, utilizatorul root. De aceea, majoritatea atentatelor la securitate sunt încercări de obținere a accesului cu drepturi de root asupra sistemului în cauză.

Nu uitați, însă, că asigurarea securității unui sistem este o armă cu două tăișuri. Cu cât un sistem este mai sigur, o parte din funcționalitatea sa se pierde. În glumă, un calculator perfect sigur este unul oprit, nelegat la nici o rețea și încuiat în safe-ul unei bănci. La celălalt capăt al scalei se găsește un sistem conectat în mai multe rețele publice, pe care nu s-au luat nici un fel de măsuri de limitare a accesului. Acestea sunt cele două extreme între care trebuie să alegeți "poziția" mașinii Dvs., adică compromisul între siguranță și funcționalitate.

În stabilirea soluției de asigurare a securității, trebuie să țineți seama de câteva aspecte importante:

  • costul schemei alese trebuie să fie proporțional cu valoarea datelor stocate - nu cred că doriți să plătiți unui expert câteva mii de dolari doar pentru a vă proteja e-mail-urile de ochii indiscreți ai colegilor, nu ?
  • datele pot fi atacate atât prin intermediul rețelei la care este conectat computerul, cât și direct, de la consola acestuia (securitate de la distanță, locală și fizică). La ce vor servi niște programe firewall puternice, dacă un cracker interesat poate accesa sistemul direct de la tastatura Dvs. sau îi poate demonta carcasa, furând hard disk-ul? Vă amintiți poate că, pe vremea MS-DOS, grupuri întregi de programatori se chinuiau să inventeze programe impenetrabile care cereau o parolă la pornirea calculatorului, când mașina putea boota de pe o simplă dischetă sistem, oferind acces 100% la toate discurile fixe ...
  • sistemele Windows 95, 98, Millenium, 2000 Professional și XP sunt, prin definiție, sisteme "client" - adică mașini care "primesc" serviciile oferite de o rețea. Asta le face mai puțin susceptibile la atacurile venite dinspre aceasta, fiindcă ele nu rulează deloc procese care ar putea oferi "porți ascunse de intrare". În schimb, securitatea lor locală este destul de slabă, fiindcă Windows își are rădăcinile în vechile sisteme de operare Microsoft, proiectate pentru acces neîngrădit din partea unui singur utilizator. Prin contrast, sistemele Linux/Unix sunt puncte-cheie în majoritatea siturilor internet sau rețelelor mari și oferă zeci de servicii tip sever, destinate să fie accesate de la distanță.
  • sursele programelor ce alcătuiesc Linux sunt mereu disponibile. Asta permite "băieților răi" să le studieze și să exploateze diferitele greșeli de programare, dar și "băieților buni" să identifice foarte rapid soluția problemelor apărute.

Internetul - teatru de război
Toate cele spuse mai sus vi se par doar o teorie plictisitoare, nu ? Ei bine, haideți să ne jucăm un pic:

O cutie de carton conținând cereale pentru copii vi se pare o armă mortală ? Nuuuuuu ... ! Ba da. Un tip numit John T. Draper a deschis o astfel de cutie și a găsit în ea o jucărie-surpriză destinată celor mici: un fluier din plastic. El a aflat că fluierul producea un ton cu frecvența de exact 2600 Hz, frecvență folosită de companiile telefonice pentru comanda trunchiurilor de linii. Ceea ce a urmat a fost un adevărat război de "păcălire" a sistemelor, de rerutări de numere de apel, de utilizare gratuită a unor linii scumpe, etc. Piratul telefonic nu avea corabie, dar și-a luat un nume de luptător: Captain Crunch, după numele cerealelor de la care pornise întreaga aventură ...

La www.webcrunchers.com puteți găsi povestea, spusă chiar de Căpitanul Crunch.
Eiiiii, Kevin Poulsen era obosit, așa că s-a gândit că nu ar trebui să mai meargă pe jos. Norocul i-a surâs în ziua în care a câștigat un superb Porsche 944, oferit ca premiu la un concurs radiodifuzat. Totul ar fi fost chiar o poveste frumoasă despre șansă și despre norocul începătorilor, dacă apelul său n-ar fi ieșit câștigător în urma manipulării liniilor telefonice ale companiei Pacific Bell ... Despre Poulsen și nevinovata sa pasiune pentru telefonie puteți citi la www.kevinpoulsen.com.

Tsutomu Shimomura. Numele japonez are o rezonanță războinică, dar cel care îl poartă nu este un sensei, ci un expert în securitatea rețelelor de la San Diego Supercomputer Center. Pe 25 decembrie 1994, el cădea victimă unui alt cracker legendar, Kevin Mitnik. Acesta a folosit o tehnică de imitare a adreselor IP (IP spoofing) pentru a exploata relația de încredere existentă între două mașini ale Centrului. În acest fel, Mitnik a reușit să obțină acces privilegiat fără a avea nevoie de parole și a furat un număr de utilitare de securitate existente în acel sistem, utilitare proiectate de Shimomura. De altfel, Mitnik este un vechi pirat al sistemelor de calcul, poate cel mai celebru - câteva dintre pățaniile sale le puteți afla la www.takedown.com/bio/mitnick1.html

1988. Studentul Robert Morris Jr., fiul unui expert ce lucra pentru NSA (National Security Agency, poreclită și No Such Agency din cauza nivelului ei secret) lansează în Internet viermele Christmas Tree ("Pomul de Crăciun"). Încercând să facă o glumă unui prieten de la Harvard, Morris comite o eroare de programare, iar desenul Pomului de Crăciun se răspândește rapid până în Europa, infectând mii de mașini. Tânărul furnizează autorităților metoda de contracarare a viermelui și este arestat de FBI.

"Cutiile colorate" (red box, blue box, mauve box, aqua box s.a.) sunt circuite electronice ce au fost folosite mult timp pentru "înșelarea" sistemelor telefonice. Câteva referințe la ele puteți găsi la www.fc.net/ phrack.html, iar schemele sunt disponibile și azi în internet. Desigur, multe dintre ele sunt acum depășite datorită utilizării aparaturii telefonice digitale. Programe specializate, cum ar fi BlueBeep, realizau funcții asemănătoare de phreaking (piraterie telefonică) prin metode software. Ca exemplu, cutia roșie reușea să imite zgomotul monedelor introduse într-un telefon public, ceea ce permitea accesul neautorizat - și gratuit - la linie. Lista exemplelor ar putea continua - pentru doritori, detaliile vă așteaptă la www.underground.org sau la Electronic Frontier Foundation www.eff.org

Un vis devenit realitate
OK, veți spune, dar ce legătură directă există între toate astea și Linux ? "Unealta este jumătate din meșter" spune un proverb din bătrâni. Dintre toate sistemele de operare disponibile pentru PC-uri, Linux este atât preferatul profesioniștilor în rețele, cât și al celor care se ocupă de activități ilegale. Aceasta fiindcă el "coboară" în birourile oricăruia dintre noi puterea sistemelor Unix "adevărate" și a stațiilor de lucru ce costă zeci de mii de dolari ... O implementare robustă a setului de protocoale TCP/IP - ca și a altora - și existența unui set de "scule" de analiză a rețelei, iată ce este definitoriu pentru Linux !

Pentru începători, să pornim prin a ne imagina "un zid" construit la interfața între computerul nostru și rețeaua din care face parte. Ducând analogia mai departe, dacă în acest zid există orificii numerotate, acestea ar putea fi porturile TCP/IP. Programele daemon ce rulează pe sistem "ascultă" cereri de conectare, fiecare la portul care i-a fost alocat. Porturile servesc, deci, ca "puncte de întâlnire" predefinite între serverele TCP/IP ale mașinii și clienții de rețea ce folosesc aceste servicii.

Cea mai mare parte a atacurilor venite din rețea se desfășoară după un scenariu devenit aproape banal pentru mulți administratori:

  • analiza de la distanță a mașinii-victimă, folosind diverse utilitare, în scopul de a afla cât mai multe informații despre ea (tipul și versiunea sistemului de operare, detalii despre utilizatori și root, detalii hardware, etc.);
  • scanarea porturilor TCP/IP, pentru a stabili care dintre acestea sunt "deschise", ce servicii rulează pe ele și care sunt eventualele puncte vulnerabile ce pot fi exploatate (erori de programare existente în software-ul server);
  • pătrunderea neautorizată în sistem
  • sustragerea fișierului cu parole /etc/passwd (în scopul prelucrării și obținerii parolelor de root în clar), provocarea altor pagube sau furtul unor informații esențiale.

Dacă vă mai amintiți discuția noastră din numărul trecut, era vorba acolo despre criptarea informațiilor folosind algoritmi cu chei asimetrice. Pe un sistem Linux, fișierul de parole /etc/passwd este protejat folosind același mecanism: parolele nu sunt stocate în clar, ci în formă criptată. Funcțiile matematice ce realizează criptarea nu admit funcție inversă, adică este imposibil să se obțină parola pornindu-se de la textul cifrat. Din nefericire, marea majoritate a utilizatorilor nu își stabilesc parole puternice (cu lungime suficientă, cu combinații de cifre și litere mari si mici), ci simple cuvinte din limba română sau engleză. Dacă o persoană rău intenționată dispune de un dicționar (lista de cuvinte) și de un program capabil să "încerce" aceste parole cu suficientă viteză, probabilitatea de a găsi "combinația" care permite accesul este destul de mare ...

Pentru crackeri, Linux este "un vis devenit realitate", fiindcă aici există (sau se pot implementa ușor) toate programele necesare: scannere de porturi TCP/IP, utilitare de "spargere" a parolelor, instrumente sofisticate de analiză a rețelei... Câteva dintre ele merită o atenție specială.

Armament greu
Iată o prezentare succintă a câtorva utilitare valoroase. Precizez că rareori autorii acestora sunt crackeri sau persoane rău intenționate - utilitarele în cauză au fost proiectate ca mijloace de cunoaștere a rețelei, pentru îmbunătățirea securității ei.

SATAN (System Administrator's Tool for Analyzing Networks) este un scanner de porturi care caută vulnerabilități cunoscute pe mașinile-țintă, cum ar fi cele ale severelor FTP, NFS, NIS si rsh. Scris de celebrii hackeri (și experți mondiali în securitate) Dan Farmer și Vietse Venema, SATAN se distinge prin interfața sa Web intuitivă și ușor de folosit. Implementarea sa pe un sistem Linux nu este tocmai facilă, dar poate fi făcută aplicând un patch destinat acestui sistem de operare și recompilând sursele. Scannerul este disponibil la www.fish.com, iar fișierul-patch la www.sunsite.unc.edu.

XSCAN este un scanner de porturi specializat în identificarea punctelor slabe din serverul grafic X ce rulează pe mașina-țintă. Ceea ce îl face deosebit este faptul că, în cazul în care identifică o "portiță de intrare" în sistem, înregistrează tastele apăsate de utilizator.

ethereal este un program de analiză a traficului de rețea, cu o interfață grafică deosebit de prietenoasă. El vă poate ajuta să identificați rapid mașini, adrese IP și MAC și alte detalii din rețeaua Dvs. Pentru aceasta, ethereal "ascultă" rețeaua pentru un timp determinat și apoi vă prezintă, într-o formă intuitivă, datele descoperite. Programul face parte din distribuția Red Hat Linux, unde îl găsiți sub formă de pachet .rpm.

Jakal este tot un scanner de porturi, din clasa celor invizibile (stealth). Se distinge în mod deosebit prin capacitatea sa de a scana domenii aflate în spatele unor dispozitive firewall, fără a lăsa urme în jurnalele acestora. Îl puteți obtine de la adresa www.giga.or.at.

Moș Crăciun cu plete dalbe ...
În discuția noastră despre protejarea propriei mașini, să nu pierdem din vedere și micile "daruri" pe care le puteți primi pe o dischetă sau ca atașament la un e-mail.
În lumea Linux există două "bariere naturale" puternice împotriva răspândirii virușilor:

  • programele executabile .EXE și .COM din mediile Microsoft nu rulează pe un sistem Unix/Linux (fie ele programe "normale" sau viruși). Așa cum probabil ați descoperit deja, pentru a rula un executabil DOS pe Linux este nevoie de emulatoare ca dosemu, WABI sau wine, care "traduc" apelurile de sistem. De aceea, este practic imposibil să primiți un virus pe această cale. Excepție fac virușii scriși în limbaje cu abilități cross-platform, cum ar fi Java sau Perl.
  • Într-un mediu Unix, execuția oricărui program se desfășoară după reguli stricte, sub controlul absolut al kernel-ului sistemului de operare. În fiecare moment, este limpede ce drepturi de acces la resurse are un anumit proces, în funcție și de drepturile asignate utilizatorului care a lansat procesul. Nici un program nu are acces direct la hardware, ceea ce împiedică majoritatea acțiunilor neautorizate pe care le execută virușii.

În cazul în care, totuși, un program ilegal exploatează o vulnerabilitate existentă în sistem (un bug), platforma Linux este celebră prin viteza cu care apar patch-urile de corecție - timpii sunt de ordinul orelor. Comunitatea utilizatorilor Linux fiind "coagulată" în internet, soluțiile de corecție oferite de programatori apar foarte repede pe forumurile de discuții - mult mai repede decât în cazul oricărui sistem comercial.

Fac ce vreau, dar știu ce fac ...
În presa TI și în afara ei, ca și în audiovizual, la nivelul marelui public, se menține confuzia între termenii de hacker și cracker. M-am întrebat întotdeauna dacă de vină este ignoranța unora sau rea-voința lor. Apoi mi-am amintit că omul se teme întotdeauna de ceea ce nu cunoaște și că există și multe interese comerciale pentru menținerea acestei "spaime" - ca de exemplu, vânzarea de soluții și pseudo-soluții de securitate, de antiviruși, etc.

Pe scurt, un hacker este o persoană care posedă cunoștințe avansate în domeniul TI, al sistemelor de operare, al hardware-ului, etc. - de cele mai multe ori, un autodidact, unul care "sapă" în fiecare zi printre aceste detalii, din pasiune. De cele mai multe ori, hackerii sunt și programatori talentați. În ciuda faptului că acești oameni nu sunt implicați în nici un fel de activitate ilegală, asupra lor plutește întotdeauna suspiciunea managerilor, a publicului sau a ... părinților J - în general, a tuturor acelora care nu le împărtășesc pasiunea. Cu toate acestea, hackerii aduc servicii enorme comunității mondiale TI, inclusiv prin lupta împotriva ilegalităților: este de ajuns să-i amintesc pe Dennis Ritchie, Linus Torvalds, Paul Baran, Richard Stallman... Și, de ce nu, pe dl. Bill Gates.

Dimpotrivă, crackerii sunt "îngerii decăzuți" ai TI-ului. La origine, unii au fost hackeri, alții nu. Caracteristica activității lor este implicarea în operații ilegale, motivate fie de bani, fie de dorința de a obține celebritate. Plaja infracțiunilor ce se pot săvârși cu ajutorul computerului este foarte largă, de la penetrarea sistemului informatic al unei bănci în scop de furt sau folosirea cărților de credit false la pirateria software sau distrugerea unor situri Internet. Desigur, cei mai mulți crackeri sunt și programatori foarte buni, atrași de fața întunecată a scrierii de software. Uneori, însă, de "faima neagră" a crackerilor se bucură și oameni care o doresc, dar nu o merită - prea des unii sunt tentați să creadă că orice vânzător de CD-uri pirat este și un programator genial, un Kevin Mitnick ...

Și totuși, cum ne putem proteja ?
Aceasta este întrebarea pe care mi-o veți pune, mai devreme sau mai târziu, referitor la sistemul Linux pe care l-ați instalat. Aici merită făcute câteva observații.
Mai ales printre utilizatorii de Windows, securitatea este un subiect la modă. Și, ca în orice subiect mult dezbătut, amatorismul își face loc ușor. Zece programe antivirus și trei variante de firewall, instalate pe un Windows care servește ca mașină de scris, vor duce la un sistem supraîncărcat, greoi și, de multe ori, nefuncțional.

Fie-mi îngăduit să spun că organizarea corectă a securității unui sistem pornește de la "igiena" sa, de la lucruri simple:

  • Alegeți o parolă bună. Ca cracker, nu trebuie să fii un geniu în TI ca să încerci "să potrivești în broască" parole conținând numele utilizatorului, data nașterii, numele soției, numărul mașinii ... O parolă corect aleasă conține un număr mai mare de caractere, alternează cifre, litere mari și mici care nu se repetă și nu folosește cuvinte din dicționare;
  • Mențineti la minim numărul serviciilor pornite pe mașina Dvs. Linux, adică numai acele servicii de care aveți într-adevăr nevoie. "Clienți" potențiali pentru "găuri" de securitate sunt, în special "comenzile r" (rhosts, rusers, rsh, rlogin), finger, sendmail, telnet, NIS, FTP ... Fișierul /etc/services și utilitare cum ar fi ntsysv vă permit să controlați exact daemonii care sunt lansați în fundal în momentul bootării. Dacă aceste servicii vă sunt necesare, asigurați-vă că ați citit buletinele de securitate de pe Internet (situri cum ar fi www. cert.org) și că ați aplicat patch-urile pentru bug-urile ce au fost descoperite.
  • Nu permiteți accesul fizic la consola computerului decât acelor persoane care au într-adevăr nevoie să o facă. Nu rămâneți logat în calculator atunci când plecați în pauză de masă J :
  • Nu instalați decât programe din surse sigure și a căror comportare o cunoașteți în detaliu;
  • Folosiți utilitare de autentificare, cum ar fi tripwire;
  • În fine, cea mai bună metodă de apărare este atacul: rulați periodic scannere de porturi împotriva propriei mașini, încercând să-i descoperiți punctele slabe.

La Mulți Ani !
Înainte de a-mi lua "La revedere !" de la Dvs. pentru ultima dată în acest an și de a vă ura "Sărbători Fericite !", vreau să vă fac un mic cadou: câteva adrese Internet unde veți găsi materiale interesante legate de Linux, de securitatea sistemelor și de intimitate pe Internet:

www.lopht.com
www.infonexus.com
www.defcon.org
www.cs.purdue.edu
www.raptor.com
www.epic.org

Vă aștept în 2003 pentru noi incursiuni în lumea Linux !


PC Magazine Ro | CD ROM | Redactia | Abonamente | CautareArhive

Copyright © 1999-2002 Agora Media.

[email protected]

LG - LifeŽs Good

www.agora.ro

deltafri

www.agora.ro

www.agora.ro

www.agora.ro