Author Archives: Kati

Petya või… NotPetya

Autor: CERT-EE

Petya lunavaraga nakatunud ostukeskus Kharkyvis.

27. juuni hommikul tabas maailma uus lunavaralaine. Praeguseks on nakatunud mitmete suurettevõtete süsteemid ning on teada, et pahavara levib pärast nakatumist ettevõtete süsteemides ülikiiresti. Esimesed nakatumised toimusid Ukrainas, kus teadaolevalt nakatus pahavaraga üle 12 500 tööjaama. Ööpäeva jooksul on tulnud teateid nakatumistest kokku 64 riigis, sealhulgas Eestis.

Riigi Infosüsteemi Ameti andmetel on Eestis asuvatest ettevõtetest pahavaraga nakatunud kaks Saint-Gobaini kontserni kuuluvat ettevõtet: Ehituse ABC ning üks väiksem tehas. Kolmapäeval kella 10.00 seisuga ükski elutähtsat teenust osutav ettevõte või riigiasutus küberrünnaku ohvriks langemisest ei ole teada andnud. Lisaks on hetkel häiritud Kantar Emori e-teenuste kasutamine, kuna firma otsustas kaitsemeetmena nakatumise vastu oma IT-süsteemid kuni levikumehhanismi tuvastamiseni sulgeda.

Teadaolevalt on tegemist Ransom:Win32/Petya lunavara uue versiooniga, mida praeguseks kutsutakse nii Petyaks kui ka NotPetyaks, kuna osade uurijate arvates on tegemist täiesti uue lunavara versiooniga. Tema tüvi on palju arenenum kui varemnähtud Petya lunavara oma.  Lunavara kasutab levimiseks mitut erinevat meetodit – USA riikliku julgeolekuteenistuse (NSA) sel kevadel lekkinud EternalBlue haavatavust, WMIC (Windows Management Instrumentation Command-line – Windowsi halduse käsurida) ja PSEXEC tööriistu. Seetõttu võivad ka korralikult uuendatud süsteemid nakatuda, kui asutuses pole rakendatud parimad turvapraktikad Windows domeeni kaitsmiseks ja kasutajakontode haldusel. Uuel lunavaral on sarnaselt WannaCryle ussi omadused, mis lubab tal nakatunud võrkude vahel lateraalselt liikuda. Lateraalne tähendab lihtsustatult öeldes, et ründe lähte- ja sihtkoht on samas võrgus.

Täiendus 29.6.2017: Lisandunud on uus info (Kaspersky LabComae Technologies), et tegemist võib olla pahavaraga Wiper, mis on loodud arvutite saboteerimiseks ja hävitamiseks. Pahavara käitub nagu tavaline lunavara, kuid pahavara lähtekoodist leiti, et sellele pole lisatud failide taastamise varianti ning pahavara eesmärk on failid jäädavalt kustutada.

Kohaletoimetamine ja paigaldus

Algne nakatumine paistab hõlmavat Ukraina maksuarvestustarkvara tootja M.E Doc toote MEDoc kasutajaid. Kuigi selle nakatumisvektori ümber liikus mitmeid spekulatsioone nii meedias kui ka infoturbeekspertide hulgas, sealhulgas Ukraina Küberpolitseis, puudusid selle ründevektori kohta konkreetsed tõendid. Microsoftil on praeguseks olemas tõendid, et mõned aktiivsed lunavaraga nakatumised said alguse legitiimsest MEDoc uuendusprotsessist.

All on jälgitud MEDoc tarkvara uuendusprotsessi telemeetriat (EzVit.exe), kus käivitatakse pahatahtlik käsurida, mis vastab täpselt teisipäeval, 27/06/2017, umbes kell 10.30 tuvastatud ründemustrile. Käivitusahela diagramm viib lunavara paigaldamisele ning see omakorda kinnitab, et EzVit.exe protsess MEDocist, siiani tundmatel põhjustel, käivitas järgneva käsurea:

C:\\Windows\\system32\\rundll32.exe\” \”C:\\ProgramData\\perfc.dat\”,#1 30

