În contextul recentei apariții a malware-ului Flame, problema securității sistemelor informatice devine din nou acută. Iată detalii interesante despre precedentul atac, numit Stuxnet - care a fost descoperit în iunie 2010. Atât Flame, cât și Stuxnet sunt programe foarte complexe, care au fost create de către agenții guvernamentale și sunt îndreptate împotriva instalațiilor nucleare ale unor țări din Orientul Mijlociu. De aceea, ambele au primit clasificarea ca operațiuni de spionaj și sabotaj cibernetic, deci cu scop militar.
Textul ce urmează reprezintă traducerea în românește a articolului lui Kim Zetter, "How Digital Detectives Deciphered Stuxnet, the Most Menacing Malware in History", apărut în revista Wired. Traducerea mi-a fost pusă la dispoziție, cu amabilitate, de dl. Dan Băcleșanu.
Cum au descifrat detectivii informatici Stuxnet, cel mai amenințător malware din istorie
În ianuarie 2010, când
anchetatorii Agenției Internaționale pentru Energie Atomică tocmai
terminaseră o inspecție la uzina de îmbogățire a uraniului, la marginea localității Natanz din centrul Iranului, și-au
dat seama că ceva era în neregulă în „camera
cascadelor”, unde mii de centrifuge lucrau la îmbogățirea
uraniului. Tehnicienii de la Natanz, în halate de laborator albe,
mănuși și papuci albaștri se agitau încolo și încoace pentru
a „curăța” camera cascadelor și trăgând afară, cu greutate,
centrifugele, una câte una - fiecare închisă într-o carcasă argintie,
strălucitoare. Lucrătorii din fabrică aliniau, conform
ordinelor primite, centrifugele dezafectate sau avariate pentru a fi
verificate de controlorii AIEA, spre a se asigura că în niciuna nu se folosiseră materiale radioactive de contrabandă, înainte de a le scoate din camere. Tehnicienii fuseseră nevoiți să facă
asta timp de mai mult de o lună. În mod normal, Iranul înlocuiește
până la 10% din centrifugele sale pe durata unui an, din cauza unor
defecțiuni ale materialelor și altor probleme. Având aproximativ 8.700
centrifuge instalate în acel moment la Natanz, ar fi fost normal să se înlocuiască aproximativ 800 pe parcursul anului. Surprinzător,
atunci când AIEA revăzuse, mai târziu, imaginile de la camerele de
supraveghere instalate în camera cascadelor, pentru a
monitoriza programul iranian de îmbogățire a uraniului, ei au fost uimiți de
numărul mare de înlocuiri. Muncitorii schimbaseră unități într-un
ritm incredibil - estimări ulterioare au indicat între 1.000 și
2.000 centrifuge schimbate în decurs de câteva luni. Întrebarea a
fost, de ce? Iranul nu era obligat să dezvăluie motivul înlocuirii
centrifugelor și, oficial, inspectorii nu aveau dreptul să solicite
o explicație. Mandatul lor viza doar monitorizarea a ceea ce se întâmplase cu materialele nucleare din fabrică și nu ținerea
evidenței avariilor echipamentelor. Dar era clar că ceva a
deteriorat aceste centrifuge. Ceea ce nu știau inspectorii era că
răspunsul pe care îl căutau se afla în jurul lor, ascuns între
spațiul de pe discuri și memoria calculatoarelor de la Natanz. Cu
câteva luni înainte, în iunie 2009, cineva dezlănțuise în
tăcere un „vierme” sofisticat și distructiv care își croise drum prin calculatoarele în Iran, cu un singur scop: să saboteze programul național de îmbogățire a uraniului și să prevină ca președintele Mahmoud Ahmadinejad să finalizeze programul
de construire a unei arme nucleare. Inspectorilor le-a trebuit aproape un an ca să înțeleagă acest lucru. Răspunsul a venit doar
după ce zeci de cercetători în securitatea calculatoarelor, din toată
lumea, și-au petrecut luni pentru a demonta ceea ce urma să fie denumit malware-ul cel mai complex scris vreodată - o piesă software care va intra în istorie ca prima
„armă cibernetică” reală din lume. În 17 iunie 2010, Serghei Ulasen
stătea în biroul său din Belarus și se uita peste mesajele e-mail, când un
raport i-a atras atenția. Un computer care aparținea unui client în
Iran a fusese prins într-o buclă de reboot - se oprea și repornea în
mod repetat, în ciuda eforturilor depuse de către operatori pentru
a prelua controlul. Se părea că echipamentul fusese infectat cu un
virus. Ulasen conducea divizia antivirus a unei mici firme de
securitate informatică din Minsk, numită VirusBlokAda. Privită, la
început, ca un domeniu de nișă în informatică, securitatea
calculatoarelor s-a dezvoltat, în ultimul deceniu, ca o industrie de miliarde de
dolari, fiind nevoită să țină pasul cu explozia
atacurilor sofisticate ale crackerilor și cu evoluția virușilor,
troienilor și programelor spyware. Cei mai buni specialiștii în
securitate, cum ar fi Bruce Schneier, Dan Kaminsky și Charlie
Miller, sunt considerați adevărate „vedete rock” printre
colegii lor, iar companii de top precum Symantec, McAfee și
Kaspersky au devenit nume consacrate, deoarece au în grijă totul,
de la laptopuri vechi la rețele militare dintre cele mai sofisticate. Cu toate acestea, VirusBlokAda nu era un star rock, nici un nume
consacrat. Era o companie obscură, de care, chiar în industria de
securitate, puțini auziseră. Dar asta era pe cale să se schimbe în
scurt timp. Echipa de cercetare Ulasen a cercetat virusul instalat în
calculatorul clientului lor și și-a dat seama că a fost folosit un
„zero-day” menit să se răspândească. „Zero-day” e una din
cele mai puternice arme pentru cracking din lume; în software-ul mașinii, acesta exploatează
vulnerabilități care sunt încă
necunoscute de către producătorii de software sau de vânzătorii de
antiviruși. Sunt, de asemenea, extrem de rare, fiindcă este nevoie
de îndemânare și stăruință considerabile pentru a
descoperi astfel de vulnerabilități și a le folosi. Din mai
mult de 12.000.000 de cazuri de malware, pe care cercetătorii
antivirus le descoperă în fiecare an, nu mai mult de o duzină
utilizează o soluție „zero-day”. În acest caz, soluția a
permis virusului să se răspândească „inteligent” de la un
calculator la altul, prin intermediul stick-urilor USB infectate.
Vulnerabilitatea fusese găzduită în folderele LNK din Windows
Explorer, o componentă fundamentală a Microsoft Windows. Când un
stick USB infectat este introdus în calculator, Explorer–ul
scanează automat conținutul stick-ului, iar virusul „se trezește”
și descarcă, în mod clandestin, un fișier mare, parțial criptat,
exact ca un avion militar care debarcă soldați camuflați pe
teritoriul-țintă. Fusese o soluție ingenioasă care, retrospectiv, părea
evidentă, fiindcă ataca o astfel de funcție
omniprezentă. Fusese, de asemenea, una - cercetătorii urmau să
afle, în curând, cu surprindere - care a mai fusese utilizată în
trecut. VirusBlokAda a contactat Microsoft și a raportat
vulnerabilitatea; pe 12 iulie, când gigantul software a pregătit cu
o rezolvare (patch), VirusBlokAda a făcut publică descoperirea
într-un post pe un forum de securitate. Trei zile mai târziu, Brian
Krebs, blogger pe teme se securitate a preluat povestea și
imediat companiile antivirus din întreaga lume s-au adunat pentru a
cerceta mostre din malware-ul numit „Stuxnet” de către
Microsoft - de la o combinație de nume de fișiere (stub. și
MrxNet.sys.) găsite în cod. Pe măsura ce industria de securitate
informatică se agita să decripteze și să demonteze Stuxnet, mai
multe rezultate au ieșit în evidență. S-a dovedit că acest cod a
fost lansat în libertate cu mai mult de un an înainte, în iunie
2009, iar creatorul său misterios l-a actualizat și perfecționat
de-a lungul timpului, lansând trei versiuni diferite. În special,
unul dintre fișierele de driver ale virusului a folosit un
certificat cu semnătură valabilă, furată de la RealTek
Semiconductor, un producător de hardware din Taiwan, în scopul de a
păcăli sistemele și a le face să creadă că malware-ul este, de
fapt, un program autentic, realizat chiar de Realtek. Autoritățile
Internet au revocat rapid certificatul. Dar sa- descoperit că un alt
driver Stuxnet utiliza alt certificat, de această dată furat de la
JMicron Technology, un producător de circuite integrate din Taiwan,
care avea - coincidență sau nu - sediul în același parc
tehnologic ca și RealTek. Au reușit atacatorii să pătrundă fizic
în companie pentru a obține certificatele? Sau au reușit, de la
distanță, să pătrundă în rețea pentru a fura cheile de
semnături ale certificatelor digitale al companiei? Nimeni nu știa.
„Ne confruntăm foarte rar cu operațiuni așa de profesionist
realizate”, a scris ESET, o firma de securitate care a găsit unul
dintre certificate, pe blog-ul său. „Acest lucru demonstrează ca
atacatorii dispun de resurse importante”. Pe de altă parte,
Stuxnet părea un virus obișnuit și fără mare ambiție în
obiectivele sale. Experții au stabilit că virusul a fost conceput
pentru ataca software-ul Simatic STEP7 WinCC, un sistem de control
industrial realizat în cadrul conglomeratului german Siemens, care a
fost folosit în programele de control pentru acționarea de motoare,
supape și switch-uri utilizate în tot felul de instalații, de la
fabrici de produse alimentare și linii de asamblare de automobile la
conductele de gaz și instalații de tratare a apei. Deși aceasta a
fost o știre nouă, în sine - sistemele de control nu reprezintă o
țintă pentru hacker-ul tradițional, pentru că nu rezultă un
câștig financiar evident - ceea ce a făcut Stuxnet la sistemele
Simatic nu era o noutate. Părea să fie, pur și simplu, un furt de
date de configurare și de design de la sistemele de antrenare,
probabil pentru a permite unui concurent să copieze modul de
producție al fabricii. Stuxnet părea doar un alt caz de spionaj
industrial. Companiile antivirus au adăugat semnături pentru
diferitele versiuni ale malware-ului spre a fi utilizate de propriile
motoare de detectare, după care cei mai mulți dintre ei s-au
orientat către alte cercetări. Povestea Stuxnet s-ar fi putut
încheia aici. Dar câțiva nu au fost suficient de mulțumiți de
rezultate, pentru a abandona cercetările. Cei din birourile Symantec
din Europa și Statele Unite au fost printre cei care au analizat
codul în luna iulie și au creat semnături pentru clienți. Dar,
odată ce au făcut acest lucru, malware-ul a trecut la Liam OMurchu,
la compania Culver City, biroul din California. OMurchu este de un
irlandez de 33 de ani, snowboarder pasionat, cu un accent liric în
voce și cu o claie de păr castaniu, sculptată pe verticală în
fața. Ca manager de operațiuni pentru Symantec Security Response,
treaba lui era să revizuiască amenințările de tip malware
semnificative pentru a determina dacă acestea ar trebui să fie
analizate în profunzime. Din peste un milion de fișiere malware, pe
care Symantec și alte firme antivirus le primesc lunar, majoritatea
sunt variații ale virușilor și viermi deja cunoscuți.
Informațiile sunt prelucrate în mod automat, fără intervenție
umană. Algoritmii caută prin fișiere după șiruri de caractere,
indicatori de date sau de comportament, pentru a identifica
malware-ul, apoi produc și furnizează semnături pentru scanerele
antivirus de pe mașinile clienților. Malware-ul de tip „zero-day”
este, de obicei, mai special și, prin urmare, este examinat manual.
OMurchu a repartizat Stuxnet unui inginer fără experiență în
malware de tip „zero-day”, gândind că ar fi pentru acesta un
bun prilej de a se familiariza cu el. Dar, pe măsură ce, în
paralel, se ocupa el însuși de acest cod, și-a dat seama că era
mult mai complex decât ar fi crezut. Au fost descoperite mai multe
straturi de mascare ascunse în interiorul zero-day-ului, făcând
necesară multă muncă pentru a fi descifrate. În plus, și
dimensiunea malware-ului era uriașă – 500 kbytes, spre deosebire
de cei 10-15 kbytes cât măsoară, de obicei. În general, acest tip
de malware, de dimensiuni mari, conține un fișier-imagine de tip
space-hogging, cum ar fi o pagină falsă de online banking, care
apare pe calculatoarele infectate pentru a păcăli utilizatorii să
dezvăluie datele lor de autentificare bancară. Dar în Stuxnet nu
exista nici o imagine, și nici volume inutile. Codul părea a fi o
orchestrație densă și eficientă de date și comenzi. Interesul
lui OMurchu a fost imediat stârnit. Prima sa întâlnire cu un
malware a avut loc în 1996, când un student de la Colegiul din
Dublin „meșterise” un virus care viza rețeaua universității.
La idele lui martie, accesul la sute de terminale din laboratoarele
de informatică ale școlii a fost blocat până când elevii au
răspuns la zece întrebări ce apăreau intermitent pe ecranele lor.
Cei mai multi au fost deranjați, dar OMurchu a fost fascinat de cod
și a început să-l examineze pentru a vedea cum funcționează.
Asta făcea parte din ADN-ul său, să dezmembreze lucrurile. Copil
fiind, el fusese genul care, în loc să se joace cu o mașinuță, o
desfăcea pentru a vedea cum funcționează cutia de viteze. Această
curiozitate l-a împins către domeniul securității informatice.
După absolvirea colegiului, OMurchu a lucrat pentru scurt timp ca
tester de penetrare pentru un producător de „chioșcuri Internet”,
având ca sarcină penetrarea firewall-ului, pentru a vedea dacă ar
putea obține acces gratuit la internet. Compania l-a angajat doar
pentru a rula câteva teste, dar l-a menținut pentru alte trei luni,
deoarece el găsise diverse moduri de a sparge sistemul. În 2002, el
a găsit un loc de muncă la o firmă de antispam, care a fost
„înghițită” de către Symantec curând după aceea. OMurchu,
în cele din urmă, a fost transferat, în cadrul companiei, la
biroul gigant din Culver City, părăsind Dublinul pentru California
de Sud. Când ai văzut așa de multi viruși și viermi cum a văzut
OMurchu, e suficient să arunci o privire la un malware și să-ți
dai seama instantaneu cu ce ai de a face - acesta este un „keystroke
logger”, celălalt este un „banking trojan” - și dacă a fost
făcut în grabă, de mântuială, sau, dimpotrivă, meșteșugit cu
atenție, organizat. Stuxnet făcea parte din aceasta ultimă
categorie. El conținea mai multe componente, fiecare din ele
depozitate în locații diferite, pentru a le face mai ușor
accesibile și pentru a modifica comportamentul malware-ului după
cum era necesar. Ceea ce majoritatea analiștilor a remarcat a fost
modul în care, totuși, malware-ul ascunde aceste funcții. În mod
normal, funcțiile Windows sunt descărcate, după nevoi, dintr-un
fișier DLL stocat pe harddisc. Procedând la fel, malware-ul
ușurează sarcina software-ului antivirus. Spre deosebire de
acestea, Stuxnet stoca fișierele „otrăvite” de tip DLL numai în
memoria operativă, ca un fel de fișier virtual, cu un nume special
pregătit. Acesta reprograma apoi API-ului Windows - interfața intre
sistemul de operare și programele care rulează deasupra acestuia -
astfel încât, de fiecare dată când un program încerca să ruleze
o funcție din biblioteca cu acel nume, aceasta era încărcată din
memorie în loc de hard disk. În esență, Stuxnet a reprezentat un
tip cu totul nou de fișier fantomă, care nu este stocat pe hard
disc, și, prin urmare, este aproape imposibil de depistat. OMurchu
nu mai văzuse niciodată această tehnică, în toți anii săi de
analiză a malware-urilor. „Chiar și amenințările complexe pe
care le vedem, amenințările avansate cu care avem de-a face, nu se
comportă așa”, a menționat el în timpul unui interviu acordat
recent la sediul Symantec. Simptomele indicau că Stuxnet era extrem
de profesionist, și OMurchu nu examinase decât 5k din cei 500K ai
codului. Devenea clar că era necesară o întreagă echipă pentru a
rezolva problema. Întrebarea era: se justifica efortul? Nimeni n-ar
fi putut învinovăți Symantec pentru abandonarea Stuxnet-ului în
această fază, pentru a se ocupa de alte chestiuni. Sarcina
primordială a unei firme antivirus este să detecteze/oprească
infectarea înainte ca aceasta să apară și să curețe sistemele
deja infectate de fișiere malware. Cum acționează malware-ul,
odată ce s-a instalat pe un calculator, este mai puțin important.
Dar Symantec s-a simțit obligat sa rezolve aceasta dilemă, Stuxnet,
pentru clienții săi. Mai mult decât atât, codul părea mult prea
complex chiar și pentru o simplă operațiune de spionaj. A fost un
imens val de adrenalină revărsată pentru un puzzle pe care OMurchu
a dorit să-l rezolve. „În treaba asta, totul îți face părul
măciucă în cap, trebuie să ne uităm mai atent la el”, și-a
spus. Când OMurchu a terminat evaluarea inițială a codului, era
sfârșitul zilei de vineri, așa că a trimis un raport actualizat
echipei de cercetare Symantec din Tokyo. Symantec are laboratoare în
Europa, Statele Unite și Japonia, astfel încât cercetători din
fusuri orare diferite sunt întotdeauna disponibili pentru a
interveni în cazul unor amenințări importante, ca o echipă de
luptători dedicați unei cauze - în timp ce soarele apune pentru un
birou, el răsare deasupra altuia. Echipa de la Tokyo a petrecut
weekend-ul analizând componentele Stuxnet-ului, astfel încât a
putut da o mână de ajutor privind natura problemei. Luni, OMurchu a
reluat activitatea din punctul în care ajunsese, având noi
ajutoare, pe Eric Chien, director tehnic al Symantec Security
Response și pe Falliere Nicolas, un inginer senior de software și
analist de coduri în biroul Symantec din Paris. Ei au stabilit ca de
fiecare data când Stuxnet infecta un sistem, el transmitea un mesaj
unuia dintre cele două domenii găzduite pe servere din Malaezia și
Danemarca – http://www.mypremierfutbol.com
și http://www.todaysfutbol.com
- și raporta informații despre mașinile infectate. Mesajele
conțineau: adresele IP interne și externe ale mașinilor, numele
computerului, sistemul de operare, versiunea acestuia și răspunsul
dacă software-ul Siemens Simatic STEP7 WinCC, cunoscut mai simplu ca
STEP7, fusese instalat pe mașina infectată. Serverele de comandă
și control permiteau atacatorilor actualizarea Stuxnet pe aceste
mașini infectate, adăugând noi funcționalități sau chiar mai
multe fișiere malware pe sisteme. Furnizorii DNS pentru cele două
domenii luaseră deja măsuri de limitare a traficului pentru a
preveni accesul către atacatori. Symantec a avut o idee mai bună.
Compania a contactat furnizorii și i-a convins să reruteze orice
tip de trafic către o „capcană” special creată - în acest
caz, un calculator dedicat primirii de trafic ostil - care era
controlată de Symantec. De marți dimineața, Symantec a început să
obțină rapoarte de la mașinile pe care Stuxnet le infectase.
Compania a partajat datele obținute cu alte firme de securitate. În
decurs de o săptămână de la instituirea „capcanei” au fost
primite aproximativ 38.000 de rapoarte, de la mașini infectate din
zeci de țări. Nu după mult timp, numărul acestora a depășit
100.000. Stuxnet a continuat să se răspândească rapid, în ciuda
semnăturilor distribuite de către firmele de antivirus pentru a
opri epidemia. Când Chien și OMurchu au cartografiat amplasarea
geografică a infecțiilor, a rezultat un model ciudat. Din cele
38.000 infecții inițiale, aproximativ 22.000 au fost localizate în
Iran. Indonezia a fost a doua, la distanță, cu aproximativ 6.700
infecții, urmată de India, cu aproximativ 3.700 de infecții.
Statele Unite aveau mai puțin de 400. Doar un număr mic de mașini
au avut instalat software-ul Siemens Step 7 - doar 217 mașini
localizate în Iran și 16 în Statele Unite ale Americii. Numărul
de infectări și localizarea era în afara modelelor anterioare de
infecții la nivel mondial - cum ar fi ceea care a avut loc în cazul
prolificului „vierme” Conficker - unde Iranul nu fusese niciodată
plasat în primele locuri ale statisticilor. Coreea de Sud și
Statele Unite fuseseră întotdeauna în partea de sus a topurilor de
focare masive, ceea ce nu era o surpriză, deoarece ele au cel mai
mare număr de utilizatori de Internet. Dar chiar și în
statisticile pentru Orientul Mijlociu sau Asia Centrală, Iranul nu
figura cu numere mari. Era clar că Republica Islamică Iran fusese
în centrul intenției de atac a Stuxnet. Gradul de sofisticare al
codului, plus certificatele frauduloase utilizate, iar acum Iranul
folosit ca țintă, indicau ca Stuxnet ar putea fi produsul
serviciului secret informatic al unui guvern - poate chiar cel al
Statelor Unite. În acest moment, Symantec a făcut o mișcare
îndrăzneață. Prin interceptarea datelor pe care atacatorii se
așteptau să le primească, cercetătorii au realizat ca riscă să
lezeze o operațiune sub acoperire a guvernului SUA. Întrebat recent
dacă erau preocupați de acest lucru, Chien a răspuns, „Pentru
noi, nu există băieți buni sau răi”, apoi, după o pauză, și-a
nuanțat poziția „Ei bine, băieții răi sunt persoane care scriu
coduri „otrăvite”, ce infectează sistemele și pot provoca
consecințe dorite (intenționate) sau nedorite”. Dacă „băiatul
rău” a fost Statele Unite sau de unul dintre aliații săi, atacul
a provocat daune colaterale la mii de sisteme, iar Symantec nu a
simțit nici o datorie patriotică de a-și „tempera”
activitatea. „Noi nu suntem datori niciunei națiuni”, a spus
Chien. „Suntem o companie multinațională privată, care-și
protejează clienții”. Dar timpul trecea. Toți cercetătorii
știau, în acest moment, că Stuxnet era prezent în mai mult de
100.000 de calculatoare, dar nu aveau nici o idee asupra efectelor
induse acestora. „Pentru o lungă perioadă de timp ne-am gândit
că dacă s-a răspândit așa de mult în Iran, motivul ar fi că ei
nu au softuri de securitate actualizate. În cazul în care virusul
s-ar extinde în Statele Unite, unele fabrici de tratare a apei sau
sisteme de control al traficului sau orice sisteme de acest tip ar
putea fi afectate”, își amintea recent Chien. „Deci,
într-adevăr, am încercat din toate puterile să identificăm cum
anume afectează acest virus sistemele” Era într-o noapte de
vineri, la sfârșitul lunii august, când OMurchu își sărbătorea
ziua de naștere, a 33-a, la un bar în aer liber, la ultimul etaj al
Hotelului Erwin, cu vedere la Oceanul Pacific - în Veneția,
California. El comandase bere și cocktailuri și petrecea cu familia
și prietenii. În apropiere, o echipa de show-uri de Reality TV
tocmai filma un cuplu care trecea prin fazele stângace ale unei
întâlniri amoroase. Grupul lui OMurchu era acolo de trei ore când
apăru, în jurul orei 21, și Chien. Mintea lui nu era la petrecere,
el avea ceva să-i arate prietenului său, dar era reticent în a-l
readuce la muncă. „Îți voi arăta ceva, dar apoi nu vom mai
vorbi despre asta tot restului nopții”, i-a spus el lui OMurchu. A
scos BlackBerry-ul și i-a arătat un e-mail care trecuse de lista de
securitate (spam). În e-mail, un alt cercetător de securitate
sugera că ar exista mai multe coduri zero-day ascunse în Stuxnet.
OMurchu l-a privit pe Chien. Ei descompuneau Stuxnet de mai mult de o
lună și văzuseră indicii ale altor coduri ascunse, dar
semnificația le scăpase. E-mailul nu dădea detalii, dar sugestia
simplă că ar putea fi mai mult de un zero-day a fost suficientă
pentru a declanșa spiritul competitiv al lui OMurchu. „Asta e”,
a spus el. „De acum, nu mai beau nimic”. În dimineața
următoare, sâmbătă devreme, el se afla din nou la birou, „făcând
săpături” la Stuxnet, concentrându-se pe aspectele pe care
Stuxnet le utiliza pentru a se răspândi, testând și documentând
descoperirile făcute. El își încheie lucrul după-amiază, când
trecu observațiile sale către Chien, care continuă să lucreze la
ele pânâ seara. Până la sfârșitul week-end-ului, fură uimiți
să descopere încă trei zero-days. În plus față de
vulnerabilitatea LNK deja găsită, alt cod Stuxnet exploata o
vulnerabilitate a buclelor de imprimare în computerele Windows,
pentru a se răspândi și în computerele care utilizau o imprimantă
partajată. Un al treilea și al patrulea cod de tip Stuxnet exploata
vulnerabilități din fișierele Windows pentru tastatură și Task
Scheduler și acorda privilegii sporite atacatorilor, mergând până
la a le oferi controlul total asupra calculatorului. În plus,
Stuxnet exploata o parolă statică pe care Siemens o codificase
adânc în software-ul său STEP7. Stuxnet folosise parola pentru a
avea acces și a infecta orice server care găzduia o bază de date
care utiliza STEP7, iar, de aici, pentru a se răspândi pe alte
calculatoare conectate la server. Era evidentă intenția
atacatorilor privind răspândirea malware-ului lor, dar totuși
într-un mod ciudat de limitat. Spre deosebire de majoritatea
malware-ului, care folosește e-mail-ul sau site-uri rău-intenționate
pentru a infecta un mare număr de mașini dintr-o dată, nici unul
dintre codurile Stuxnet nu utiliza răspândirea prin Internet; toate
infecțiile aveau loc prin intermediul rețelelor locale. În
principal, Stuxnet se răspândea de la o unitate la alta, prin
intermediul unui USB infectat, purtat în buzunarul cuiva până la
locul viitoarei infecții. Se pare că atacatorii avuseseră în
vedere sisteme-țintă despre care știau că nu sunt conectate la
Internet. Și, dat fiind că utilizaseră patru coduri zero-days
pentru a face acest lucru, obiectivele trebuie să fi fost de mare
valoare. Era o metodă destul de murdară și imprecisă de atac –
ca și cum una din soțiile lui Osama bin Laden ar fi fost infectată
cu un virus rar, sperând că o să-l transmită liderului Al-Quaeda.
Ar fi existat o mare probabilitate ca ea să infecteze și alte
persoane în afara țintei, crescând astfel șansa ca intenția să
fie descoperită. Acest lucru este exact ceea ce s-a întâmplat în
cazul Stuxnet. Cercetătorii Symantec au descoperit că fiecare
mostră analizată a „viermelui” conținea numele domeniului și
marca temporală a sistemului infectat. Acest lucru le-a permis să
reconstituie fiecare infecție, mergând înapoi către
computerul-sursă, de la care începuse totul. Ei au descoperit că
atacatorii concentraseră atacul lor asupra calculatoarelor a cinci
organizații din Iran, despre care credeau că ar fi o poartă de
intrare către ținta căutată. Cele cinci organizații fuseseră
atacate în mod repetat, în lunile iunie și iulie 2009 și din nou,
în martie, aprilie și mai 2010. Dar, datorită caracterului de tip
zero-day inclus în el, Stuxnet s-a extins dincolo de aceste
organizații, lăsând o constelație de infecții în urmă.
Symantec a raportat către Microsoft și către alte firme de
antiviruși despre elementele suplimentare de tip zero-day găsite în
Stuxnet. Acestea au căutat în arhivele lor de malware pentru a
vedea dacă ceva similar cu faptele semnalate mai apăruse și
înainte. Remarcabil, s-a descoperit că aceeași vulnerabilitate a
LNK din Windows Explorer fusese exploatată în noiembrie 2008.
Acesta vulnerabilitate a fost folosită pentru a răspândi o
varianta a Zlob, o familie de troieni care instala adware și
backdoors malware pe computerele vizate. Varianta Zlob fusese
interceptată de către firmele de antiviruși, prin intermediul
sistemelor automate de raportare a programelor malware de pe
mașinile-client, dar elementele de tip zero-day trecuseră
neobservate în momentul respectiv. După această apariție
inaugurală, amenințarea dispăruse, până la a renaște în
Stuxnet. La fel, amenințarea pentru vulnerabilitatea buclei de
imprimare, fusese semnalată anterior. În aprilie 2009, o revistă
de securitate poloneză publicase un articol care detalia
vulnerabilitatea și codul sursă, și se menționa că ea este
proiectată pentru o preluare de la distanță a controlului mașinii.
Microsoft nu avusese, totuși, niciodată cunoștință despre despre
asta, astfel că nu oferise nici un patch. Chiar și parola bazei de
date Siemens, puternic codată, fuse anterior atacată. În aprilie
2008, cineva care utiliza numele de „Cyber” o postase online pe
forumurile tehnice germane și ruse dedicate produselor Siemens. Au
văzut oare autorii Stuxnet, sau cineva care lucra cu ei,
vulnerabilitatea LNK în 2008 și au păstrat informațiile, pentru a
le utiliza într-un nou atac, sperând că Microsoft nu va reacționa?
Sau au achiziționat soluția de la autorii Zlob (bănuiți a fi
hackeri est-europeni) pe piața neagră, unde un zero-day se poate
găsi la sume variind între 50.000 și 500.000 de dolari? Dacă
găsiseră și alte vulnerabilități de același fel? Biroul
Symantec din Culver City este o clădire mare, aerisită, cu un
atrium având tavanul înalt, care arata ca scos din „Insula”.
Tocurile vizitatoarelor se aud ca un clinchet pe plăcile mari și
opace de pe podeaua înălțată pentru a masca sistemele de
alimentare și de ventilație aflate dedesubt. Clădirea are o
suprafață de 497.000 m2 este certificată LEED, având
pereții exteriori în cea mai mare parte din sticlă pentru a oferi
aproape tuturor ocupanților posibilitatea de a admira priveliștea.
Sau ceea ce poate fi considerata priveliște în acest cartier
cenușiu din apropierea aeroportului Los Angeles Internațional.
Echipa „Threat Intelligence“ își desfășoară activitatea în
spatele a trei uși succesive de securitate, într-o cameră goala de
forma cubica și ferestre mari de unde poți privi micile dealuri
acoperite cu iarba și copaci, de tipul celor frecvent construite în
parcurile tehnologice pentru a simula natura. Nu sunt plante în
cameră, nu sunt tablouri pe pereți, nici semne ca lucrătorii de
aici și-ar putea omorî timpul cu jocuri stupide. Nu exista nici
acces la internet, doar rețeaua interna a Symantec - în care
cercetătorii să poată lăsa malware-ii în libertate pentru a
observa și analiza ravagiile produse. Nici un dispozitiv amovibil nu
este permis în această cameră, pentru a evita propagarea virușilor
în rețeaua de afaceri a Symantec și pe Internet. Lucrul în cadrul
unui astfel de laborator e complicat. Atunci când investighează
aspecte on-line ale Stuxnet, Chien și
OMurchu trebuie să meargă la un
server aflat într-o mica încăpere din afara biroului, în care au
laptop-uri conectate la Internet. În primele săptămâni după ce
Stuxnet a fost descoperit, Chien și OMurchu au depistat metodele de
infectare, dar ei încă nu știau de ce a fost creat, sau ceea ce a
făcut efectiv, altceva decât ca s-a răspândit. Aceste secrete
erau îngropate în construcția sa complicata. Sarcina de a
descompune această parte a codului i-a revenit lui Nicolas Falliere,
un francez de 28 de ani. Falliere este o persoana timida, vorbește
încet și arata mai degrabă ca un DJ care mixează muzica trance
într-un club subteran de dans din Paris, mai degrabă decât un
analist pasionat care dezleagă coduri complicate chiar și în
timpul călătoriilor cu metroul. Chien l-a angajat direct din
facultate în anul 2006. El este specializat în analiza profundă a
amenințărilor și și-a dezvoltat abilitățile de
„reverse-engineering”, adolescent fiind, spărgând fișiere de
tip Crackme – coduri de jocuri pe care programatorii le scriu, unii
pentru alții, pentru a-și testa competentele de
reverse-engineering. Falliere a stabilit că Stuxnet a avut trei
părți principale și 15 componente, toate împachetate împreună,
în straturi de criptare, precum păpușile rusești Matroska.
Stuxnet decriptează și extrage fiecare componentă în funcție de
necesități, în funcție de condițiile găsite pe o mașina
infectată. În plus față de acestea, Stuxnet mai avea un fișier
cu configurație extinsa - mdmcpq3.pnf - cu un meniu având mai mult
de 400 de articole, pe care atacatorii le-ar putea selecta pentru a
controla fiecare aspect al codului, cum ar fi cat de mult ar trebui
să răspândească, și cât timp fiecare virusul ar trebui să
funcționeze. Referitor la acest din urma aspect, cercetătorii au
descoperit o data de încheiere a activității Stuxnet - 24 iunie
2012. De fiecare dată când Stuxnet ar începe să ruleze pe o
mașină, se verifica data de pe ceasul intern al aparatului; dacă
aceasta e ulterioara datei din fișierul de configurare, Stuxnet se
închide automat. Probabil ca acesta a fost intervalul de timp
estimat în care Stuxnet să-și fi realizat toate obiectivele sale.
Cu toate acestea, cea mai importantă parte a Stuxnet, a fost
configurația sa de malware. Dacă Stuxnet a stabilit că un sistem
infectat are instalat software-ul Siemens STEP7, malware-ul
decriptează și încarcă un fișier DLL - o biblioteca de funcții
- pe mașină. Acest DLL apare ca un fișier DLL legitim -
s7otbxdx.dll - care servește ca un depozit comun pentru funcțiile
utilizate de către diferite secțiuni de software din STEP7. STEP7
are o interfață frumoasă, tip Windows, pentru programarea și
monitorizarea unui dispozitiv numit Controler Logic Programabil
(PLC). PLC-urile sunt, în esență, mici computere, în general, de
mărimea unui prăjitor de pâine, care controlează toți parametrii
dintr-o gama larga de elemente de acționare: de la motoarele din
liniile de asamblare pana la vanele critice din conductele de gaz.
Pentru a programa și/sau comunica cu un PLC, muncitorii din fabrica
cuplează interfața STEP7 Windows în PLC și trimit comenzi
sau primesc rapoarte de date. Acest este momentul în care Stuxnet
DLL malware intră în acțiune. Falliere a descoperit că el
interceptează comenzile venite de la software-ul STEP7 pentru PLC și
le înlocuiește cu propriile sale comenzi malware. În același
timp, o altă parte din Stuxnet anulează orice alarmă automată
care s-ar putea declanșa în sistem, ca urmare a comenzilor malware.
De asemenea, maschează în PLC tot ceea ce se întâmplă, prin
interceptarea rapoartelor de stare trimise de la PLC către interfața
STEP7, și elimina orice semn al unei comenzi de malware. Lucrătorii
de monitorizare vad, prin urmare, doar comenzile legitime pe
dispozitiv - ca într-un film de la Hollywood, unde hoții care
jefuiesc un magazin de bijuterii ar insera o bucla de clip video
într-o camera de supraveghere, astfel încât polițiștii de la
monitoare ar vedea doar o imagine „benigna” în locul unor
imagini reale cu hoții în acțiune. Faptul că Stuxnet putea sa
„injecteze” comenzi în PLC și sa mascheze că a făcut acest
lucru a fost dovada că acesta a fost proiectat, nu pentru activități
de spionaj, ceea ce toată lumea a crezut, ci pentru sabotaje fizice.
Cercetătorii erau uimiți. Era prima data când cineva a văzut un
cod digital utilizat „în sălbăticie” și folosit pentru a
distruge fizic ceva din lumea reală. Hollywood-ul a imaginat un
astfel de scenariu cu câțiva ani mai devreme într-un film Die
Hard. Acum, realitatea prindea din urma fantezia. „Ne așteptam să
fie ceva legat de spionaj, ne așteptam la ceva legat de furtul de
numere de card de credit; cu asta avem de a face în fiecare zi”,
își amintește Chien. „Dar nu ne așteptam la una ca asta”. Pe
06 august, Symantec a publicat un post pe blog spunând că Stuxnet a
fost un atac direcționat care vizează deturnarea Programmable Logic
Controller (PLC) dintr-un sistem de control Siemens, prin injectarea
de cod malware. Pentru a ilustra capacitatea de distructiva a
Stuxnet, cercetătorii au utilizat un caz de referință din 1982,
des citat „atacul digital al CIA asupra conductei de gaz din
Siberia, care a condus la o explozie având puterea de o cincime din
bomba atomică detonata la Hiroshima. Potrivit teoriei, niciodată
substanțial probata, Statele Unite a descoperit că Rusia a furat
date referitoare la tehnologii ale USA. Ca urmare, CIA a pus la cale
un complot pentru a insera o bombă logică în software-ul pe care
agenția știa ca rușii l-au cumpărat de la o firmă canadiană
pentru a comanda pompe și vane din conducta de gaze naturale.
Echipamentul a lucrat bine inițial, dar la un moment dat
(preprogramat), a provocat defecțiuni în funcționarea supapelor
din conducta, creând acumulări de gaze care au determinat o
creștere a presiunii, determinând o explozie, ca o minge de foc
atât de mare încât fost lesne de capturat de către camerele
amplasate pe sateliții orbitali. Dovada că Stuxnet a fost creat
pentru a sabota un PLC a fost un progres imens. Dar era o problemă:
Nici unul dintre cercetătorii Symantec nu știa destule despre
automatele programabile pentru a afla în mod precis în ce fel
Stuxnet acționa asupra lor. PLC-urile foloseau un limbaj de
programare special, STL, care le era familiar cercetătorilor
(versați în programe Windows și limbaje pentru PC) precum „latina”
. Pe blog-ul lor, ei au cerut oricui poseda cunoștințe de PLC și
STL sa-i contacteze. Dar nu au primit niciun răspuns. Două
săptămâni după ce Symantec a publicat mesajele sale pe blog,
traficul de la echipamentele infectate din Iran, s-a oprit brusc,
astfel ca nu au mai apărut rapoarte de trafic la Symantec. Iranul a
începuse blocarea conexiunilor de ieșire (prin care se făcea
monitorizarea de către Symantec) de la mașinile infectate. Cineva
nu a vrut ca să se știe care mașini în Iran au fost infectate,
sau sa mai aibă vreun canal deschis către ele prin intermediul
Stuxnet. Chien se așteptat ca, odată ce au publicat posturile lor,
alți cercetători le-ar putea urma exemplul cu mai multe informații.
De obicei, atunci când au analizat malware noi, concurenții lor
făceau analize simultan, și se întreceau în a publica
descoperirile. Acest mod de lucru, duplicat, servea ca un cadru
informal peer-review pentru verificarea corectitudinii rezultatelor
fiecărei firmei. Dar de data aceasta nu a existat nici un semn ca
vreun alt cercetător ar fi fost interesat sa intre într-o analiza
profunda a codului. „Vorbeam despre lucruri aruncate în vânt!”
își amintea recent Chien, încă uimit de ceea ce părea a fi o
lipsă de interes. Era de fapt ceea ce Chien a numit „tăcerea în
care auzi greierii”. În altă parte a globului, un german pe nume
Ralph Langner, de 52 de ani, a citit mesajul Symantec cu fascinație.
Langner era puțin interesat de sistemele de operare Windows sau
viruși pe internet - el nu avea nici măcar o conexiune internet la
domiciliu. Dar el era specializat în domeniul obscur al securității
sistemelor de control industrial. Este singurul lucru pe care mica
lui firma de trei angajați îl face. Prin urmare, el a fost deosebit
de intrigat atunci când Symantec a scris că Stuxnet a sabotat
PLC-uri. „Acesta a fost momentul în care Stuxnet a atras atenția
noastră”, a spus Langner. „Ne-am gândit, OK, acum începe sa
devina interesant”. Langner știa că mii de clienți Siemens au un
posibil “ucigaș silențios” infiltrate în sistemul lor, și
așteptau de la Symantec sau Siemens sa le spune care sunt efectele
infectării cu Stuxnet . Dar Siemens a fost, incredibil de tăcută
în această privință. În afara unui anunț despre formarea unei
echipe de experți care vor examina acest malware, societatea a
păstrat o tăcere mormântala. „Din moment ce controlerele lor
sunt ținta, atunci Siemens ar avea datoria de a analiza acest
lucru”, a spus Langner. Stuxnet a fost deja disponibil, pe
site-urile malware, oricine, de rea credință putea sa-l descarce și
sa-l utilizeze. În mâini greșite, aceasta ar putea deveni un atac
mai răspândit și periculos, care sa vizeze alte tipuri de
controlere din Statele Unite și din alte părți. Langner a decis că
el și echipa lui se vor ocupa serios de Stuxnet. Cunoștințe despre
calculatoare ale lui Langner erau acelea ale unui autodidact, dar
expertiza lui în produsele Siemens era atât de mare, încât el i
tovarășii săi, ingineri, Ralf Rosen și Andreas Tim, erau
solicitați sa instruiască, uneori, angajații Siemens pe propriile
produse. „Exista, probabil, doar o mână de angajați, chiar și
în Siemens, care să cunoască aceste lucruri mai bine decât noi”,
a spus Langner. Cei trei au adunat în jurul lor un grup de
monitoare, în biroul lor mic, și emiteau teorii și testau ipoteze
despre ceea ce ar putea face codul. Ei au studiat, de asemenea,
îndeaproape configurația în care Stuxnet opera: Ce dispozitive
erau apelate de către cod și dacă erau mai mult decât unul? Erau
dispozitivele cuplate într-un mod distinct? A fost nevoie de trei
săptămâni pentru a ajunge la o concluzie surprinzătoare - Stuxnet
nu a avut ca scop doar atacarea unui anumit tip de controller
Siemens, ci a fost creat ca o armă de precizie pentru sabotarea unei
instalații (fabrici) specifice. Încorporat în codul Stuxnet era un
fișier care detalia configurația tehnica specifica a instalației
căutate. Orice sistem care nu se potrivea exact cu această
configurație ar putea funcționa în continuare nevătămat: Stuxnet
s-ar închide și ar trece la următoarea mașină până când
sistemul va găsi victima cu profilul cautat. Era clar pentru Langner
că Stuxnet a fost produs de un guvern cu puternice resurse și
cunoștințe precise asupra obiectivului țintit. „Mă așteptam
cel mult la un atac de tip DoS (probabil buimac) împotriva oricărui
PLC Siemens”, își amintea, mai târziu, Langner. „Dar acest
lucru a fost absolut înfricoșător. Sa vezi că cineva a construit
un malware asa de sofisticat - utilizând patru vulnerabilități
zero-day, folosind două certificate furate – doar pentru a ataca o
anumită instalație? Asta e de necrezut”. Deși instalația nu era
exact precizata în interiorul Stuxnet, Langner nu a avut nicio
îndoiala. „Este vorba despre sabotarea Bushehr”, i-a anunțat el
pe Rosen și Tim într-o zi, referindu-se la o centrală nucleară
din Iran, care fusese programată să înceapă activitatea în luna
august 2010, dar a fost întârziată. Colegii lui Langner priveau la
el înmărmuriți. Ei nu erau prea dornici să-l urmeze pe o cale
atât de delicata a unui război cibernetic sponsorizat de un stat
care ar părea sa fie Israel și/sau Statele Unite ale Americii, și,
posibil, chiar și Germania, ca agresori suspecți în spatele
Stuxnet. Langner a sunat un client german al său, care lucrează
pentru un producător de top de echipamente de îmbogățire a
uraniului. Am o întrebare pentru tine”, a zis Langner. „Este
posibil sa distrugi o centrifugă doar prin manipularea codului
operatorului?” „Eu nu pot să-ți spun asta, Ralph, e o
informație confidențială”, a răspuns omul. Langner era sigur ca
era pe drumul cel bun. El a publicat un post de blog, pe 16
septembrie, afirmând cu îndrăzneală că Stuxnet a fost un atac
îndreptat împotriva Bushehr, și a emis un comunicat de presă
pentru mass-media germană și internațională. „A fost o liniște
totală în jurul nostru”, și-a reamintit Langner mai târziu.
„Toată lumea se gândea că tipul ăsta e nebun. Am știut
întotdeauna că Ralph este un idiot, dar acum avem și dovada pentru
aceasta”. Frank Rieger, Chief Technology Officer la firma germana
de securitate GSMK, era de acord cu afirmația lui Langner, potrivit
căreia Stuxnet a fost un atac țintit, dar considera ca o alta
instalație nucleară din Iran ar corespunde mai bine ca țintă. El
a remarcat într-un post on-line ca Natanz, era deja operațională
pentru îmbogățirea uraniului și prezenta deja un risc mai mare
pentru producerea de arme nucleare. El a menționat de asemenea că,
în iulie 2009 - la o lună după data la care Stuxnet se credea că
a fost lansat - WikiLeaks a făcut un anunț interesant. Wikileaks a
spus că o sursă anonimă a susținut că un „grav” accident
nuclear a avut loc recent de la Natanz. Site-ul, de asemenea, a
subliniat că șeful Organizației Iraniene pentru Energie Atomică a
demisionat recent din motive necunoscute. Langner l-a contactat Joe
Weiss, un expert în sisteme de control industrial din Statele Unite,
pentru a discuta despre ceea ce echipa sa a găsit. Langner și Weiss
au un stil de a discuta mai direct și chiar oarecum conflictual,
care nu e întotdeauna îndrăgit de colegii lor. Oamenii din
industrie au tendința de a ofta la auzul numelor lor. Dar nimeni nu
le pune la îndoială meritele în domeniul lor de expertiză. Acești
bărbați erau avertizați de ani de zile că (virgulă )controlerele
industriale sunt vulnerabile la un eventual atac, dar puțini au luat
aceste avertizări în serios. Deoarece sistemele sunt proprietare și
mai puțin cunoscute, și au fost proiectate pentru a rula în rețele
izolate, de sine stătătoare, vânzătorii și administratorii de
rețea erau convinși că hackerii nu au nici cunoștințele, nici
capacitatea de a le ataca. Dar în ultimii ani, sistemele au devenit
din ce în ce mai conectate la Internet sau în rețea cu alte
sisteme care erau on-line, făcându-le o țintă deschisa și
atractivă. Weiss găzduiește anual, cu ușile închise, conferințe
de securitate pentru circa 100 de profesioniști de control
industrial, și Langner era programat să vorbească la adunarea de
peste două săptămâni despre un alt subiect. El l-a întrebat pe
Weiss dacă ar putea vorbi despre Stuxnet în locul temei inițiale.
„I-am răspuns, nu știu dacă să-ți spun da sau, pe dracu,
bineînțeles”, își amintește Weiss. El i-a dat lui Langner 45
de minute. Langer a sfârșit prin a vorbi o oră și jumătate.
„Toți am ascultat cu gura deschisă în timp ce el vorbea”, își
amintește Weiss. „El a folosit de doua ori timpul acordat, dar
nici nu mi-a trecut prin cap să-l opresc”. „De reținut din
prezentarea lui Ralph a fost că, dacă există un atac sofisticat,
noi în lumea sistemelor de control suntem total descoperiți,
deoarece nu vom vedea nimic”, a spus Weiss mai târziu. „Nu avem
nici o modalitate de a ști dacă un controller este infectat sau
nu”. Langner a publicat descoperirile sale într-o serie de posturi
pe blog. „Cu dovezile adunate pana acum este evident și
demonstrabil că Stuxnet este un atac de sabotaj bazat pe cunoștințe
solide din interior”, a scris el. „Este important ca toată lumea
să știe aceasta, chiar acum”. Ceea ce a urmat a fost o foaie de
parcurs tehnica, în care sunt explicați pașii concreți pe care ii
face Stuxnet pentru pentru a intercepta și injecta comenzi într-un
PLC, împreună cu o listă de verificări cu pașii pe care
administratorii trebuie imediat sa-i parcurgă pentru a contribui la
securizarea acestora. Au urmat mai multe posturi în care echipa lui
Langner a prezentat alte descoperiri despre ceea ce făcea Stuxnet în
automatele programabile. Site-ul său web a fost asaltat cu trafic
din întreaga lume, inclusiv din domeniile guvernului Statelor Unite.
Langner a făcut un imens serviciu public, ajutând la protejarea
infrastructurilor critice. Dar el a contribuit, de asemenea, la
distrugerea potențiala a unei importante misiuni sub acoperire.
Revenind la Symantec, Chien și colegii sai au urmat un curs intensiv
în automatele programabile. Era clar că Stuxnet avea un efect
distrugător asupra automatelor programabile către care a fost
direcționat, dar n-aveau încă nici o idee exacta asupra acestor
efecte. Astfel, cercetătorii au cumpărat on-line niște cărți
despre STL - limbajul folosit de Stuxnet pentru a comunica cu PLC -
și au început să le studieze. Până acum, cei trei cercetători
Symantec au lucrat exclusive la Stuxnet - Chien și OMurchu în
California, Falliere în Paris. Chien se urca seara în pat cu
BlackBerry-ul și laptopul; analizând codul, cautând indicii pe
Google și trimițându-i e-mail cu rezultatele obținute peste zi
lui Falliere, care tocmai începea lucrul în Paris. Chien se trezea
adesea în jurul orei 5 dimineața, uneori cu ideile
învălmășindu-i-se în cap, și imediat își lua BlackBerry-ul
pentru a-i trimite lui Falliere un text pentru o actualizare și
pentru a sugera noi căi de analizat în continuare. De obicei,
Symantec alocă câteva zile pentru a analiza o secțiune de malware,
dar de aceasta data a trecut mai bine de o luna, de “săpat” prin
Stuxnet, și reușiseră sa “spargă” doar o parte din el.
„Tocmai ne gândeam că ar putea dura o veșnicie, că ani de aici
înainte vom tot descoperi, aici mai este un octet [de care am
uitat]”, își amintea Chien. Chien are 37 ani, dar arata cu zece
ani mai tânăr. El are o figură subțire, unghiulara și un zâmbet
larg, atrăgător de om care nu încearcă să facă pe “durul”
ascunzându-și entuziasmul. El vorbește repede, în rafale scurte
când povestește despre provocarea pe care Stuxnet le-a oferit-o.
Multe cazuri deosebite de securitate le-au dezvoltat abilitățile și
experiența pentru a sta cu capul sus printre concurenți, dar Chien
râde mereu când își amintește, ce puțin pregătiți erau pentru
a face față lui Stuxnet, și cât de disperați și orbi au fost în
multe din încercările de a se lupta cu codul. Chien a intrat în
domeniul antivirus dintr-o întâmplare. A studiat ingineria
electrică, genetica și biologie moleculara la UCLA și și-a
planificat o carieră în domeniul științei. Dar, după ce a
absolvit, în 1996, el a urmat câțiva prieteni la Symantec, care
devenise doar o părticică din cybersecurity după cumpărarea
gigantului antivirus Norton. Pe atunci, securitatea cibernetică era
încă un domeniu în curs de formare, și a fost destul de ușor sa
obțină un loc de muncă fără o pregătire specifica. Chien a
învățat singur ceea ce avea nevoie să știe și s-a alăturat
unui mic grup de la Symantec care făcea analiza virușilor și scria
definiții. Ei nu aveau, totuși, prea multe de făcut, Internetul și
e-mailul de abia apăreau iar virușii pentru MS-DOS – singurele
cunoscute în acel moment - erau rare, și se răspândeau lent, prin
dischete. Clienții care suspectau că au fost infectați trimiteau
prin posta discheta cu un fișierul suspect la Symantec, unde putea
rămâne într-un raft din birou și o săptămână pana când Chien
sau colegii sai sa-l ia la analizat. De cele mai multe ori, se
dovedeau a fi alarme false. Dar, ocazional, atunci când găseau un
virus, ei scriau câteva semnături de detectare le încărcau pe
dischetă și o trimiteau înapoi clientului. Sneakerware
(transportul fizic al unităților hard) era metoda folosita în
protecția antivirus. Malware-ii, desigur, au evoluat de atunci.
Programele omniprezente Microsoft au dat naștere virușilor de macro
și polimorfi, urmați de cei de internet, care au dus rapid la
răspândirea virușilor de e-mail, și a „viermilor” de rețea
care se propagau instantaneu la la milioane de mașini. Indiferent de
natura malware-ului, pentru cel puțin un deceniu motivațiile
autorilor de malware a rămas același - faimă și glorie. Un
conținut tipic includea un anunț către prietenii hackerilor.
Lucrurile s-au schimbat de îndată ce e-commerce-ul s-a răspândit
și hackerii au început să se concentreze asupra câștigurilor
financiare - furtul de date de pe cardurile de credit, acreditări de
online banking și secretele corporațiilor. Mai recent, atacurile au
evoluat către așa-numitele amenințări avansate și persistente -
cazul în care atacatorii, uneori susținuți de stat, au lucrat cu
răbdare pentru a pătrunde adânc într-o rețea, și au stat
implantați acolo, luni sau ani, pentru a „sifona” în tăcere
secrete naționale, coduri sursa și alte date sensibile. Stuxnet era
diferit de toate acestea. Nu a fost o evoluție în malware-urii, ci
o revoluție. Ideea că cineva ar crea un astfel de vierme sofisticat
pentru a aluneca orbește prin rețele în căutarea unui singur
obiectiv a fost „furtunos”, dincolo de ceea ce cercetătorii de
la Symantec se așteptau. „Aș putea lucra în această industrie
pentru alți douăzeci de ani și să nu mai am ocazia să văd
niciodată un proiect de acest fel”, declara recent OMurchu. „Ne
așteptam să fie ceva legat de spionaj, ne așteptam la ceva legat
de furtul numerelor de card de credit... Dar nu ne așteptam la asta”
- Eric Chien. Până la sfârșitul lunii septembrie, Symantec a
construit, cu grijă, un profil pentru ținta Stuxnet-lui. Falliere a
descompus codul pe care Stuxnet îl injecta în PLC și știa ca
malware-ul reseta valoarea a ceva conectat la controller, dar n-avea
nici o idee despre ce se găsea la capătul final al acestor comenzi,
sau ce efecte ar produce noile valori modificate. Era ca și cum am
privi niște gloanțe trasoare, pe cerul nopții, fără sa știm ce
obiectiv țintesc ele. Ei au descoperit deja că sistemul de țintire,
specific Stuxnet, utiliza standardul Profibus de comunicare. Ei au
observat, de asemenea, că virusul cauta o anumită valoare - 2C CB
00 01 - înainte de a se decide să atace o țintă PLC. Ei au avut
bănuiala ca acest lucru ar putea fi un fel de ID pe care sistemului
STEP7 îl atribuie unei componente hardware, astfel încât ei au
creat un mediu de simulare pentru STEP7 PLC, și au început
conectarea de componente. Valoarea de referință a ieșit la iveala
atunci când au atașat un card de rețea Profibus. Dar mai existau
două numere utilizate de Stuxnet, care rămâneau încă un mister -
9500h și 7050h. Ele nu apăreau nici când conectau diverse
componente hardware la sistemul lor simulat și nici căutările de
numere de pe Google nu produceau nici un rezultat. Apoi, o speranță
a apărut în noiembrie 2010. Cercetătorii au făcut un apel pe
blog-ul lor, solicitând ca oricine, cu experiență în
infrastructuri Profibus și infrastructuri critice sa-i contacteze,
iar un programator olandez pe nume Rob Hulsebos a răspuns. Mare
parte dintre e-mail–uri abordau informații pe care cercetătorii
le știau deja, dar o informație s-a remarcat. Fiecare componentă
Profibus trebuia să aibă un ID unic, care era reprezentat de un
cuvânt lung, scria Hulsebos. Asta l-a inspirat brusc pe Chien să se
gândească că cele două numere misterioase erau ID-uri de
producător. El și OMurchu au cautat on-line documentația Profibus
și au găsit un PDF cu o lista de specificații pentru dispozitivele
folosite de plăcile de rețea Profibus. În partea de jos a listei
erau cele două numere misterioase căutate de Stuxnet. Erau ID-uri
de produs pentru două tipuri de convertoare de frecvență făcute
în Finlanda și Iran. Primul, 9500h, se referea la VACON NX,
convertoare de frecvență făcute de VACON în Finlanda, iar al
doilea, 7050h, la un convertizor de frecvență nespecificată făcute
de Fararo Paya în Iran. Convertizoarele de frecvență modulează
viteza de rotație a motoarelor în instalații cum ar fi burghiele
de mare viteză, folosite pentru a tăia piese metalice în fabrici
sau în fabricile de hârtie pentru acționarea preselor. Creșterea
frecvenței de comanda determina creșterea vitezei de rotație a
motorului. În documentația Profibus, găsita on-line, cercetătorii
au descoperit o listă de comenzi pentru controlul frecvențelor; se
potrivea exact cu comenzile scrise în Stuxnet. „Codul STL [din
Stuxnet] trimitea comenzi cum ar fi: „word 47F and 1”, își
amintește Chien. „Și te uiți la convertizorul de frecvență [în
manualul de utilizare], unde se spune: „Pentru a porni
convertizorul de frecvență, utilizați comanda „word 47F” și
setați această valoare la 1”. Am rămas mut. „Pe baza
informațiilor din cod, Stuxnet țintea o instalație care sa aibă
cel puțin 33 de drivere pentru convertizoare de frecvență
instalate, toate operand în plaja de frecventa dintre 807Hz și 1210
Hz. Malware-ul putea sta liniștit, după recunoaștere (a țintei)
timp de aproximativ două săptămâni, apoi lansa atacul rapid și
în liniște, prin creșterea frecvenței convertoarelor la 1410 Hz
timp de 15 minute, înainte de readucerea lor la o frecventa normala
de 1064 Hz. Frecvența rămânea la acest nivel pentru 27 de zile,
înainte ca Stuxnet sa lovească din nou, de data asta modificând
frecventele în jos la 2Hz pentru 50 de minute. Unitățile rămâneau
neatinse pentru alte 27 de zile, înainte de Stuxnet sa atace din nou
cu aceeași secvență. Gama extrema de frecvențe a sugerat ca
Stuxnet încerca să distrugă orice ar fi fost la celălalt capăt
al convertoarelor. Chien a făcut o căutare on-line și a descoperit
că acele convertizoare de frecventa care funcționau la viteze de
600Hz sau peste, au fost reglementate pentru export în Statele
Unite, de către Comisia de Reglementare Nucleara. „Am realizat,
atenție, că aceste lucruri, la această frecvență, ar putea fi
folosite pentru îmbogățirea uraniului”, își amintește Chien.
Langner apreciase corect, afirmând că Stuxnet a fost direcționat
către centrifuge de la o centrală nucleară, dar acum Symantec
aveau dovezi puternice pentru a susține acest fapt. În acel moment,
spune Chien : „Noi nu eram imuni la faptul că se contura o imagine
de ansamblu geopolitic. Ne gândeam bineînțeles, fiecare dintre noi
... vreau eu cu adevărat sa-mi leg numele de această lucrare?” Pe
tot parcursul, pe măsura ce ajungeau în momente semnificative al
muncii lor, discutau mereu dacă anumite informații n-ar trebui
dezvăluite sub anonimat sau dacă unele dintre ele n-ar trebui chiar
păstrate și nediseminate. Dar, în final, de fiecare data au căzut
de partea divulgării, gândind: cu cat mai multe persoane au aceste
informații, cu atât mai bine, le va fi mai ușor să se protejeze
împotriva acestui tip de atacuri și de atacuri de tip copycat care
erau de așteptat sa urmeze. Remarcabil, nici unul dintre directorii
companiei nu a încercat vreodată să pună capăt muncii lor la
Stuxnet sau să cenzureze ceva din ceea ce au realizat. „Nici până
azi nu am apelat vreodată la avocați”, a spus Chien. Compania, a
considerat că „este o amenințare, care afectează oamenii,
trebuie să ne ocupam de ea. Acesta este pragul sub care nu putem
coborâm indiferent de ceea ce s-ar putea întâmpla”, a spus el.
Era totuși un punct , povestește OMurchu, în care ar fi fost
posibil ca informațiile adunate sa fie cenzurate. „Dacă am fi
ajuns la punctul în care am fi aflat 100% cine se afla în spatele
întregii acțiuni, cred că am fi avut câteva „conversații” cu
adevărat serioase despre publicarea lor”, a spus el. De fapt,
Symantec a făcut doua incursiuni controversate și sub acest aspect.
Prima se referea un marker de infectare pe care cercetătorii l-au
descoperit în Stuxnet. Atunci când Stuxnet infecta un sistem,
înainte de a instala fișierele sale malware, verifica registrul
Windows pentru numărul 19790509. În cazul în care numărul era
acolo, Stuxnet trecea peste sistem fără a-l infecta – precum
sângele de miel care marca ușile caselor evreiești din Egiptul
antic pentru a apară primul născut de ciuma. Tehnica nu era nouă.
Symantec mai văzuse așa-numitele „valori inoculate” în alte
tipuri de malware. Atacatorii le foloseau în cheile de registru de
pe propriile computere pentru a preveni ca modul „sălbatic” de
răspândire al malware-lor sa-i infecteze chiar pe ei. Dar,
cercetătorii au observat că, în acest caz, numărul semăna cu o
dată - 09 mai 1979 - și a sugerat că s-ar putea referi la o anume
zi când un om de afaceri iranian evreu pe nume Habib Elghanian a
fost executat prin împușcare, la Teheran. Execuția a fost
semnificativă în istoria evreilor, pentru că în cele din urmă a
lansat un exod în masă al evreilor din Republică (Iran). Apoi a
fost cuvântul „myrtus”, care a apărut într-o cale de fișier
(file path) pe care atacatorii au „lăsat-o” într-unul din
driverele Stuxnet . Calea - b: \ myrtus \ src \ objfre_w2k_x86 \: 386
\ guava.pdb - arăta locul în care dezvoltatorii Stuxnet au avut
salvat fișierul pe computerele lor în timp ce acesta a fost creat.
Nu este neobișnuit pentru dezvoltatori să uite să șteargă astfel
de indicii înainte de lansarea unui malware. În acest caz, numele
de „guava” și „myrtus” a sugerat posibile indicii pentru
identificarea autorilor Stuxnet. Myrtus este o familie de plante care
include guava, asa ca era posibil ca atacatorii sa fi fost
îndrăgostiți de botanica. Sau ca Myrtus ar putea însemna, de fapt
MyRTUs - RTU, sau unități aflate la distanță de terminale, ce
funcționează similar cu PLC-urile. Symantec a menționat aceste
două variante, dar, de asemenea, a subliniat că myrtus ar putea fi
o subtila referire la Regina Estera, regina evreilor Purim, care, în
conformitate cu textele scrise în secolul 4 î.Hr., a salvat evreii
de la masacrul din Persia. Numele ebraic al reginei Esther a fost
Hadassah, care se referă la mirt. Suspiciunile, ca Israelul și SUA
erau în spatele Stuxnet și au folosit malware-ul ca o alternativă
pentru a evita bombardarea centralelor nucleare ale Iranului,
bineînțeles ca au crescut. N-avea cum sa fie o surpriză pentru
cercetători că, atunci când munca lor a atras atenția agențiilor
guvernamentale din Statele Unite și dinafara lor, acestea au început
sa solicite informări cu privire la constatările lor. Symantec a
făcut o prezentare PowerPoint comuna pentru Departamentul de
Securitate Internă, Departamentul de Apărare, Departamentul de
Energie și FBI pentru a răspunde la întrebările lor. „Spuneam
în glumă că, de fapt, ei au deja toate răspunsurile”, a spus
Chien. Întrebat dacă cineva de la NSA sau CIA a participat la
aceste sesiuni de prezentare în PowerPoint, el a zâmbit: „Dacă
am fi făcut-o vreodată pentru NSA, am ști, nu?”. Consecințele
politice ale muncii lor au luat dimensiuni chiar impresionante atunci
când, la două săptămâni după ce au publicat concluziile lor cu
privire la convertizoarele de frecventa, asasini pe motociclete au
atacat, simultan, la Teheran, doi oameni de știință (specializați
în fizica nucleară) iranieni. Cei doi își schimbaseră locurile
de munca, într-o luni dimineață, în părți diferite ale orașului
atunci când asasinii au plasat pe mașinile lor bombe. Majid
Shahriari, om de știință de top și senior manager al programului
nuclear al Iranului, a fost ucis. Fereydoun Abassi, un specialist cu
experiență în separarea izotopilor, cruciala pentru realizarea de
combustibil de uraniu, a fost rănit. Iranul a acuzat Mossad-ul ca ar
fi în spatele atacurilor. Deși cercetătorii nu credeau cu adevărat
ca viețile lor ar fi fost în pericol pentru dezvăluirea Stuxnet,
ei râdeau nervos, când și-au reamintit paranoia și umorul negru,
care le presăra conversațiile lor din acel timp. Când OMurchu a
început să observe zgomote ciudate la telefonul lui, într-o vineri
le-a spus lui Chien și Falliere, „Dacă o sa aflați , luni, ca
m-au găsit mort, că m-am sinucis, vreau doar să vă spun băieți,
că nu am de gând să mă sinucid”. În ziua în care știrile
despre asasinate au erupt, Chien a glumit cu colegii săi că, dacă
vreodată o motocicleta s-ar opri lângă mașina lui, el l-ar doborâ
imediat printr-un viraj brusc. Apoi, când a plecat de lucru în acea
zi și s-a oprit la prima intersecție, el a s-a speriat - pentru un
moment – când a aruncat o privire în oglinda retrovizoare și a
văzut o motocicleta oprita în spatele lui. Dovezile pe care Langner
și Symantec le-au descoperit despre Stuxnet au instrumentat
convingător ca malware-ul a avut ca scop programul nuclear al
Iranului. Dar alte dovezi în afara numărului excesiv de centrifuge
pe care tehnicienii au fost văzuți ca le înlocuiau la Natanz, la
începutul anului 2010, nu au existat și nicio dovadă clara că
Natanz a fost obiectivul specific sau că, într-adevăr, malware-ul
a fost responsabil pentru deteriorarea centrifugelor eliminate. Doar
declarația Iranului privind existent unui malware, a indicat că
Stuxnet a infectat computere personale ale lucrătorilor de la
Bushehr, dar că sistemele de calcul sau de alte instalații nucleare
ale fabricii nu au fost afectate. Apoi, pe 23 noiembrie, Ali Akbar
Salehi, șeful Organizației iraniene pentru Energie Atomică, a
oferit ceea ce părea a fi prima recunoaștere că “viermele” a
lovit instalațiile nucleare ale Iranului. „Cu un an și câteva
luni în urmă, occidentalii au trimis un virus la uzinele [noastre]
nucleare”, a declarat el reporterilor iranieni, fără a menționa
numele virusului. El a minimalizat efectele virusului, susținând ca
muncitorii vigilenți au descoperit rapid malware-ul la punctul de
intrare și l-au împiedicat sa afecteze echipamentele. Șase zile
mai târziu, însă, ca pentru a sfida declarațiile lui Salehi și
competențele Iranului de a-și apăra programul nuclear, asasinii de
pe motociclete, au atacat pe cei doi oameni de știință iranieni.
Într-o conferință de presă, în aceeași zi, președintele
iranian Mahmoud Ahmadinejad a părut sa se refere la virusul
menționat de Salehi, pentru a-l contrazice spunând că „dușmanii”
statului au sabotat într-adevăr centrifugele Iranului cu un program
software rău intenționat. „Ei au reușit să creeze probleme
pentru un număr limitat de centrifuge cu software-ul instalat în
piese electronice”, a spus el, fără să numească Stuxnet sau
instalațiile care au fost atacate. Apoi, David Albright de la
Institutul pentru Știință și Securitate Internațională, care
monitorizează cu atenție programul nuclear al Iranului, a furnizat
o mica informație, cruciala pentru a face legătura intre Natanz și
Stuxnet. După citirea rapoartelor lui Langner și ale echipei
Symantec, Albright a dezvăluit faptul că în decembrie frecvența
nominală la care centrifugele de la Natanz, lucrau era de 1064 Hz –
exact frecvența pe care Stuxnet o restaura în convertoare după
drasticele creșteri și descreșteri de frecventa din timpul
atacurilor. Tot Albright a mai găsit o corelație. Datele din
Stuxnet indicau că acesta a fost de direcționat către dispozitive
configurate în grupuri de 164; Albright, a remarcat faptul că
fiecare dintre cascadele de la Natanz avea cate 164 de centrifuge.
Misterul privind ținta Stuxnet-ului, și al centrifugelor
deteriorate, părea să fie rezolvat. A trecut un an de când
inspectorii AIEA au observat prima oara centrifugele de la Natanz
dispărând, și au avut, în cele din urmă cel mai apropiat de
realitate răspuns, despre ceea ce s-a petrecut acolo. O întrebare a
rămas, totuși la orizont. Dacă Stuxnet a reușit, în atingerea
scopului propus. Dacă obiectivul malware-ului a fost de a distruge
centrifuge în Iran și de a reduce capacitatea țării de a produce
o armă nucleară, consensul este că nu a reușit. Un atac fizic ar
fi fost mult mai eficient, deși în mod evident mult mai greu de
ascuns sau de explicat din punct de vedere politic. Dar, dacă
intenția sa a fost doar să întârzie și să inducă incertitudini
în programul nuclear al Iranului, atunci se pare ca a reușit -
pentru un timp. La începutul acestui an, șeful demisionar al
Mossad-ului a declarat că defecțiuni nespecificate au diminuat
capacitatea Iranului de a produce o armă nucleară până în 2015.
În SUA, secretarul de stat Hillary Clinton a spus, de asemenea, ca
programul nuclear al Iranului a fost „încetinit”, dar a adăugat:
„Mai avem timp. Dar nu foarte mult timp”. Albright a punctat că
Iranul are material pentru a construi doar 12,000-15,000 centrifuge,
și dacă 1.000 până la 2.000 au fost distruse, acest lucru ar
putea grăbi dispariția stocurilor sale. Dar organizația lui și
altele au remarcat că, după ce centrifugele au fost înlocuite,
Iranul a intensificat programului său de îmbogățire și producția
sa totală de uraniu a crescut, de fapt, în 2010, în ciuda oricăror
efecte pe care Stuxnet le-ar fi putut avea. Stuxnet a necesitat
o cantitate enormă de resurse pentru a fi realizat, dar raportul
cost-beneficiu este încă în discuție. Deși poate a contribuit la
afectarea programul stabilit al Iranului într-o oarecare măsură,
el modificat, de asemenea, „peisajul” atacurilor cibernetice.
Autorii Stuxnet au trasat o nouă frontieră, pe care atacatorii sunt
încurajați să o încalce, iar următoarea țintă pentru sabotaj
ar putea fi cu ușurință cea a unei instalații nucleare din
Statele Unite ale Americii. Nimeni nu știe ce ar fi devenit Stuxnet
dacă nu ar fi fost descoperit de către VirusBlockAda cu un an în
urmă. Codul conține o secvență de atac despre care cercetătorii
spun că nu a fost niciodată activat în niciuna dintre versiunile
de Stuxnet analizate. Se pare ca atacatorii erau încă în curs de
dezvoltare a codului când acesta a fost descoperit. Ei nu vor avea
probabil o a doua șansă de a utiliza din nou arma lor. Langner a
numit Stuxnet o arma cu un singur cartuș. Odată ce a fost
descoperit, atacatorii nu vor mai fi în măsură să-l utilizeze
direct, sau un truc similar, fără ca Iranul sa nu devina imediat
suspicios la orice funcționare defectuoasa a echipamentelor.
„Atacatorii au mizat pe presupunerea că victima nu are suficiente
cunoștințe de securitate cibernetica, și că nici un terț
independent nu va putea analiza cu succes „arma” și să facă
publice rezultatele în scurt timp, oferind astfel o șansă de
victimei de a o dezamorsa în timp util” a spus Langner. În cele
din urmă, creatorii Stuxnet au investit ani și, probabil, sute de
mii de dolari într-un atac care a fost deraiat de către un singur
PC cu probleme de bootare, un trio de cercetători naivi care nu știa
nimic despre centrifuge, și un german, vorbind pripit, care nu avea
nici măcar o conexiune de internet la domiciliu. După toate
eforturile depuse pentru descifrarea Stuxnet, codul în sine deține
încă o serie de mistere - două fișiere mici, criptate pe care
cercetătorii n-au reușit încă sa-l spargă. Un fișier este de 90
bytes, ce se copiază în fiecare sistem infectat de Stuxnet .
Celalalt este de 24 bytes și se copiază în mașinile cu STEP7
atunci când fișierul DLL „otrăvit” al Stuxnet este instalat.
Cele două fișiere ar putea deține indicii suplimentare pentru
scopurile Stuxnet sau originea sa, pe care, însă, s-ar putea sa nu
le putem descoperi vreodată. Cercetătorii Symantec au încercat în
mod repetat, sa spargă criptarea lor, dar n-au reușit niciodată.
Privind înapoi la anul dedicat lui Stuxnet, Langner l-a numit
definitoriu pentru cariera lui. „Noi am înțeles ca aceasta este
cea mai grozava poveste din istoria malware. Acesta a fost cel mai
bun proiect pe care le-am realizat vreodată”.
Niciun comentariu:
Trimiteți un comentariu