PARTEA A PATRA UN SFÂRŞIT ŞI UN NOU ÎNCEPUT
CAPITOLUL 33 UN SAMURAI HACKUIT
Ozg ojglw lzw hshwj gf AH Khggxafy lzsl BKR skcwv ew stgml?33
Având acum în regulă actele de identitate, era timpul să plec din Las Vegas, înainte să-mi pierd norocul. Venea sezonul de vacanţă de Crăciun/Anul Nou şi nu am putut rezista ideii de a face o vizită în Denver, un oraş de care efectiv mă îndrăgostisem. Mi-am făcut bagajele şi am luat cu mine şi o jachetă veche de schi, gândindu-mă că poate o să am puţin timp şi pentru a coborî pantele în timpul sărbătorilor.
Dar îndată ce am ajuns la Denver şi m-am aranjat într-un hotel atrăgător şi cu preţuri modice, două persoane pe care nu le mai întâlnisem niciodată – arogantul expert americano-japonez în securitatea calculatoarelor al cărui server îl hackuisem cu un an în urmă, iar celălalt un hacker de computere extraordinar de talentat din Israel – vor deveni actori în drama care avea să-mi schimbe tot restul vieţii.
Tocmai dădusem peste un israelian cunoscut sub iniţialele „JSZ”. Ne-am întâlnit prin IRC (Internet Relay Chat), un serviciu online pentru descoperirea şi discuţia cu străini care au aceleaşi pasiuni ca ale tale. În cazul nostru, interesul comun era hackuitul.
Într-un târziu, el mi-a spus că a compromis majoritatea firmelor de software (dacă nu chiar pe toate) care produceau sisteme de operare – Sun, Silicon Graphics, IBM, SCO şi aşa mai departe. Avea o copie a codului-sursă al tuturor, luate de pe sistemele pe care fuseseră dezvoltate. Era o realizare remarcabilă, foarte impresionantă.
Am început să ne împărtăşim unul altuia succesele în ale hackuitului şi informaţii despre noi fisuri, sisteme de backdoor, clonarea telefoanelor celulare, obţinerea de coduri-sursă şi compromiterea sistemelor analiştilor de vulnerabilităţi.
În timpul uneia dintre convorbirile noastre, m-a întrebat dacă am citit „lucrarea lui Morris privind simularea IP-ului”, care a pus în evidenţă o importantă vulnerabilitate în însuşi miezul protocolului internetului.
Robert T. Morris, copil-minune al computerelor, descoperise o fisură în securitate care putea fi exploatată printr-o tehnică numită „simularea adresei de IP (Internet Protocol)” pentru a ocoli procesul de autentificare care se bazează pe adresa IP a utilizatorului. La zece ani după publicarea lucrării lui Morris, un grup de hackeri, între care şi JSZ din Israel, a creat un utilitar pentru exploatarea ei. Dat fiind că la vremea aceea vulnerabilitatea era considerată mai mult o chestiune teoretică, nimeni nu se gândise serios la o contramăsură.
Pentru cititorii cu cunoştinţe avansate: această tehnică, numită „spoofing”, este un atac care se bazează pe o tehnologie mai veche, cunoscută sub numele de „servicii la distanţă”, care necesita reconfigurarea fiecărui sistem computerizat astfel încât să accepte conexiunile de încredere, ceea ce însemna că un utilizator putea să se logheze într-un cont – în funcţie de configuraţie – fără să mai furnizeze o parolă. Astfel, un administrator de sistem putea configura un server să aibă încredere în alte computere atunci când era vorba de autentificare. Un exemplu este atunci când un administrator de sistem gestionează mai multe maşini; atunci când el se loghează la alte maşini, acestea nu îi vor cere parole, pentru că au încredere în server.
Atacul prin „spoofing” începe printr-un prim pas: hackerul trebuie să caute alte sisteme care probabil sunt de încredere pentru contul root al serverului-ţintă. Aceasta înseamnă că un utilizator logat ca root pe un sistem de încredere va putea mai apoi accesa serverul-ţintă tot ca root, fără să furnizeze vreo parolă.
În acest caz, nu era prea dificil. Folosind comanda „finger”, atacatorul era în măsură să afle că victima sa era conectată la sistemul-ţintă de pe alt calculator, situat în aceeaşi reţea locală. Era foarte probabil ca aceste două sisteme să aibă încredere unul în altul pentru accesul ca utilizator root. Următorul pas este să stabileşti o conexiune la sistemul-ţintă prin falsificarea adresei IP a computerului în care ţinta are încredere.
Aici lucrurile încep să devină puţin cam complicate. Atunci când două sisteme stabilesc o conexiune iniţială prin protocolul TCP, între ele este un du-te-vino de pachete, care stabilesc o „sesiune”. Aceasta este numită „confirmare triplă” (three-way handshake). În timpul handshake-ului, sistemul-ţintă transmite spre maşina care iniţiază conexiunea un pachet, încercând să stabilească o comunicare. Dat fiind că serverul-ţintă crede că răspunde la cererea de conectare a unui sistem real, procesul de confirmare eşuează, pentru că sistemul-ţintă nu mai primeşte niciodată înapoi pachetul care ar trebui să încheie „confirmarea triplă”.
Aici intră în joc secvenţa de numere TCP. Protocolul foloseşte un şir de numere pentru a anunţa că a primit informaţiile. Dacă atacatorul va putea prezice secvenţa de numere din pachetul trimis de sistemul-ţintă către serverul real în timpul „handshake”-ului iniţial, atunci el va putea să completeze procesul, trimiţându-i un pachet de confirmare (cu secvenţa corectă de numere), stabilind o conexiune care pare a fi de la maşina autentificată.
Acest lucru stabileşte efectiv o sesiune, prin ghicirea secvenţei TCP de cifre. Deoarece sistemul-ţintă este păcălit, crezând că stabileşte o legătură cu maşina considerată sigură, el îi permite atacatorului să profite de relaţia de încredere dintre calculatoare, ocolind problema parolei şi obţinând acces total la maşină. În acest moment, atacatorul poate să editeze fişierul curent .rhosts de pe maşina-ţintă, permiţând oricui să acceseze contul root, fără parolă.
Pe scurt, atacul se bazează pe capacitatea atacatorului de a prezice numărul TCP din pachetul trimis de computerul-ţintă la momentul contactului iniţial. Dacă un atacator reuşeşte să prevadă corect secvenţa TCP folosită de ţintă în timpul procesului de „handshake”, atunci el poate să se dea drept computerul de încredere, ocolind toate mecanismele de securitate care se bazează pe IP-ul utilizatorului.
I-am spus lui JSZ că am citit articolul. „Dar este pur teoretic. Nimeni nu a făcut-o încă.”
„Ei bine, prietene, mandea şi alţii am făcut-o. Deja am creat utilitarul. Şi funcţionează – uluitor de bine!”, mi-a spus el, referindu-se la progrămelul pe care îl construiseră el şi câţiva asociaţi de-ai lui risipiţi prin Europa.
„Nu se poate! Glumeşti!”
„Nu glumesc.”
I-am cerut să-mi dea şi mie o copie, dacă se poate.
„Poate mai târziu”, mi-a spus el. Dar îl voi rula pentru tine de câte ori vei vrea. Dă-mi o ţintă.
I-am împărtăşit lui JSZ detaliile pătrunderii mele pe serverul lui Mark Lottor şi interesanta legătură dintre acesta şi Tsutomu Shimomura, pentru care avea chiar o poreclă. I-am arătat cum intrasem la Universitatea California din San Diego şi cum am băgat acolo un sniffer, care a surprins un anume „ariel” legându-se la serverul lui Shimomura, după care am putut să intru şi eu. „Shimmy şi-a dat seama cumva că unul din cei care au acces la computerul lui fusese hackuit şi m-a scos din sistem după câteva zile”, i-am spus.
Aveam câteva din vulnerabilităţile de securitate pe care Shimmy le raportase la Sun şi la DEC şi fusesem impresionat de talentul lui în a găsi „bug”-uri. Cu timpul, aveam să aflu că omul are un păr lins, negru şi care îi curgea pe umeri, preferă să se prezinte la slujbă în sandale şi cu nişte blugi rupţi în fund şi are o pasiune pentru schi fond. Era genul perfect al insului căruia i te-ai adresa cu un „hai, salut frăţică!”.
I-am spus lui JSZ că Shimmy ar putea avea codul-sursă al lui OKI sau poate detalii ale eforturilor lui de reconstituire a codului, ca să nu mai zic de noile „bug”-uri în securitate probabil descoperite de el.
În ziua de Crăciun a lui 1994, după ce am ieşit de la un film de la Tivoli Center din centrul Denverului, mi-am pornit telefonul celular şi l-am sunat pe JSZ, ca să-i urez, în glumă, un fericit Crăciun evreiesc.
„Mă bucur că ai sunat”, mi-a spus el. Cu o voce calmă, detaşată, mi-a spus: „Am un cadou de Crăciun pentru tine. Prietene, am instalat un backdoor”. Şi mi-a dat numărul portului pentru care instalase programul de acces secret. „După ce te conectezi, nu ai niciun prompt. Doar baţi «.shimmy» şi apoi ai acces complet.”
„Nu se poate!”
Pentru mine, ăsta era cel mai formidabil cadou de Crăciun. Îmi doream de multă vreme să intru din nou pe computerul lui Shimmy, ca să aflu ce mai pun la cale el şi Mark Lottor cu proiectul celular OKI şi voiam să ştiu dacă vreunul din ei pusese mâna pe codul-sursă. Oricum ar fi fost, urma să înhaţ orice informaţie puteam găsi pe serverul lui privind telefoanele celulare OKI 900 şi 1150.
În comunitatea hackerilor era un lucru cunoscut că Shimmy avea un comportament arogant – se considera mai deştept decât oricine i-ar fi stat prin preajmă. Am decis să-i mai tăiem din nas şi să-l aducem cu picioarele pe pământ – nu de alta, dar puteam.
Cât am condus maşina închiriată până la hotelul meu, mi s-a părut cea mai lungă perioadă de douăzeci de minute din viaţa mea. Dar nu am îndrăznit să rulez mai rapid decât fluxul traficului. Dacă mă trăgea pe dreapta vreun poliţist şi găsea ceva dubios în permisul meu de conducere, ajungeam în faţa unui calculator mult mai târziu decât cele douăzeci de minute. Răbdare, răbdare, răbdare.
Cum am intrat în camera mea de hotel, am pornit laptopul şi am intrat prin dial-up pe Colorado Supernet, mascându-mi ca de obicei apelurile folosind telefonul celular clonat după cel al unui ins din Denver ales la întâmplare.
Am pornit un program de comunicaţie prin reţea care făcea legătura direct la computerul lui JSZ din Israel, ca să putem comunica într-o fereastră, în timp ce în alta îl hackuiam pe Shimmy. M-am conectat la computerul lui Shimmy folosind backdoor-ul lui JSZ. Bingo! Eram logat, cu privilegii de root.
Incredibil! Ce senzaţie! Probabil aşa se simte un puşti care a ajuns la ultimul nivel al unui joc video la care se chinuise luni întregi. Sau ca atunci când urci pe vârful Everest. Eram entuziasmat. L-am felicitat pe JSZ pentru că făcuse o treabă pe cinste.
Pentru început, eu şi JSZ am căutat în sistemul lui Shimmy cea mai preţioasă informaţie: tot ce se leagă de „bug”-uri, e-mailul lui şi orice fişiere care conţineau în nume secvenţa „oki”. Avea o grămadă de fişiere. Pe când eu arhivam şi comprimam tot ce se potrivea cu criteriile mele, JSZ căuta orice altceva ar fi putut fi util. Amândoi ne temeam că Shimmy o să se logheze ca să-şi vadă e-mailurile cu felicitările de Crăciun şi o să descopere că e hackuit. Voiam să scoatem marfa de acolo înainte să se prindă. Îmi era frică să nu scoată pur şi simplu cablul de reţea din mufă, cum făcuse Lottor cu câteva luni mai înainte.
Lucram rapid, ca să scoatem informaţia de pe maşina lui Shimmy. Pluteam pe o mare de endorfine.
După ce am căutat, am arhivat şi am comprimat, am avut nevoie de un loc în care să stochez codul în siguranţă. Nicio problemă: aveam deja acces de root pe toate serverele de la Whole Earth ’Lectronic Link, cunoscut sub numele abreviat de „the Well”. Firma era înfiinţată de Steward Brand şi un partener al lui şi avea între utilizatori toată crema internetului, dar nu mă interesa statutul de celebritate. Unica mea grijă era să am destul spaţiu pe disc şi să pot ascunde fişierele suficient de bine, astfel încât administratorii de sistem să nu le descopere. De fapt, petrecusem mai multă vreme în acea reţea. La câteva zile după ce a apărut în New York Times acel articol de primă pagină despre mine, am descoperit că autorul, John Markoff, are un cont la firma „the Well”. Ţintă uşoară: din ziua aceea i-am citit toate e-mailurile, căutând orice era privitor la mine.
După ce am terminat mutarea informaţiei specifice căutate, am decis să luăm tot ce este conţinut în directorul „home” al lui Shimmy. JSZ a arhivat şi comprimat întregul director într-un fişier unic, care ajungea la 140 de megabytes.
Am stat cu inima în gât până când fişierul s-a transferat cu succes şi apoi ne-am felicitat prin programul de chat.
JSZ a mutat o copie a fişierului pe un sistem din Europa, pentru cazul în care vreun administrator de sistem de la „the Well” va descoperi un fişier uriaş şi îl va şterge. De asemenea, şi eu am copiat fişierul şi în alte câteva locuri.
JSZ a insistat că descoperirea acelui backdoor improvizat pe care îl instalase el pentru uzul meu ar putea fi o sarcină uşoară pentru unul ca Shimmy. Eram de acord. Era prea uşor de găsit. I-am sugerat să purcedem la instalarea unui backdoor mai sofisticat, în sistemul de operare ca atare.
„O să-l găsească”, m-a contracarat JSZ.
„Dar ne putem întoarce oricând pe aceeaşi cale”, am spus eu.
Am ieşit din sistem, lăsându-l pe JSZ să facă curăţenie, adică să înlăture backdoor-ul şi să şteargă din jurnale toată activitatea noastră.
A fost un moment de serioase palpitaţii. Intrasem în serverul expertului în securitate pentru a doua oară pe parcursul unui an şi ceva. Eu şi JSZ am decis să examinăm independent fişierele lui Shimmy şi apoi să ne raportăm unul altuia ce a descoperit fiecare.
Dar, oricât de mare grijă am avut să ne ştergem urmele, am considerat că Shimmy se va izbi aproape sigur de vreun detaliu pe care noi probabil l-am omis.
Tot parcurgând e-mailurile mai vechi ale lui Shimmy, am dat de nişte mesaje dintre el şi duşmanul meu, scribălăul pe teme de tehnologie de la New York Times John Markoff. Cei doi aveau un schimb de e-mailuri care data încă de la începutul lui 1991, pe tema mea – comunicându-şi informaţii despre intenţiile mele. De exemplu, dintr-un schimb de e-mailuri de la începutul lui 1992 reieşea cum Shimmy făcuse eforturi serioase, cercetând online licenţa mea de radioamator, cu indicativul N6NHG. El l-a întrebat prin e-mail pe Markoff dacă o persoană condamnată pentru infracţiuni federale mai are dreptul la o licenţă de radioamator emisă de autoritatea în comunicaţii.
Încă era un mister pentru mine de ce aceşti doi inşi erau atât de interesaţi de persoana mea. Nu-l întâlnisem niciodată pe Shimmy, nu interacţionasem de nicio culoare cu el, exceptând recentele mele atacuri asupra sistemului lui.
Atunci de ce se interesau atâta de ce aveam de gând să fac?
Am avut dreptate într-o privinţă: Shimmy şi-a dat seama foarte curând de pătrunderea noastră. Şi eu, şi JSZ eram prea concentraţi în copierea fişierelor lui şi am omis faptul că el rulează „tcpdump”, un utilitar de supraveghere a reţelei, care captura tot traficul din reţea. De asemenea, nu am remarcat nici faptul că un program numit „cron” trimite periodic e-mailuri conţinând evidenţele de sistem lui Andrew Gross, asistentul lui Shimmy. Gross şi-a dat seama că jurnalele deveniseră mai mici şi l-a anunţat pe Shimmy că se întâmplă ceva suspect. Îndată ce a văzut jurnalele, Shimmy şi-a dat seama că a fost hackuit.
Nu că ar fi avut vreo importanţă. Aveam fişierele lui şi urma să petrecem zile şi săptămâni examinându-le cu atenţie.
De ce rula Shimmy un utilitar de monitorizare a reţelei? Paranoia? Sau maşina aceea era doar o momeală? Fiind atât de faimos în lumea securităţii pe computere, ştia că e doar o chestiune de timp până când cineva o să-i dea peste nas cu un atac nou şi inteligent. Mi-am închipuit că probabil este o maşină-momeală, lăsată accesibilă astfel încât să poată monitoriza toate atacurile din afară şi să analizeze metodele de penetrare. Dar în acest caz, de ce şi-ar fi lăsat toate fişierele pe maşina cu pricina, inclusiv un utilitar de înregistrare a întregii activităţi de reţea numit „bpf” – de la Berkeley Packet Filter – pe care îl crease el pentru Forţele Aeriene ale Statelor Unite şi care se putea insera într-un sistem de operare fără a fi necesară o reiniţializare (reboot)?
Poate că pur şi simplu şi-a subestimat adversarii şi a presupus că nimeni n-o să pătrundă acolo. Încă este un mister pentru mine.
Mulţi mi-au atribuit mie onoarea descoperirii programului folosit pentru hackuitul serverelor lui Shimmy, folosind atacul prin simularea adresei de IP (spoofing). Aş fi mândru să fiu unul dintre cei care au reuşit acest tur de forţă formidabil şi cu bucurie mi-aş recunoaşte fapta. Dar meritul nu-mi aparţine. Îi aparţine acelui individ deosebit de inteligent JSZ, care a participat la crearea utilitarului şi care l-a folosit pentru intrarea noastră din ziua de Crăciun pe serverul lui Shimmy.
Pentru mine, vacanţa de la Denver a fost foarte plăcută, în special pentru că am putut intra pe sistemul lui Shimmy. Dar vacanţa s-a terminat. Trebuia să părăsesc acel oraş minunat şi să pornesc spre următoarea destinaţie.
Încă eram entuziasmat pentru succesul cu hackuirea (şi totodată „hăcuirea”) lui Shimmy. Dar aveam să-mi regret amarnic fapta. Acele câteva ore vor ajunge să-mi decidă soarta. Am călcat pe coadă un vânător de hackeri, care nu se va opri de la nimic pentru a egala scorul.
Dostları ilə paylaş: |