Samasugust uuendusvektorit mainis ka Ukraina Küberpolitsei avalikus kompromiteerumisindikaatorite listis, mis hõlmas ka meDoc uuendajat.

Ainult üks lunavara, mitmed lateraalsed liikumistehnikad

Võttes arvesse uuele lunavara lisatud lateraalse liikumise võime, on terve võrgu nakatumiseks vajalik ainult ühe masina nakatumine. Lunavara leviku funktsionaalsus on kombineeritud erinevaid meetodeid kasutades, mille eesmärgid on:

  • kasutajainfo vargus või olemasolevate aktiivsete sessioonide taaskasutamine,
  • failijagamiste kasutamine nakatunud faili jagamiseks samas võrgus asuvate masinate vahel,
  • olemasolevate legitiimsete funktsionaalsuste ärakasutamine laengu käivitamiseks või SMB haavatavuste ärakasutamiseks vananenud tarkvara kasutavates masinates.

Lateraalne liikumine kasutajainfo varguseks ja kellegi teisena esinemiseks

See lunavara paigaldab kasutajainfo varastamiseks loodud tööriista (tavaliselt .tmp fail %Temp% kataloogis), mille koodil on teatavad sarnasused Mimikatziga ja mis on loodud nii 32-bit kui ka 64-bit versioonidena. Kasutajad logivad tihti sisse lokaalse administraatori õigustes kontoga. Kui lunavara käivitub administraatori õigustes, võib sellel sõltuvalt operatsioonisüsteemi versioonist ja rakendatud turvameetmetest õnnestuda mälust kätte saada autentimiseks vajalik info (paroolid, parooliräsid, Kerberos autentimispiletid). Seda infot kasutades võib omakorda olla võimalik saada ligipääs teistele samas domeenis asuvatele masinatele.

Pärast kehtiva kasutajainfo saamist skaneerib lunavara lokaalvõrku tcp/139 ja tcp/445 portidega ühenduste loomiseks. Eriline käitumine on reserveeritud domeenikontrollerite ja serverite jaoks. Lunavara proovib funktsiooni DhcpEnumSubnets() abil leida alamvõrgus kõiki DHCP liisingu saanud hoste. Juhul kui pahavara saab vastuse, proovib ta kopeerida kaugmasinasse binaari kasutades failiedastusfunktsionaalsust ja varastatud kasutajainfot.

Pärast seda proovib pahavara ennast kaugelt käivitada, kasutades kas PSEXEC või WMIC tööriistu. Lunavara üritab paigaldada legitiimse psexec.exe faili, mis on tavaliselt ümber nimetatud dllhost.dat nimeliseks failiks, pahavara enda sees asuvast varjatud ressursist.  Seejärel asub pahavara skaneerima lokaalvõrku admin$ kaustade leidmiseks, misjärel ta kopeerib ennast teistesse võrgus olevatesse arvutitesse ja käivitab vastselt kopeeritud pahavarabinaari kaugelt psexec abil.

Lisaks kasutajainfo kaadumisele (dumpimisele) püüab pahavara ka CredEnumerateW funktsiooni kasutades varastada kasutajainfot, mis on saadaval. Juhul kui kasutaja nimi algab “TERMSRV/” ja tüüp on seatud 1-le (generic), kasutab see antud kasutajainfot võrgus edasilevimiseks.

Lunavara kasutab ka Windows Management Instrumentation Command-line (WMIC) käsurida kaugketaste tuvastamiseks, millele ennast seejärel levitada, kasutades selleks NetEnum/NetAdd). See kasutab kas konkreetse kasutaja duplikaattokenit (olemasolevate sessioonide jaoks) või kasutajanime/parooli kombinatsiooni (legitiimsete tööriistade kaudu levimiseks).

Lateraalne liikumine EternalBlue ja EternalRomance haavatavusi kasutades

