Kodėl ir kaip saugumo programos apsaugo pačios save?

Kitas straipsnis

Nepriklausomas antivirusinės programinės įrangos testavimo institutas AV-TEST paskelbė saugumo sprendimų savisaugos testo rezultatus. Testo metu buvo stebima, kaip gamintojai apsaugo savo produktus nuo galimo išnaudojimo per programinio kodo saugumo „skyles“. Kalbant tiksliau, buvo tiriama ar veikia ASLR (Address Space Layout Randomization) ir DEP (Data Execution Prevention) technologijos. Jos paremtos atviro kodo apsaugos mechanizmais ir bendrai yra rekomenduojamos kaip standartinės programinės įrangos apsaugos dalis* (žr. Žemiau).Istoriškai svarbiame pirmajame teste 2014 metais vienintelis produktas, pasiekęs šimtaprocentinį įvertinimą, priklausė ESET. Kitais, 2015, metais ESET šį rekordą apgynė.Ką tokių technologijų naudojimas reiškia galutiniams vartotojams? Į kausimus apie tai atsako ESET technologijų vadovas Palo Luka.Ar saugumą užtikrinančios aplikacijos turi būti saugesnės, nei kitos programos?Tai – tiesiog savaime suprantama. Ne tik dėl to, kad kai kurios programos veikia milijonuose kompiuterių. Pagrindinė priežastis yra ta, kad ši programinė įranga yra itin privilegijuota ir tuo pačiu metu susiduria su nežinomu ar įtartinu turiniu. Todėl aukšto lygio apsaugos užtikrinimui reikia skirti daug laiko. Čia, ESET, mes naudojamės kiekviena galimybe savo saugumą padidinti – pavyzdžiui, įdiegėme ASLR ir DEP technologijas, kurios ir buvo pagrindinė AV testo tema.Kiek šios technologijos yra svarbios?Jos reikalingos saugumui aplikacijose padidinti. Paprastai kalbant, šie metodai reikšmingai sumažina programinės įrangos išnaudojimo galimybę. Vis dėlto reikia pasakyti, jog tai irgi nėra visų problemų sprendimas. Stebime vis daugiau atakų, kuriose naudojamos technologijos, besistengiančios apeiti ASLR ar DEP gynybą.Ar programinės saugumo įrangos vartotojai turėtų rūpintis tuo, įdiegia ar ne gamintojai ASLR ir DEP?Be jokių abejonių, jie turėtų kelti šį klausimą. ASLR ir DEP technologijų naudojimas yra tapęs standartu – ar bent jau juo turėtų būti. Žinoma, yra ir kitų būdų apsaugoti programinę saugumo įrangą nuo išnaudojimo, ir gera žinia ta, kad visi jie puikiai dera su ASLR ir DEP. Taigi tai dar viena priežastis naudoti šias technologijas.Kai kurie programinės saugumo įrangos gamintojai, nenaudojantys ASLR ir DEP, teigia, jog kai kurios trečiųjų šalių failų bibliotekos taip pat jų neturi...Iš dalies tai tiesa, tačiau nėra įtikinantis argumentas. DEP technologija buvo įdiegta į Windows operacinę sistemą jau prieš dešimt metų, o greitai po to sekė ir ASLR.Taip pat teigiama, jog atskiri failai veikia su konkrečių įmonių technologijomis, kurios nėra suderinamos su ASLR ir DEP.Tokius pareiškimus reikėtų daryti atsargiai, nes tai reikštų, jog programinės įrangos kodas parašytas taip, kad jis neleidžia įdiegti standartinių saugumo metodų. Žinoma, gali būti modernių būdų apsaugoti saugumo programas, vis dėlto aš įtariu, jog tai – senų programavimo technologijų likučiai. Todėl aš pasisakau griežtai prieš.Tarp kitų argumentų yra ir tai, jog ASLR ir DEP neapsaugoti failai nebėra aktyviai naudojami, todėl nekelia jokios rizikos.Tai skamba logiškai iki tol, kol paklausiame savęs, kodėl tie failai vis dar yra pirminė programos dalis. Atvirai kalbant, aš vengčiau švaistytis tokiais argumentais, nes taip pripažįstama, jog programinė įranga prigrūsta atgyvenusių reliktų, o tai sudaro nekokią jos gamintojo reputaciją.Galų gale gamintojai sako, jog jų programinė įranga pagrįsta kitais saugumo metodais, pavyzdžiui, CIF, Control Flow Integrity, dar kitaip vadinama „smėlio dėže“.Taip, iš tiesų esama pažangesnių technologijų, kurias aš pilnai rekomenduoju naudoti. Vis dėto jos turėtų būtų įdiegiamos kaip papildomos, bet ne kaip standartinių metodų pakaitalas. Tiesą sakant, mano nuomone, ASLR ir DEP naudojimas turėtų būti ne pasirenkamas, o privalomas.2014 metais ESET buvo vienintelė programinės įrangos gamintoja, savisaugos teste surinkusi 100 procentų. Šiemet prie ESET prisijungė dar penki gamintojai. Ką apie tai galvojate?Tikrai nenoriu spekuliuoti motyvacijos klausimu, tai yra, ar šie gamintojai apsaugo savo programas dėl vartotojų saugumo ar tam, kad gerai pasirodytų testų metu. Mums, ESET, nepriekaištingas įvertinimas testo metu tėra šalutinis mūsų pagrindinio tikslo – suteikti vartotojams pačią geriausią apsaugą – efektas.*Antivirusinių programų apsaugaKenkėjiškos programos bolokuodamos saugumo sprendimus siekia juos išjungti. Apsaugos tehnologijos, tokios, kaip DEP (Data Execution Prevention) ir ASLR (Address Space Layout Randomization) sumažina atakos riziką ir padidina bendrą programos apsaugos lygį.ASLR, arba Address Space Layout Randomization, keičia sistemos atminties vietas tam, kad išnaudoti saugumo spragas taptų sudėtingiau. Naudojant ASLR, adresai atsitikinumo principu paskirstomi po aplikacijas. Taip siekiama apsaugoti ar bent jau sukliudyti „buferio“ atakas.DEP, arba Data Execution Prevention, dar žinomas kaip NX-Bit (No eXecute). Šis apsaugos būdas diegiamas jau į techninę įrangą. Mikroschemų gamintojai AMD ir Intel šią technologiją EVP ir XD-Bit vardais diegia į visus savo procesorius daugaiu kaip dešimt metų. Taip siekiama neleisti programoms paleisti veikti atsitiktinių duomenų kaip programų, taip paleidžiant kenkėjišką kodą.Šaltinis: www.av-test.org