1 Uvod
2 Redizajniranje PC hardvera u korist sigurnosti
2.1 Zaklanjane memorije
2.2 Sigurni I/O
2.3 Zatvorena pohrana podataka
2.4 Daljinska ovjera
3 Utjecaj trusted computing-a na osobno računalo
4 Neke krive predodžbe oko trusted computing-a
5 Problemi?
6 Primjeri zlouporabe daljinske ovjere
6.1 Na webu
6.2 Interoperabilnost softvera i lock-in
6.3 DRM, ograničavanja, prisilne nadogradnje
6.4 Vlasnik računala ili neprijatelj
7 Moguće rješenje: Owner Override
8 Verifikacija implementacija
9 Zaključak
10 Literatura
1 Uvod
Računalna sigurnost je jako bitna. Svakim danom se otkrivaju i iskorištavaju nova ranjiva mjesta računala, te tako raste potreba za novim sigurnosnim rješenjima. Namjera 'Trusted Computing'-a je da riješi neke od današnjih problema sigurnosti, kroz promjene hardwera osobnih računala. Glavne namjere trusted computing-a imaju i visoku cijenu za sigurnost: Oni daju sigurnost korisnicima, ali s druge strane daju trećoj strani moć da nameće svoju politiku korisnicima. 'Računala protiv korisnika' - moglo bi se dogoditi ako prepustimo dio kontrole nad PC-om nekom drugom. To je pojava koja bi se mogla zlouporabiti, tako da autori softvera uguše konkurentski softver.
Ali to ne mora nužno biti tako: Promjena planova trusted computing-a bi mogla sačuvati dobre strane sigurnosti računala, a da pritom volja PC korisnika ne mora uvijek podlijegati onome tko je utočio softver u njegov PC.
2 Redizajniranje PC hardvera u korist sigurnosti
Postoji rašireno mišljenje, da je PC sigurnost u jako lošem stanju i da se nešto mora učiniti da se to popravi. Postoje mnogo obečavajućih pristupa da se popravi trenutno stanje sigurnosti, npr. redizajniranje operacijskog sustava, promjena metodologija programiranja ili promjena PC hardvera. Dobro je poznato da će sveobuhvatna obrana, protiv sigurnosnih prijetnji uključivati nekoliko pristupa, a ne samo jedan. Nesiguran sustav ne može samo tako postati siguran da se doda samo jedan dio tehnologije.
Promjena dizajna PC hardvera je samo jedano korisno oruđe između mnogih za poboljšanje sigurnosti. Dok promjene hardvera nisu preduvjet za povećanje sigurnosti, one su bez sumnje korisne - npr. način za sigurno čuvanje privatnih ključeva ( a time osobnih dokumenata koje štite ti ključevi). Jedna porodica projekata za povećanje sigurnosti PC-u je putem promjene hardvera, poznata kao 'trusted computing'. Taj termin obuhvaća skupinu proizvođača hardvera (procesora, sastavljača računala...) i softvera, uz njih se vežu dva veća projekta. Prvi od njih je operacijski sustav Microsofta - službeno nazvan Palladium. Sada se referencira kao Microsoft Next-Generation Secure Computing Base ili NGSCB. NGSCB projekt specificira promjene softvera koje bi koristile prednosti, omogućene planiranim novim PC dizajnom. Drugi projekt su nove specifikacije hardvera koje promiče konzorcija prvo nazvana Trusted Computing Platform Alliance ili TCPA. TCPA je izdao nekoliko dokumenata specifikacija i tada promijenio ime u trusted computing group ili TCG. Međusobno su ta dva projekta stvorila niz novih zbunjujućih terminologija, uključujući obvezatnu kartu novih akronima (skraćenica). U nekoliko slučajeva je jedan projekt izmislio mnogo različitih imena za jedan koncept, iako je već drugi projekt imao potpuno drugu terminologiju za istu stvar. Potpuni rječnik za ta dva projekta bi bio poprilično velik. Zbog jednostavnosti ovdje ćemo reći da se zahtjevi NGSCB-a pretvaraju u pojmove dizajna specificirane od TCG-a. (Microsoft je član TCG-a i izrazio je interes za korištenje TCG dizajna u ulozi hardver komponenti potrebnih za NGSCB. Neki OEM-i (original computer manufactur) su počeli integrirati prve TCG čipove na svoje matične ploče: u budućnosti bi moglo više firmi koje sastavljaju računala, uključiti u svoje konfiguracije naprednije verzije trusted computing čipova. NGSCB softver bi mogla biti jedna od aplikacija koja bi mogla izvući korist od tih čipova.Zasad su još oba projekta zasebna, ali se nazire da će postojati jedinstvena 'trusted computing' arhitektura, prema kojoj idu oba projekta. (Samo dio arhitekture je opisan u nedavno izdanoj TCG specifikaciji i kako TCG navodi, bit će potreban dodatan softver da bi bilo koristi od tih mogućnosti.) Manje su poznati projekti unutar razvoja proizvođača procesora (i TCG članova) Intela i AMD-a koji bi trebali popuniti jaz između toga što je TCG već prije specificirao i onoga što bi NGSCB zahtijevao. Intelova LaGrande Tehnology (LT) i AMD-ova Secure Execution Mode (SEM), npr. omogućuju hardver podrušku potrebnu za glavne potrebe u NGSCB-u. Ovdje se ne govori o Intelovom i AMD-ovom projektu kao odvojenim entitetima. Njihove bi se značajke gradile na TCG specifikacijama, tako da bi nastala hardver podrška koju zahtjeva NGSCB. Jedna važna sličnost između NGSCB dizajna i postojeće TCG specifikacije je da oboje sadrže pojam 'daljinskog ovjerenja'. Iako postoje razlike između Microsoftovog i TCG-ova tehničkog opisa 'daljinskog ovjerenja', oboje daju odgovarajuću podršku operacijskog sustava i oni funkcioniraju na ekvivalentne načine. Bez obzira na to da li NGSCB i TCG projekti konvergiraju na jedinstvenom hardverskom dizajnu, oboje imaju osnovne značajke udaljene ovjere.
Mi trenutno opisujemo rad u nastajanju, ali je vrlo važno da počnemo sada razumijevati predložene promjene u PC-u i njihove efekte u našim računalnim aktivnostima. Općenito govoreći, trusted computing arhitektura je pogrešno vođena provedba vrijedne ideje i donijet će oboje prednosti i nedostatke korisnicima računala. Microsoft predlaže podjelu trusted computing arhitekture na četiri grupe i sve od njih trebaju novi hardver da bi bile dodane u današnji PC. To su:1. Zaklanjanje memorije
2. Sigurni ulazi i izlazi
3. Zatvorena pohrana podataka
4. Daljinska ovjera2.1 Zaklanjane memorije
Zaklanjanje memorije se odnosi na snažno, hardverski izvedeno izoliranje memorije. Time bi se onemogućilo programima da jedni drugima čitaju memorije. Danas, kod provalnik, tj. kod napravljen s takvim zlim namjerama može često čitati ili mijenjati osjetljive podatke u PC memoriji. U trusted computing dizajnu, čak ni operacijski sustav ne bi imao pristup zaklonjenoj memoriji, tako da provalnik koji bi uspostavio kontrolu nad operacijskim sustavom, ne bi bio u mogućnosti interferirati sa programovom sigurnom memorijom. Iako se izolacija memorije može postići i pomoću softvera, to zahtjeva promjenu operacijskog sustava (ponovo pisanje koda), drajvera i moguće softverskih aplikacija. Implementiranje toga u hardveru, daje nam veću kompatibilnost sa postojećim softverom i manje softvera bi se moralo ponovo napisati. (Općenito, mnoge od sigurnosnih značajki trusted computinga se može ostvariti tako da jednostavno ponovo napišemo softver, ali se to čini nepraktično.)
2.2 Sigurni I/O
Sigurni ulazi i izlazi teže k adresiranju prijetnji postavljenih od keyloggera i screen-grabbera, softvera korištenih od strane kradljivaca i provalnika da bi kontrolirali aktivnosti korisnika računala. Kaylogger bilježi ono što pišemo dok screen-grabber bilježi ono što je na ekranu. Sigurni I/O znači, sigurni hardverski putevi od tipkovnice do aplikacije i od aplikacije do ekrana za prikaz. Tako da ni jedan drugi softver koji se vrti na računalu ne može odrediti što je bilo tipkano i kako je aplikacija reagirala na to. (Istovremeno, sigurni I/O pruža zaštitu od nekih drugih ezoteričnih napada. Omogućit će programima da ocijene da li je ulaz dobiven od fizički prisutnog korisnika ili udaljenog programa koji se predstavlja kao korisnik. Također će pobijediti neke slučajeve krivotvorine, gdje jedan program pokušava korumpirati ili maskirati izlaz drugog s namjerom da prevari korisnika.)
2.3 Zatvorena pohrana podataka
Zatvorena pohrana podataka je jedan od glavnih nedostataka PC sigurnosti: nemogućnost PC-a da sigurno pohrani kriptografske ključeve. Uobičajno su ključevi i šifre koje štite privatne dokumente ili račune pohranjene lokalno na računalnom disku isto gdje i sami dokumenti. To se može usporediti sa ostavljanjem kombinacije sefa u istoj prostoriji gdje je i sef. Računalni provalnici mogu često kopirati dekripcijske i signaturne ključeve s računalnog diska. Pošto ključevi moraju biti dostupni korisniku računala za namijenjenu svrhu, inženjeri zaduženi za sigurnost su se našli u neprilikama: kako pohraniti ključeve tako da oni budu dostupni legitimnim korisnicima a ne recimo virusima koji bi željeli dobiti neke privilegije legitimnih korisnika.
Zatvorena pohrana podataka je dovitljiva inovacija koja generira ključeve dijelom na identitetu softvera koji ih zahtjeva a dijelom na identitetu kompjutera na kojem se softver pokreće. Rezultat toga je da se ključevi ne trebaju pohranjivati na hard disku nego mogu biti generirani kad god su potrebni, kao rezultat autoriziranog softvera koji ih pokušava generirati na autoriziranom stroju. Ako dođe do pokušaja da neki drugi program od onog koji je kriptirao ili šifrirao privatne podatke, pokuša dekriptirati ili dešifrirati te podatke, taj pokušaj je osuđen na neuspjeh. Slično, ako se podaci kopiraju u kriptiranoj formi na neko drugo računalo, pokušaj dekriptiranja neće uspjeti. Isto tako Vaš e-mail će moći pročitati Vaš e-mail klijent ali ne i virus. Zatvorena pohrana podataka predstavlja mudro rješenje za prijašnji problem pohrane ključeva. Npr. pretpostavimo da držite privatni dnevnik na svom osobnom računalu. Želite spriječiti da dnevnik bude maknut s Vašeg računala bez Vašeg dopuštenja, isto kao da hoćete zaključati dnevnik u papirnatom formatu u ladicu svog radnog stola. Dosadašnje kontrole pristupa i kriptiranja bi trebale to raditi, ali one se mogu zaobići ili srušiti. Ako netko kompromitira Vaš sustav ili se inficira virusom ili crvom, lokalni se softver može promijeniti, ili privatni podaci mogu biti poslani na drugo računalo putem e-maila. (The SirCam e-mail crv je prije to radio, kad god bi inficirao računalo, slao bi podatke koje bi pronašao e-mailom na slučajno odabrane korisnike Interneta. Velik broj privatnih i povjerljivih podataka su neprimjerno odani kao rezultat toga.)Možete kriptirati svoj dnevnik koristeći šifru, ali ako je ona kratka, netko tko može kopirati Vaš kriptirani dnevnik može ga dekriptirati ( tako da isproba sve moguće kombinacije). Nadalje, ako je softver koji koristite ili u kojem pišete dnevnik, potajno zamijenjen modificiranom verzijom, mogao bi van procuriti dekriptirani tekst dnevnika (ili Vaša šifra) nekoj sasvim trećoj strani.
Zatvorena pohrana podataka se može koristiti zajedno sa zaklanjanjem memorije i sigurnim I/O, te to osigurava da se Vaš dnevnik može čitati samo s Vašeg računala i samo s određenim softverom koji ste Vi odredili. Iako virus ili crv kao SirCam uzme Vaš kriptirani dnevnik, neće ga moći dekriptirati. Ako provalnik ili virus potajno promjeni Vaš softver za kriptiranje, neće više biti u stanju dekriptirati dnevnik, tako da će sadržaj vašeg dnevnika i dalje ostati zaštićen.
2.4 Daljinska ovjera
Daljinska ovjera je najznačajniji i najrevolucionarniji element od ta četiri opisana od strane Microsofta. Uglavnom, namjerava se dopustiti da se 'neautorizirane' promjene softvera detektiraju. Ako je napadač zamijenio koju Vašu aplikaciju ili dio operacijskog sustava sa opasnom modificiranom verzijom, moći ćete to primijetiti. Po?to je ovjera 'daljinska', ostali s kojima ćete biti u doticaju, moći će to također primijetiti. Isto tako će se moći spriječiti slanje povjerljivih podataka kompromitiranom sustavu. Ako bi netko provalio u Vaše računalo, ostala računala će se suzdržati od slanja privatnih informacija, tako dugo dok se to ne popravi.
Dok je daljinska ovjera očigledno korisna, trenutni pristup TCG-a prema ovjeri je nedostatan. TCG očigledno ne uspijeva razlikovati između aplikacija koje štite korisnika računala od napada i aplikacija koje štite računalo od njegovog korisnika. Zapravo vlasnik se ponekad tretira kao još jedan napadač ili neprijatelj koji mora biti spriječen od provaljivanja i mijenjanja računalnog softvera.
Daljinska ovjera radi tako da generira, u hardveru, kriptografski certifikat ovjeravajući identitet softvera koji se trenutno izvodi na PC-u. (Time se ne daje na znanje da li je softver dobar ili loš, ili da li je kompromiran ili nekompromiran. 'Identitet' se reprezentira sa kriptografskim miješanjem, koji jednostavno dozvoljava različitim programima da se međusobno razlikuju, ili da se prepoznaju promjene koda, dobivanja bilo kakve korisne procjene.) Taj certifikat se može na zahtjev bilo kojeg korisnika, dobiti od bilo koje udaljene strane i u principu ima efekt dokaza toj strani, da stroj koristi očekivani i nepromijenjeni softver. Ako je softver na tom stroju bio mijenjan, generirani certifikat će to pokazati. Vidjet ćemo da taj pristup iako elegantan, stvara probleme.
3 Utjecaj trusted computing-a na osobno računalo
Svaka od tih četiri grupe može biti korisna za sigurnost računala, jer se svaka može koristiti sa odgovarajućim softverom, da bi se spriječili ili ublažili napadi na osobna računala. PC sa takvom hardverskom podrškom, može omogućiti sigurnost koju bi bilo teško pružiti bez hardverske podrške. Naravno, nedostaci u softveru će i dalje dozvoliti druge napade, uključujući otkrivanje privatnih informacija. Trusted computer tehnologija ne može u cijelosti riješiti problem sigurnosnih rupa. Općenito, da zadrži i limitira štetu koja može nastati kao rezultat određenih nedostataka. Npr. neće biti moguće da nedostatak u kodu jedne aplikacije (kao web pretraživač) zlouporabi za kopiranje ili mijenjanje podataka iz druge aplikacije (kao word procesor). Takav pristup je bitan za istraživanje računalne sigurnosti i koristi se u puno različitih pristupa k računalnoj sigurnosti, uključujući obećavajuće tehnike izvan trusted computinga.
Upravo opisane značajke trusted computinga će dodati nove mogućnosti za PC. Da bi se koristile moraju biti podržavane s odgovarajućim softverom; bez trusted computing softvera, tj. drajvera, trusted computing PC je samo običan PC. Drugim riječima, arhitektura trusted computinga je dizajnirana tako da podržava pokretanje postojećih operacijskih sustava i aplikacijskih programa. Microsoft također predviđa da će buduće verzije Microsoft Windowsa ( koje bi uključivale NGSCB softver) biti unazad kompatibilne i da će moći pokretati sve današnje bitne DOS i Windows aplikacije. Naravno, novi PC-i bi mogli pokretati nove trusted-computing-svjesne aplikacije koje koriste nove hardverske mogućnosti.
4 Neke krive predodžbe oko trusted computing-a
Najobičnija kriva predodžba poriče da će trusted computing PC-i zaista biti kompatibilni i moći pokretati postojeći softver. Moguće je proizvođačima izgraditi PC-e koji neće biti unatrag kompatibilni ili PC-e koji neće moći pokretati određeni kod, ali ništa u TCG specifikacijama ne implicira na to. Važnije je da trusted computing arhitektura ne zahtjeva onemogućavanje izvođenja softvera koji bi prema njoj bio nesiguran, opasan ili nepoželjan. Sigurnosni model bi se umjesto toga trebao bazirati na softver izolaciji. Onemogućavanje programa koji se vrte da međusobno interferiraju.
Kad se programi adekvatno zaštite od interferencije s drugim programima, nema potrebe za sigurnošću, da bi određeni softver mogao biti onemogućen od izvržavanja svog zadatka. Jednako kao više-korisnički operacijski sustavi omogućuju korisnicima da pokreću softver prema njihovom izboru, dok s druge strane štite korisnike od djelovanja tog softvera. NGSCB bi mogao omogućiti korisnicima da koriste softver prema njihovom izboru, te da s druge strane štite druge softver od njihovih efekata. Samo osobito grub sigurnosni model bi zahtijevao potpunu zabranu 'lošeg' softvera na računalu, a NGSCB nije tako grub. U tom pristupu bi bile potrebne neke metode za određivanje koji je softver 'loš' koji bi uistinu mogao raditi štetu. (Neki sustavi za određivanje vlasništva podrazumijevaju da je svaki softver, koji nije potpisan od mjerodavne strane 'loš', ali korisnici bi s pravom odbacili taj težak pristup u računalom okuženju. S pravom se očekuje da se može pisati i koristiti softver bez prethodnog odobravanja neke institucije za to.)Ni jedan hardver specificiran od strane NGSCB-a se ne čini da je specificiran za Microsoft Windows. TCPA/TCG hardver dizajn nije jasno specificiran ni za jedan operacijski sustav. IBM je nedavno publicirao softver pod GNU GPL da bi TCPA TPM čip radio i sa Linux jezgrom. Taj softver nije u mogućnosti poboljšati pohrane kriptografskih ključeva na sustavima baziranim na Linoxu, na hardveru koji podržava TCPA.
Ni TCG ni NGSCB ne mogu sami po sebi spriječiti korisnike od korištenja određenog operacijskog sustava, programa ili podataka. I ni jedan inherentno ne zahtjeva ili uključuje mehanizam za špijuniranje korisnika.
5 Problemi?
Jasno je da trusted computing hardver donosi koristi za sigurnost, ako je softver spreman to iskoristiti. Ali trusted computing je primljen skeptično i ostaje kontraverzan. Neke kontraverzne stvari su bazirane na krivom shvaćanju, ali većina njih je opravdana, jer trusted computing sustav fundamentalno predstavlja vezu temeljenu na povjerenju. Zabrinutosti oko trusted computinga, nisu limitirane na jedno područje kao privatnost korisnika ili povrede autorskih prava.
Postoje dva ozbiljna problema oko trusted computinga. Prvo, nedostaci postojećih dizajna su rizici od anti-konkurentskog i anti-potrošačkog ponašanja. Drugo, proizvođači određenih 'trusted' računala i komponenata bi ih mogli potajno krivo implementirati.
Čak i ako je hardver implementiran prema objavljenim specifikacijama, i dalje se može upotrijebiti na štetu vlasnika računala.
Ako i trusted computing arhitektura donosi dobrobit za sigurnost, ona uključuje mogućnosti zlouporabe, na uštrb korisnika koji bi koristili tu tehnologiju. Glavna značajka među njima je daljinska ovjera, koju Microsoft opisuje kao novo područje u distribuciji računala, jer ne postoje slične mogućnosti u postojećim računalima.
Sigurnosni model mora uključivati i specifikacije modela opasnosti: vrsta napada, vrsta napadača i koje sigurnosne mjere će se poduzeti protiv njih? Sigurnosna mjera koja sprečava jednu vrstu napada može biti potpuno neučinkovita protiv neke druge vrste napada; suprotno, sigurnosne mjere potrebne za neku svrhu, mogu biti beskorisne za one koji nemaju tu potrebu. Najosnovnija zabrinutost koja se javlja je mogućnost da je sustav trusted computing-a smišljeno dizajniran, da podržava modele prijetnje u kojima je vlasnik smatran prijetnjom. Ti modeli su više iznimka nego pravilo u povijesti računala i komunikacijske sigurnosti i nisu dio publikacije pružene od strane zagovornika trusted computinga.Ovjera je podobna u slučaju prevencije promjene softvera bez znanja vlasnika računala, zbog napada npr. virusa. Nažalost, model ovjere u TCG-u trenutno dizajniran može jednako učinkovito onemogućiti promjenu softvera na računalu, od strane njegovog vlasnika, koji to želi i učiniti. Dok je korisnik uvijek slobodan da mijenja softver, ovjera donosi novi rizik: toliko zabrana bi moglo i eliminirati jednu od mogućnosti računala, a to je interakcija s drugim računalima.
Pošto treća strana trenutno ne može reći koji softver Vi koristite, ne posjeduju odgovarajući način da Vas primoraju da koristite softver po njihovom izboru. Taj aspekt statusa quo je skoro uvijek dobrobit za vlasnika računala, u smislu poboljšanja kompeticije, izbora softvera, interoperabilnosti softvera i mogućnosti korisnika da kontrolira svoje računalo, prema tome ni jedna solucija ovjere koja bi promijenila tu situaciju nije od koristi za korisnike računala.
6 Primjeri zlouporabe daljinske ovjere
6.1 Na webu
Web stranica bi mogla zahtijevati ovjeru softvera od ljudi koji žele čitati tu stranicu. Ako bi odbili provesti ovjeru, oni tu stranicu ne bi mogli čitati uopće; ako bi ovjera pokazala da koriste 'neodobreni' softver, stranica bi također odbila surađivati s njima. Samo oni koji bi mogli napraviti digitalni certifikat, dokazujući time da njihovo računalo zadovoljava, bi mogli pristupiti toj stranici. Certifikat bi se mogao napraviti samo ako su svi uvjeti točni, koje daje trenutna shema TCG-a.
Danas ne postoji pouzdani način na koji bi se mogao postići taj efekt. Prema tome, pokušaj da se primora korisnik, da koristi točno određeni softver je neučinkovita; na web stranice se vrši žestoka kontrola koji operacijski sustav i aplikacije njezini korisnici mogu koristiti. Reverzan inženjerski postupak omogućava stvaranje novih softvera koji dobro rade sa postojećim softverom i servisima, zato imaju korisnici realan izbor. Praktički ih je nemoguće kazniti za korištenje drugačijeg softvera nego oni s kojima komuniciraju koriste. Ako žele koristiti drugačiji web preglednik ili operacijski sustav, malo je vjerojatno da će biti isključeni od strane nekog servisa.
Npr. neki današnji on-line bankarski servisi traže Microsoftov preglednik, ali korisnici drugih softvera mogu reći svom pregledniku da glumi Internet Explorer. što se banke tiče, njezini korisnici pristupaju stranici pomoću traženog preglednika, ali korisnici nisu zaključani u tehnološke odluke diktirane kratkovidnim financijskim institucijama.
U široko publiciranom slučaju, MSN, Microsoftova mreža, uredno je odbijala posluživati stranice sa ne Microsoftovim preglednikom. U međuvremenu su korisnici suparničkih proizvoda uspjeli prevariti MSN, da misli da se koriste njihovim preglednikom. To bi bilo nemoguće u okruženju NGSCB daljinske ovjere. Omogućujući web stranici da tako isključuje neželjeni softver, te ovjere bi omogućile kontrolu izbora softvera. Sigurnost nema ništa s motivacijama za sprečavanje korištenja neželjenog softvera. Ti razlozi bi mogli biti potpuno samovoljni. U nekim slučajevima, operator stranice želi progurati korištenje nekog programa zbog njegovog promoviranja. Pošto se uvjerio da ste koristili 'željeni' klijent, stranica se zadovoljila time, da ste bili prisiljeni pogledati određen broj oglasa.
6.2 Interoperabilnost softvera i lock-in
Interoperabilnost softvera je također i rizik. Proizvođač server programa, file server programa, e-mail server programa itd. bi ih mogao programirati da traže ovjeru; server bi mogao kategorički odbijati suradnju s klijentima, koji su bili izrađeni od nekog drugog proizvođača. Ili bi izdavač mogao inzistirati na plaćanju naknade od drugih klijent proizvođača i stvoriti tako situaciju da njegov server surađuje samo s onima koji plaćaju naknadu. (Također je moguće stvoriti odgovarajući kriptirani format datoteka, koje se mogu čitati samo pomoću odobrenog softvera i za koji se dekripcijski ključevi mogu zatražiti samo od mrežnog servera i teško ih je dobiti pomoću inverznog inženjerstva.)
Izdavač bi u tom slučaju mogao uvelike povećati cijene prebacivanja njegovih korisnika na suparnički softver. Ako korisnik posjeduje veliku količinu važnih podataka pohranjenih u svom sustavu, a sustav komunicira samo sa klijent softverom pisanim od strane izdavača sustava, bit će mu poprilično teško preseliti podatke na sustav s novim softverom. Kad bi novi sustav pokušao komunicirati sa starim da dobije te podatke, stari sustav bi mogao odbiti odgovoriti.
Samba file server je važan primjer interoperativnog sustava kreiranog inverznim inženjerstvom. Samba razvojni tim je proučavao mrežne protokole, koje koriste Microsoft Windows file server i kreirao alternativnu implementaciju, koju su tada publicirali kao slobodnu/open source softver. Samba se može staviti u računalnu mrežu umjesto Windows file servera, a da pritom Windows klijent strojevi komuniciraju s njim kao da je Windows server. (Slično, Samba donosi mogućost da ne Windows klijenti pristupaju Windows serverima..) Bez konkurentskog softvera korisnici Windows klijenata bi bili prisiljeni koristiti Windows servere. Ali ako bi softver mogao rutinski identificirati softver s druge strane mreže, proizvođač softvera bi mogao od programa tražiti ovjeru i tako zabraniti rivalskim softver-ima da se priključe i bilo kakvu interakciju. Ako Microsoft odluči koristiti NGSCB u tom smjeru, to bi upotpunosti i trajno isključilo Sambu od Windows file servisa i onemogućilo svaku korisnu kompeticijsku implikaciju od relevantnih protokola.
Slično su instant messaging (IM) servisi često pokušali isključiti suparničke klijente i u nekim slučajevima slobodne/open source IM klijente. Danas su ti servisi tipično neuspješni u stvaranju nečeg više od samo trenutnog prekida za korisnike. Mehanizam ovjere bi bio snažno oruđe za limitiranje kompeticije i interakciju IM servisa. Neki klijenti bi mogli biti trajno onemogućeni iako pružaju mogućnosti koje krajnji korisnici preferiraju.Ovo su bili primjeri općenitog problema 'lock-in'-a, koji je često dobro smišljena strategija softver industrije na štetu posla i krajnjih korisnika. Nažalost TCG dizajn donosi moćno novo oruđe koje omogućuje lock-in. Ovjera je odgovorna za taj problem; zatvorena pohrana podataka može pogoršati stvari, dopuštajući programu koji je kreirao datoteku da onemogući druge programe da ga čitaju. Tako oboje, mrežni protokoli i formati datoteka mogu biti korišteni za napad na interakciju softvera.
6.3 DRM, ograničavanja, prisilne nadogradnje
Mnogo ljudi misli da je trusted computing tehnologija način, na koji bi se uvela digital rights managment (DRM) tehnologija na PC platformu. Neki dijelovi trusted computing istraživanja imaju korijene u DRM-u i Microsoft je najavio da će DRM tehnologija imati koristi od NGSCB. Kako bilo da bilo, tvorci trusted computinga niječu da je DRM glavni cilj njihovih napora i da je trusted computing koristan za mnoge aplikacije osim DRM-a. Konačno, DRM je samo jedna od primjena tehnologije NGSCB, ali ilustrira generalni problem trenutnog pristupa NGSCB-a prema ovjeri, želeći naštetiti konkurenciji i kontroli korisnika računala.
Elementi NGSCB dizajna mogu biti korisni u implementaciji DRM sustava. Zatvorena pohrana podataka sprečava kopiranje informacija u dekriptiranom obliku iz memorijskog prostora DRM klijenta, što sprečava stvaranje neograničenog broja jasnih kopija. Sigurni izlazi mogu spriječiti snimanje informacija koje su prikazane na ekranu od strane 'screen- grabbera' ili uređaja koji umjesto da prikazuje informacije ih snima. Zatvorena pohrana podataka, pohranjuje kriptirane datoteke na hard disk na taj način da ih samo DRM klijent može koristiti. Daljinska ovjera će spriječiti svaki drugi program osim odobrenog od strane proizvođača, da uopće i primi takvu datoteku.
Između tih elemenata , daljinska ovjera je glavni dio DRM politike. Bez udaljenog sustava za kontrolu, nema pouzdane informacije, da će Vaš softver provoditi politiku protiv Vas. Od svih ostalih karakteristika NGSCB-a, samo udaljena ovjera omogućuje provođenje politike DRM-a, sprečavajući zamjenu softvera s onim koji ima manje zabrana.
Mogu biti implementirani i neki drugi anti-korisnički raspoloženi softver-i čije bi sredstvo bila ovjera: Kombinacija skrivene pohrane podataka, uključujući ograničavanja (sprečavanje migracije programa ili podataka s jednog računala na drugo) forsirane nadogradnje i odgradnje, omogućujući limitirane klase 'spywarea'- u ovom slučaju aplikacije koje zovu doma da bi opisale kako se koriste. (Neki od tih ponašanja bi mogli biti i dobri ako se oni odvijaju uz znanje vlasnika računala. Npr. želite spriječiti da se osjetljivi podaci mogu maknuti s Vašeg računala, ali ne želite da Vam drugi ljudi onemogućuju micanje Vaših podataka.) Sva ta neprijateljska ponašanja se mogu i danas u softveru implementirati, ali ona se u principu mogu pobijediti dobroznanim tehnikama; kao izvođenje programa u emuliranom okruženju ili mijenjajući i mičući neželjena ponašanja. Udaljena ovjera bi prvi put omogućila dobivanje dokaza što se pokreće ili mijenja na nekom računalu.
Općenitije, ovjera može biti u službi onoga koji želi uvesti kontrolu na daljinu nad Vašim softverom. Treba istaći da udaljena kontrola nije dio NGSCB-a, nego NGSCB omogućuje njihovu implementaciju od programera. Postoji primjer programa napisanog da prima od nekog ovlaštenog tijela 'opozivnu listu' objavljenih dokumenata, koji više nisu za prikazivanje. Taj mehanizam da bi funkcionirao je trebao biti ugrađen u softver kad je bio pisan( ili je trebao biti dodan kroz neku vrstu prisilne nadogradnje). Kad bi takva ograničavajuća okolnost bila implementirana, bilo bi nemoguće korisniku zaobići je. U tom slučaju bi, neke vlasti mogle s udaljenog stroja povući dokumente koji već postoje na računalima diljem svijeta; ta računala bi bez znanja njihovih vlasnika, provodila takvu politiku. Mogućnost provođenja takve politike, kao i neke druge, je moguća samo uz pomoć daljinske ovjere.
6.4 Vlasnik računala ili neprijatelj
Sadašnja verzija daljinske ovjere omogućava vođenje politike protiv želje njihovih vlasnika. Ako je softver koji koristite napisan s tom namjerom, trusted computing arhitektura neće samo štititi podatke od provalnika i virusa nego i od Vas. Zapravo, Vi, vlasnik računala se tretirate isto kao i neki provalnik.
Problem koji se još dodatno povećava dizajnom ovjere je striktan pogled na stanje u računalu bez obzira na okolnosti, bez iznimaka. Vlasnik računala može upotpunosti isključiti ovjeru, ali ne i ovjeru koja nije nastala zbog stanja njegovog računala, nećete moći prevariti banku koji preglednik koristite ili drugi PC koji Windows file sharing klijent koristite. Taj pristup koristi krajnjem korisniku samo onda kada udaljena strana i korisnik imaju iste interese. Ako date ovjeru service provideru koji Vam želi pomoći da nađete neautorizirani modificirani softver na Vašem računalu, ovjera Vam odgovara. Ako ste Vi primorani da date Vaše računalo na ovjeru nekom tko će Vam zabraniti korištenje softvera po Vašem izboru, ovjera Vam šteti. Pristup okrenut prema korisniku i kompeticiji s obzirom na mogućnosti ovjere, bi osigurao da se ovjera nikad ne zlouporabi za svrhe koje korisnik ne odobrava. Time bi se povećala korisnikova kontrola nad svojim računalom u realnim računalnim mrežama.
Zagovornici trusted computinga inzistiraju na njihovom pristupu ovjere, jer je vele da se ovjera ne mora vršiti na njihovom stroju ako neko to ne želi. Oni kažu da ovjeru možete odbiti u svakoj situaciji, ako je ne želite. (Zaista, TCG-ov dizajn Vam dopušta da upotpunosti ugasite TCG TPM čip, ili se odlučite za ovjeru samo u određenim situacijama.) Ali kao što smo vidjeli, ovjera može stvoriti barijeru u interakciji i pristupu i vršiti tako enorman pritisak za vršenje ovjere. Ekonomski je nerazumno pretpostavljati da će tehnologija profitirati isključivo time da ljudi mogu izabrati koristiti je ili ne.
Nije nepoželjno imati mogućnost za dobivanje informacija o softver okruženju na računalu. Ta mogućnost bi mogla biti korisna za neke sigurnosne operacije. Bilo bi logično smatrati da je sadržaj informacija o okružju softvera računala, stvar koja je čvrsto vezana o kontroli njegovog vlasnika. Vlasnik računala, a ne neka treća strana, bi trebao sam odlučiti da li je informacija primljena od neke treće strane točna. Time se omogućuje da mogućnost ovjere neće biti korištena suprotno korisnikovim interesima.
7 Moguće rješenje: Owner Override
Nedostatak ovjere da kontrolira korisnike je ključni problem u vezi sa zahtjevima trusted computinga. To je neprihvatljiv propust dizajna i mora biti otklonjen prije nego trusted computing arhitektura bude kao cijeli paket čista korist za korisnike.
Jednostavna mjera zvana Owner Override bi mogla riješiti problem obnavljajući druge mogućnosti koje mogu odrediti koji softver koristite, osim ako Vi drugačije ne odlučite. Owner Override mijenja prirodu koristi sigurnosti dobivenu od ovjere. Trenutno ovjera govori udaljenoj strani da li je softver na Vašem računalu bio mijenjan. Ovjera plus Owner Override bi dala doznanja udaljenoj strani da li je Vaš softver bio mijenjan bez Vašeg znanja. Detekcija nedopuštenih radnji bi i dalje bila praktična. A ako ste Vi izvršili namjerno promjene na Vašem računalu, mogli biste ih sakriti, isto kao što mošete danas, da bi spriječili nekog da Vas diskriminira zbog Vašeg izbora.
Owner Override omogućuje vlasniku računala, da kad je fizički prisutan kod računala, može svjesno odabrati generiranje ovjere koja ne reflektira aktualno stanje softver okruženja (tekuće slika njegovog izbora operacijskog sustava, aplikacija i drajvera). Pošto takva ovjera može biti generirana samo pri vlasnikovom svjesnom izboru, vrijednost ovjere za detektiranje neautoriziranog softvera je sačuvana. PC vlasnik bi tako natrag dobio kontrolu nad svojim računalom, čak i u mrežnom okruženju i PC ne bi više bio izložen utjecaju politike protiv njegovog vlasnika. Owner Override miče oruđe koje omogućava arhitektura trusted computinga, da bude zloupotrebe za anti-interakcijske i anti-kompeticijske svrhe. Obnavlja važnu mogućnost reverznog inženjerstva i time promiče interoperabilnost među softverom. To bi riješilo problem trusted computinga tako da štiti vlasnika računala i autorizirane korisnike protiv napada, bez ograničavanja vlasnikovog izbora koji softver će izabrati. Time se ne umanjuju dobre strane TCG arhitekture ili NGSCB-a.
U korporacijskim postavkama, (korporacija bi mogla biti vlasnik računala njezinih zaposlenika) zadržavajući moć da postavi politiku mrežnog computinga svojim korisnicima. Pošto Owner Override zahtjeva od korisnika vjerodajnice prije obrambene politike, ne čini se da vlasnici računala imaju kontrolu nad autoriziranim korisnicima. Korporacija može npr. i dalje koristiti ovjeru da bi imali kontrolu nad time, kakav softver koriste zaposlenici kad se priključuju na korporacijske mrežne resurse.
Owner Override isključuje neke nove zanimljive aplikacije, posebno u distribuiranom computingu. U statusu quo, nije moguće poslati podatke na protivničko računalo, dok kontroliramo što protivnik može učiniti s tim. Owner Override je taj status quo, na žalost onih koji su razvili aplikacije i htjeli bi vjerovati udaljenim računalima, dok ne vjeruju njihovim vlasnicima. Također, Owner Override sprečava trusted computing da zaustavi varanje u mrežnim igrama. Owner Override isto kao i trusted computing u cijelosti ima svojih prednosti i nedostatka, ali se čini da ima više prednosti nego nedostataka.
Unatoč želji da se poboljšanjem hardvera povećava sigurnost računala, to se nemože postići sa samo bilo kakim promjenama. Moramo biti pažljivi oko pravca u kojem će se njihove platforme razvijati. Trusted computing sustavi koji štite Vaše računalo od Vas samih i onemogućavaju zaobilaženje neželjene politike, je korak unatrag. Owner Override ima mogućnost biti potrebna zakrpa trusted computing dizajna.
8 Verifikacija implementacija
Kako mogu znati vlasnici računala da je njihov trusted computing hardver implementiran prema izdanim specifikacijama?
To je bitan problem za sav kriptografski hardver, a ne samo trusted computing hardver. Ali pošto većina PC-a do sada nije sadržavala kriptografski hardver, većina PC korisnika jednostavno nije morala brinuti o tome. Dok svaki hardver može sadržavati stražnja vrata i nedokumentirane značajke, kriptografski hardver je poseban po tome da ima pristup važnim tajnim informacijama, kao i mogućnost da informacije procure kroz nedetektirane skrivene kanale(npr. certifikat od ovjere). Prema tome bitno je da hardver proizvođači pravilno implementiraju, bez nedokumentiranih značajki, koje bi dopustile trećoj strani da ima neautorizirani pristup privatnim informacijama.
9 Zaključak
Ovime vidimo da hardver poboljšanja mogu biti jedan način za poboljšavanje računalne sigurnosti. Tretiranje vlasnika računala neprijateljem, nije napredak u računalnoj sigurnosti. Ineroprerabilnost, kompeticija, korisnička kontrola i slični problemi prisutni u TCG i NGSCB pristupu su dovoljno ozbiljni, da se sačeka sa primjenom trusted computinga dok se ne riješe ti problemi. Srećom ti problemi neizgledaju nerješivi.
10 Literatura
http://www.eff.org/Infrastructure/trusted_computing/20031001_tc.php http://luddite.cst.usyd.edu.au/~liedra/misc/Controversy_Over_Trusted_Computing.pdf http://www.epic.org/privacy/tc/
http://www.microsoft.com/resources/ngscb/default.mspx
https://www.trustedcomputinggroup.org/home