Uus lunavara suudab levida ka kasutada varasemalt paigatud SMB haavatavust CVE-2017-0144, laiemalt tuntud kui EternalBlue, mida kasutati ka WannaCry levitamiseks aegunud tarkvara kasutavatel masinatel. Lisaks kasutab Petya ära ka teist haavatavust CVE-2017-0145, laiemalt tuntud kui EternalRomance, millele on ka juba turvapaik olemas.

Petya lunavara puhul on täheldatud nende haavatavuste ärakasutamist SMBv1 pakettide genereerimise näol, mis on kõik XOR 0xCC krüpteeritud, selleks et neid haavatavusi rakendada:

Info mõlema haavatavuse kohta lekitas grupp nimega Shadow Brokers. Märkimisväärne on veelkord see, et mõlemale haavatavusele on Microsoft 14/03/2017 väljastanud turvapaiga: technet.microsoft.com/en-us/library/security/ms17-010.aspx ja support.microsoft.com/en-us/help/4013078/title.

Krüpteerimine

Lunavara krüpteerimiskäitumine olenev pahavara privileegide tasemest ja protsessidest, mis nakatunud masinal jooksevad. Pahavara kasutab selleks lihtsat XOR-baasil räsialgoritmi protsessinime osas ning kontrollib seda järgnevate räsiväärtuste osas, mida käitumismustrist välja jätta:

0x2E214B44 – kui masinas leitakse sellise räsinimega protsess, ei nakata lunavara MBRi.

0x6403527E or 0x651B3005 – juhul kui leitakse selliste räsinimedega protsessid ei teosta lunavara ühtegi võrguga seotud toimingut (nagu näiteks SMBv1 haavatavuse ärakasutamine).

Seejärel kirjutab lunavara otse master boot recordile (MBR) ning seab sisse süsteemi taaskäivituse. See loob ülesande masin 10–60 minuti pärast välja lülitada. Täpne aeg on saadakse (GetTickCount()) kasutades, näiteks:

schtasks /Create /SC once /TN “” /TR “<system folder>\shutdown.exe /r /f” /ST 14:23

Pärast MBRi edukat muutmist kuvab see alloleva võlts süsteemiteate, mis informeerib kasutajaid vigasest kettast ning annab infot võltskäideldavuse kontrollist:

Pärast taaskäivitust kuvatakse kasutajale juba allolev teade:

Lunavara üritab MBR koodi üle kirjutada vaid juhul, kui ta on omandanud kõrgeima privileegi (näiteks juhul kui SeDebugPrivilege on lubatud).

Lunavara proovib krüpteerida kõiki ketastel olevaid alloleva laiendiga faile kõikides kaustades, välja arvatud C:\Windows:

.3ds     .7z       .accdb .ai

.asp      .aspx    .avhd   .back

.bak     .c         .cfg      .conf

.cpp     .cs        .ctl       .dbf

.disk    .djvu    .doc     .docx

.dwg    .eml     .fdb     .gz

.h         .hdd    .kdbx   .mail

.mdb    .msg    .nrg      .ora

.ost      .ova     .ovf     .pdf

.php     .pmf    .ppt      .pptx

.pst      .pvi      .py       .pyc

.rar       .rtf       .sln      .sql

.tar       .vbox   .vbs     .vcb

.vdi      .vfd     .vmc    .vmdk

.vmsd  .vmx    .vsdx   .vsv

.work   .xls      .xlsx    .xvd

.zip

Erinevalt teistest lunavara liikidest ei tekita Petya/NotPetya failidele lisalaiendit, vaid lihtsalt kirjutab olemasolevad failid üle. Krüpteerimiseks genereeritud AES võtmed on masinapõhised ning need kasutavad ründaja 800-bit suurust RSA avalikku võtit. Pärast krüpteerimist kuvatakse kasutajale README.TXT fail sama tekstiga, mis kasutajatele ekraanilgi kuvatakse. Lunavara tühjendab System, Setup, Security, Application event logid ning kustutab NTFS info.

Kuidas Windows Defenenderi abil leida?

