DEP – mis see on ja keda ta aitab

 

Kasutan juba aastakese uut operatsioonisüsteemi VISTA. Nii 32-bitist, kui nüüd ka 64-bitist versiooni.

Olen kogenud, et arvutikasutajad jagunevad enamvähem kahte lehte – ühed tahavad, et andke mulle mu XP tagasi, teised, keda ka püssiähvardusel ei saa XP juurde tagasi. Nojahh – tegelikult on olemas ka kolmas seltskond, kelle jaoks VISTA või XP on jummala savi, sest nad kasutavad miskiseid muid süsteeme, MAC OS-i või Linuxit. Ja ma mõistan ka neid. Ise olen jäägitult lülitunud VISTA kasutajate hulka ja enne uut opsüsteemi, mind sealt välja ilmselt ei saa.

Täna räägin ühest toredast asjast, mis VISTA kasutajatele võiks meeldida, nende elu turvalisemaks teha ja mis näiteks serverite haldajatel peaks kohustuslik olema. Võimalik, et see oli ka Windows XP ajal juba olemas, aga kuna mina teda üles ei leidnud, siis minu jaoks teda olemas ei olnud. (NB! Tegelikult on see võimalus Windows XP SP2-st alates olemas – vt http://www.microsoft.com/technet/security/prodtech/windowsxp/depcnfxp.mspx).

Jutt käib kaitsemehhanismist DEP – Data Execution Protection ehk andmekäivituskaitse (ps – see on minu oma väljamõeldud termin, ma ei vastuta, et see ametlik võiks olla). Osa allikaid nimetab seda sama lühendit Data Execution Prevention ehk andmekäivitusennetus.

Selleks et kõik ilusti ära rääkida, tuleb alustada algusest. Meie igaühe arvutis on mälu. Seal mälus on nii programmid, mida jooksutatakse (programmi kood) kui ka kõikvõimalikud andmed, mida need programmid siis töötlevad. Lisaks on seal segiläbi KÕIGI programmide koodid ja andmed ja mis veel hullem, kui need andmed sinna mällu ei mahu (nohh et programme on palju), siis osa tõstetakse aegajalt tänavale ootama (selleks on olemas swapfail e eesti keeli saalefail). Kõik see ikka sellepärast, et meie arvuti saaks korraga ja läbisegi teha sadat erinevat asja. Kogu selle tohuvapohu üle valvab selline tehnoloogia nagu virtuaalmälu aj mäluhaldur, nii et programmid ilusti "näeks" ainult oma mälu ja ei saaks üksteisele kurja teha.

Igal porogrammil on seega "oma" mälu ja selles on tema koodiosa ja andmed. Tavaliselt ei mõtle programmeerija, kuidas need seal mälus paiknevad ja see pole ka tema asi. Aga kui andmed ja prgrammikood on mälus läbisegi, siis võib juhtuda järgmine lugu – programmi mingi vea tõttu muudab ta ise oma andmete asemel oma koodi või annab juhtimise mingi vea tõttu aadressile, kus ei ole programmikood vaid on mälu. Tavaliselt selliste vigade peale programm "jookseb kokku". Aga kavalad kurikaelad oskavad programmide selliseid vigu ära kasutada – programmile söödetakse ette sellisel moel sobivalt vigaseks tehtud andmed, et need koodiosas paistavad "päris koodina" ja programm hakkab talle ette söödetud andmeid käskudena täites tegema hoopis midagi muud, kui see, mis ta plaanis. Just sel moel toimub lõviosa arvutite ründamisi ja sissemurdmisi. Otsitakse turvaauk, uuritakse seda oma masinas, proovitakse millise andmekogusega annaks seda ära kasutada ja siis rõõmustatakse, kui mõni võõras arvuti sel moel ohvriks langeb.

DEP muudab sellise vea ärakasutamise võimatuks. Opsüsteemi tuum (kernel) märgib need mälutükid, mis ta programmi käsutusse annab ära – kus on programm ja kus on andmed. Andmete muutmine programmiosas on kinni keeratud ja koodi täitmine andmete osas samuti. Tulemuseks on, et eelpoolmainitud vigased programmid jooksevad lihtsalt kinni ja neid ei saa enam sundida pahandusi tegema. Selline kaitse on sisse lülitatud juba riistvara tasemel – st ei sõltu programmeerija või kasutaja tahtest. Inteli tõugu protsessoritel (need, mida enamasti koduarvutites kasutatakse) on selline kaitsevõimalus juba mõnda aega olemas, operatsioonisüsteemid aga ei taha seda niisama lihtsasti toetada. Ma ei tea teistest, aga igatahes VISTA-l on see olemas. See tuleb vaid sisse lülitada.

DEP-i saab sisse lülitada operatsioonisüsteemi tasemel või programmide kaupa – see viimane on küll natuke viigilehe moodi, sest jätab ikkagi selle kaitse mingite süsteemsete programmide meelevalda. Mina lülitasin selle oma arvutil sisse operatsioonisüsteemi tasemel. Selleks tuleb natuke modifitseerida BCD-d (boot configuration datat – varasema Boot.INI asendaja) – põhimõtteliselt tuleb operatsioonisüsteemi käivitamiseks lisada võti /noexecute=AlwaysOn.

Peale DEPi sisselülitamist ei juhtunud midagi hullu. Kõik toimis ilusti nagu ennegi. Välja arvatud …

Terve hulk programme hakkas kas vea tõttu kinni jooksma või ei käivitunud. Need on siis sellised, mis on kas "valesti" tehtud või vigased. Ent süüdlaste hulgas ei ole siiani olnud ühtegi mulle eluliselt tähtsat, siis ma lihtsalt ootan – millal mõni mulle hädavajalik teatab, et ta enam ei ole nõus toimima.

Väike väljavõte siis programmidest, mis on peale DEPi sisselülitamist jonnima hakanud:

  1. Adobe Reader (see millega PDFe vaadatakse) 8.1. Andis korra veateate ja sulgus. Muidu toimib. Viide sellele, et programmis on mingi viga, mida programm ise oskab kasutajate eest varjata.
  2. X-Lite (minu senine lemmik telefoniprogramm – see millega ma arvutist tavatelefonidele üliodavalt helistan) – leian talle alternatiivi.
  3. XPlorer2 (kahepaaniline Explorer) – enam ei toimi
  4. Notepade+ (võimas asendusriist tektstieditoriks) – enam ei toimi
  5. X10 vahedraiver (vajan ainult koos remote controlliga) – enam ei toimi

Olin isegi pisut üllatunud, kui palju on selliseid vigaseid programme, mille puhul ei osanud kahtlustada neid. Suur osa nn tasuta programme, mille eest keegi ei vastuta ja mille puhul pole kellegagi ka õiendada.

Aga igatahes on mul nüüd mõnus ja kindel tunne ja asi, mis saaksid minu arvutit rünnata on taas natukene vähem

Henn Sarv
Paadunud arvutikasutaja

 

 

This entry was posted in Määratlemata. Bookmark the permalink.

DEP – mis see on ja keda ta aitab on saanud 4 vastust

  1. Leivo ütles:

    Tubli nõuanne.
    NB! kas kolisid täielikult 64bit Vistat peale ?

  2. Jaak ütles:

    Kas sul jookseb sülekas 64-bitine. Kui, siis mis CPU-l?

  3. Henn ütles:

    Nii 32 kui 64 bitine🙂
    Tegelikutl 64 bitine – jooksutan vaheldumisi 64 ja 32 bitti. Inteli 2GHz kahetuumane prose
     
    Lõplikult 64 biti peal ei ole – osa draivereid on puudu (webcam näiteks)
     
    Tänasest on mõlemad ka SP1 varustatud

Lisa kommentaar

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Muuda )

Twitter picture

You are commenting using your Twitter account. Log Out / Muuda )

Facebook photo

You are commenting using your Facebook account. Log Out / Muuda )

Google+ photo

You are commenting using your Google+ account. Log Out / Muuda )

Connecting to %s