Windows Defender Advanced Threat Protection (Windows Defender ATP) on sissetungimise järgne lahendus, mis pakub modifitseeritud tuvastamist ilma signatuuride uuendamiseta. WDATP sensorid monitoorivad ja koguvad jooksvalt lõpp-punktidest telemeetriat ning pakuvad masinõppe lahendust tavalistele lateraalsetele liikumistehnikatele ja tööriistadele, mida see lunavara kasutab, nagu näiteks PsExec.exe käivitamine teise failinimega ja “perfc.dat” faili loomine teistes kaustades. Ilma lisauuendusteta võib nakatunud masin näha välja nagu alloleval pildil:

Teine alert keskendub lunavara dll faili jagamisele võrgus ning see annab infot Kasutaja konteksti kohta. Allolev kasutaja on kompromiteeritud ning teda võib pidada esimeseks nakatunuks:

Kuidas ennast kaitsta?

Hoia oma Windows 10 süsteeme ajakohastena, sest see tagab Sulle ka ajakohased kaitsemeetodid. Lisakaitsena lubab Windows 10S ainult paigaldada rakendusi, mis pärinevad Windows Store rakendusest, mis mainitud operatsioonisüsteemi kasutajatele omakorda lisakaitset pakub.

Lisaks soovitame veenduda, et on tehtud järgmised uuendused ja toimingud:

Lisalugemist leiate allolevatelt veebilehtedelt:

Mis on Stack Clash?

Autor: CERT-EE

Stack Clash on mitmete operatsioonisüsteemide mäluhalduse haavatavus, mis mõjutab Linuxi, OpenBSD, NetBSD, FreeBSD ja Solarise i386 ja amd64 operatsioonisüsteeme. Konkreetset haavatavust on võimalik ära kasutada mälu rikkumiseks ning omavoliliseks koodi käivitamiseks. Pärast haavatuse ilmsikstulekut arendas Qualys seitse erinevat eksploiti ning seitse kontseptsiooni tõestust. Seejärel arendati koos tarnijatega vastavad turvapaigad. Turvapaigad on kättesaadavad alates 19. juunist ning tuletame meelde, et väljatöötatud turvapaikade kohene paigaldamine on rangelt soovituslik.

Suuremõõtmeline kollisioon. Allikas: http://cdn.desktopwallpaper4.me/

Pinu kollisioon

Iga arvutil jooksev programm kasutab spetsiaalselt mäluregiooni, mida nimetatakse pinuks (stack). Mäluregioon on eriline, kuna see kasvab automaatselt, kui programmil ilmneb vajadus rohkema pinu-mälu järele. Kuid kui mäluregioon kasvab liiga kiiresti ning jõuab teisele mäluregioonile liiga lähedale, võib programm pinu teise mäluregiooniga segamini ajada, mis omakorda lubab kurjategijal seda segadust ära kasutada ning pinu teiste mäluregiooniga üle kirjutada (või siis risti vastupidi toimida). Just selle järgi on haavatavus ka oma nime saanud. Esimene samm selle haavatavuse ärakasutamisel on pinu kollisioon teise mäluregiooniga, millest tulenevalt ka nimi.

Uus haavatavus?

Ühene vastus on – Ei! Esimest korda kasutati pinu kollisiooni ära 2005. aastal ning järgmine kord alles 2010. aastal. Pärast 2010. aasta haavatavust arendas Linux sarnaste ärakasutamiste vastu kaitsemeetodi – niinimetatud pinu kaitseleht. Praeguseks teame aga, et pinu kollisioonid on laiaulatuslikud ning hoolimata pinu kaitselehest siiski ärakasutatavad.

Üks või mitu haavatavust?

Peamine Stack Clashi haavatavus on CVE-2017-1000364 ning see demonstreerib, et mõne kilobaidi suurune pinu kaitseleht on ebapiisav. Teemat lähemalt uurides tuvastati rohkem haavatavusi. Mõned neist on sekundaarsed ning avalduvad vaid pärast Stack Clashi haavatavuse ärakasutamist, näiteks CVE-2017-1000365, kuid on ka eraldi ärakasutatavaid haavatavusi nagu näiteks CVE-2017-1000367.

Kas Stack Clash mõjutab ka mind?

Juhul, kui Sa oled i386 või amd64 arhitektuuriga Linuxi, OpenBSD, NetBSD, FreeBSD või Solarise kasutaja, on vastus – Jah! Teised operatsioonisüsteemid võivad samuti haavatavad olla, kuid neid ei ole konkreetse haavatavuse osas hetkel lähemalt uuritud.

Stack Clashi ohud?

Konkreetse uurimise käigus tuvastati ainult lokaalne privileegide eskaleerimine – ründaja, kellel on mõjutatud süsteemile ükskõik milline ligipääs, saab Stack Clash haavatavust kasutades omandada root-kasutaja õiguse. Praeguseks ei ole tuvastatud, et haavatavus lubaks kaugligipääsu. Siiski ei saa selle olemasolu välistada.

Mida mina teha saan?

Uuendada, uuendada, uuendada! 19. juunil väljastati turvapaigad, mille iga kasutaja omale ise paigaldada saab. Juhul kui kasutaja ei saa või ei taha oma süsteemi taaskäivitada, saab ta oma lokaalsele kasutajale teha RLIMIT_STACK ja RLIMIT_AS välistele teenustele mõistlikult väikese väärtusega. Selle tegevuse käigus tuleb siiski meeldes pidada, et etteantud väärtused ei pruugi olla piisavalt madalad kõikidele rünnetele vastupidamiseks. Näiteks osadel juhtudel kasutab Sudo pinu kollisiooni haavatavus vaid 137 MB kuhimälu (heap-memory) ning peaagu mitte üldsegi pinumälu. Samuti võib juhtuda, et seatud väärtused on liiga madalad ning tegelikud rakendused lakkavad töötamast.

Lisainfot leiab linkidelt:

Crash Override ehk krahhiv sürjutamine

Foto: ML Banner, allikas: http://www.mlbanner.com

Autor: CERT-EE

Turvaettevõttega Dragos võttis juuni alguses ühendust Slovakkia antiviiruse tootja ESET, kes teavitas neid tööstuslike juhtimissüsteemide jaoks kirjutatud pahavara leidmisest. Dragose meeskond leidis tänu laekunud teavitusele pahavara näidiseid, tuvastas uued funktsionaalsused ning võimalikud käivitusstsenaariumid. Lisaks leidis Dragos ka kinnituse, et tegemist on sama pahavaraga, mida kasutati 2016. aasta detsembris Kiievis kõrgepinge alajaama juhtimissüsteemi ründamiseks põhjustades ulatusliku elektrikatkestuse.

“CrashOverride” või siis maakeeli “krahhiv sürjutamine”, on teadaolevalt esimene pahavararaamistik, mis on disainitud spetsiaalselt elektrivõrkude ründamiseks. Oluliseimad koostisosad on tagauks, mis tagab ligipääsu nakatunud süsteemile, laadimismoodul, mis sõltuvalt sihtmärgist valib sobiva lasti ning individuaalsed lastimoodulid.

CrashOverride käivitamise ja sõltuvuse ülevaade. Allikas: https://arstechnica.com

Mis teeb Crash Override nii kõrgetasemeliseks, on selle võime kasutada elektrivõrkude spetsiifilisi andmeside protokolle, mida kasutavad elektrivõrgu juhtimissüsteemid alajaamadega suheldes. Sellest tulenevalt on pahavara veelgi märkimisväärsem, et pahavara omab eraldiseisvaid mooduleid kõikidele tänasel päeval globaalselt levinud elektrivõrgu juhtimisprotokollidele. Pahavara kasutati Ukrainas juhtimissüsteemi matkimiseks, mis edastas alajaama lülititele korraldusi liinide sisse ja välja lülitamiseks. Lisaks elektrikatkestustele võib kõrge koormusega elektriliinide korduv lülitamine füüsiliselt kahjustada alajaamade lülitusseadmeid, põhjustades märkimisväärset varalist kahju võrguettevõttele.

Olulist:

  • Pahavara identifitseerib ennast ise mitmetes kohtades “krahhina” (crash), mille tõttu on pahavara raamistik ka oma nime saanud.
  • CrashOverride on esimene pahavararaamistik, mis on disainitud ja kasutusse võetud elektrivõrkude ründamiseks.
  • CrashOverride on teadaolevalt neljas tööstuskontrollsüsteemide vastu suunatud pahavara (esimesed kolm olid Stuxnet, BlackEnergy ja Havex) ning teine, mis on disainitud ja loodud füüsiliste protsesside halvamiseks (esimene oli Stuxnet).
  • CrashOverride ei ole unikaalne ühelegi konkreetsele seadmetootjale või konfiguratsioonile ning selle asemel kasutab ta kahju tekitamiseks ära teadmisi elektrivõrgu juhtimissüsteemide toimimise põhimõtetest ja võrgukommunikatsioonist, olles seega kasutatav nii Euroopas kui ka osades Lähis-Ida ja Aasia riikides.
  • CrashOverride on laiendatav ning mõningase vaevaga, nagu näiteks DNP3 protokollimooduli lisamisega, on see kohaldatav ka Põhja-Ameerika elektrivõrkudele.
  • CrashOverride’i saaks samaaegselt käivitada ka mitmetes asupaikades, kuid tänu kohapealsete ümberlülituste võimekusele elektrivõrgus ei oleks see stsenaarium kataklüsmiline ning sellele järgneks mõnetunnine, halvimal juhul mõnepäevane katkestus, mitte mõne-nädalane või pikem.
  • CrashOverride’i raamistik ei ole loodud spionaaži eesmärgil ning pahavara ainsaks eesmärgiks on elektrivõrgu teenuse katkemiseni viivate rünnete tekitamine.
  • CrashOverride oleks laiendatav teiste tööstusharudeni lisaprotokollimooduleid kasutades, kuid ründajad ei ole ilmutanud põhjalikke taustateadmisi teistest füüsilistest tööstusprotsessidest ning antud oletus on praegusel hetkel hüpoteetiline.
  • Dragos on tuvastanud, et CrashOverride’i taga on grupeering nimega Electrum ning Dragose hinnangu alusel on Electrumil otsesed seosed Sandwormi meeskonnaga.

Kaitsesoovitused

Lisaks tavapärastele esmastele kaitsemeetmetele on rangelt soovituslik võtta kasutusele alltoodud kaitsemeetmed:

  • Elektriettevõtete turvameeskondadel peab olema selge arusaam, kus ja kuidas kasutatakse IEC104 ja IEC61850 protokolle. Erilist tähelepanu tuleb pöörata antud protokollide andmemahtude suurenemisele võrreldes tavaolukorraga. Lisaks tuleb süsteemidest otsida antud protokollide võrguliiklust, mis ei kuulu teadaolevatele seadmetele.
  • Ära unusta OPC protkolli! CrashOverride’i käivitumise puhul on täheldada ka OPC protokolliga seadmete skaneerimist, mis tekitab tavapärasest rohkem võrguliiklust.
  • Seadmete konfiguratsiooni- ja projektifailide tagavarakoopiad peaksid olema varundatud offline andmekandjatele ning eelnevalt testitud. See aitab maandada pahavara jälgede kustutamise funktsionaalsusest tulenevat kahju.
  • Valmistage eelnevalt ette intsidendi lahendamise plaan ning võimalusel viige läbi harjutus, kaasates vajalikud huvigrupid, kaasa arvatud tehnilise-, tootmise-, infotehnoloogia- ja turvapersonali. Stsenaarium peaks hõlmama alajaamade töö katkemist ning käsitsi teostatavate toimingute tegemist SCADA keskkonna taastamiseks ning sündmuse analüüsiks vajalike tõestusmaterjalide kogumist.
  • Otsige oma võrkudest YARA reeglite ja teiste kompromiteerumise indikaatorite abil.

Lisalugemist: