Your SlideShare is downloading. ×

418

69
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
69
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. UTICAJ MOBILNIH SOFTVERSKIH AGENATA NA BEZBEDNOST RAÄŒUNARSKIH SISTEMAINFLUENCE OF MOBILE SOFTWARE AGENTS ON COMPUTER SYSTEMS SECURITYBoriÅ¡a JovanoviÄŒCentar za primenjenu matematiku i elektronikuSadržaj: Ubrzani razvoj tehnologije, kako u pogledu hardvera tako u pogledusoftvera u mnogome otežavaju celokupni sistem bezbednog upravljanjainformacijama. Svakog dana podaci i informacije su sve ranjiviji i neophodno jepostojanje sveobuhvatnog, odbrambeno orijentisanog mehanizma zaÅ¡tite ioÄŒuvanja bezbednosti raÄŒunarskih sistema.Abstract: Rapid development of technology, both in terms of hardware andsoftware, makes the whole system of secure information management heavy. Everyday, data and information are more and more vulnerable and, the existence of acomprehensive, defense-oriented mechanism for protecting and preserving thesecurity of computer systems is necessarly.1. UVODRazvoj raÄŒunarskih sistema kroz istoriju tekao je od centralizovanih monolitnihraÄŒunarskih ureÄŒaja koji podržavaju statiÄŒke aplikacije, do savremenihklijent- server okruženja koja pružaju vema složene forme distribuiranogizvrÅ¡avanja. U toku ovakvog razvoja postojale su razliÄŒite forme mobilnosti(pokretnosti) koda koji se izvrÅ¡ava: najraniji su bili terminali za unosprograma koji ÄŒe se izvrÅ¡avati na centralnom raÄŒunaru dok su u poslednjevreme zastupljeni JAVA apleti koje se preuzimaju sa Web servera i izvrÅ¡avaju uWeb pretraživaÄŒima. Nova faza u evoluciji ide korak dalje i omoguÄŒava potpunumobilnost kooperantskih aplikacija izmeÄŒu platformi koje ih podržavaju kako biformirali veliki, usko povezani distribuirani sistem.Glavni predstavnik poslednje faze evolutivnog razvoja raÄŒunarskog softverasu mobilni softverski agenti ⌌ programi koji su ciljano usmereni i namenjenida prekinu svoje izvrÅ¡avanje na jednoj platformi, pokrenu se i preÄŒu na nekudrugu platformu i na njoj nastave izvrÅ¡avanje. Preciznije, softverski agent jeprogram koji može upotrebiti ovlaÅ¡ÄŒenja pojedinaca ili organizacije daautonomno radi na izvrÅ¡enju postavljenog cilja i da u svom radu sreÄŒe ida uzajamno deluje sa ostalim agentima. MoguÄŒe interakcije izmeÄŒu agenatasu razliÄŒita ugovaranja i dogovaranje servisa kroz aukciono nadmetanje irazmenu podataka. Agenti mogu biti ili stacionarni, da se stalno nalaze najednoj platformi ili mogu biti i mobilni ÄŒija je glavna osobina da mogu da sepokrenu i prebace sa jedne platforme na drugu u razliÄŒitim vremenskiintervalima[1].ÄŒitav spektar razliÄŒitih nijansi mobilnosti postoji, u zavisnosti odrazliÄŒitih varijacija premeÅ¡tanja koda i informacija vezanih za stanje agentaukljuÄŒujuÄŒi vrednostiinstanciranih promenljivih, vrednost instrukcijskog registra kao i stanjeizvrÅ¡nog steka itd [2]. Na primer jedan jednostavan softverski agentnapisan kao JAVA aplet ima osobinu prenosivosti koda u postupku preuzimanjakoda apleta sa Web servera i njegovo izvrÅ¡avanje na Web pretraživaÄŒu.MeÄŒutim, kod JAVA apleta nema prenoÅ¡enja informacija o trenutnom stanjuapleta. Sa druge strane, tehnologija Agleta (Aglets)[3], koju je razvio IBM uJapanu, oslanja se takoÄŒe na Java programski jezik i dozvoljava da se u tokuoperacija prelazaka sa jedne platforme na drugu prenose vrednosti instanciranihpromenljivih ali ne i instrukcijski registar i izvrÅ¡ni stek. JaÄŒa formamobilnosti, Sumatra[4], razvijena je na Univerzitetu Merilend i dozvoljava Javanitima da se prenose sa platforme na platformu. U ovom radu razmatrani sumobilni softverski agenti koji imaju moguÄŒnost da prenose i kod i informacijevezane za stanje agenta.2. BEZBEDONOSNE PRETNJE
  • 2. Pretnje po bezbednost raÄŒunarskih sistema koje izazivaju mobilni softverskiagenti mogu se podeliti u tri veÄŒ poznate kategorije: razotkrivanje(oticanje, kompromitacija) informacija, onemoguÄŒavanje servisa, i oÅ¡teÄŒenje(uniÅ¡tavanje) informacija. Ovaj rad ima za cilj da, uz koriÅ¡ÄŒenje komponenatajednog agentskog sistema, kategorizuje bezbedonosne pretnje kako bi seidentifikovali moguÄŒi izvori i ciljevi jednog napada. Treba napomenuti da mnogeod pretnji koje ÄŒe ovde biti pomenute imaju svoje parnjake ukonvencionalnim klijent-server sistemima i postojale su urazliÄŒitim oblicima u proÅ¡losti. Mobilni softverski agenti jednostavnopružaju Å¡iroke moguÄŒnosti za zloupotrebe i pogreÅ¡no koriÅ¡ÄŒenje tako da seskala potencijalnih pretnji znaÄŒajno proÅ¡iruje.Postoji veliki broj modela za opisivanje agentskih sistema[2, 5, 6], meÄŒutim zadiskusije o bezbedonosnim problemima dovoljno je koristiti jedan uproÅ¡ÄŒenimodel koji se sastoji od svega dve glavne komponente: softverskog agenta iplatforme na kojoj se on izvrÅ¡ava. Ovako posmatrano, jedan agent se sastoji odprogramskog koda i informacija koje opisuju stanje agenta, potrebne da seizvrÅ¡i odreÄŒeno izraÄŒunavanje. Osobina mobilnosti omoguÄŒava agentu da seseli, ili da skaÄŒe, sa platforme na platformu. Platforma na kojoj softverskimobilni agent nastaje i sa koje polazi na svoj ⌌put⌌ oznaÄŒava se kaopoÄŒetna platforma, i normalno je da predstavlja okruženje u koje softverskiagent ima najviÅ¡e poverenja. Platforma na kojoj se izvrÅ¡ava jedan softverskiagent može se sastojati od jednog ili viÅ¡e raÄŒunara i može se sastojati od506jednog ili viÅ¡e izvrÅ¡ivih okruženja, ili mesta za sastanke, u kojima agentimogu da meÄŒusobno interaguju i komuniciraju. Na slici 1. prikazan je ovakavmodel agentskog sistema.Slika 1. UproÅ¡ÄŒeni model agentskog sistemaSa slike se mogu identifikovati ÄŒetiri kategorije pretnji: pretnje koje dolazeod mobilnog softverskog agenta koji napada platformu (raÄŒunarski sistem) nakojoj se izvrÅ¡ava, softverska platforma napada mobilnog agenta, mobilni agentnapada drugog mobinog agenta na platfromi na kojoj se istovremenoizvrÅ¡avaju i pretnje koje dolaze od ostalih entiteta a usmerene su nacelokupni agentski sistem. Poslednja kategorija podrazumeva situaciju kadajedan agent ugrožva bezbednost drugog softverskog mobilnog agenta na drugojplatformi i kada jedna platforma ugružava bezbednost druge agentske platforme.Ova vrsta napada se fokusira na komunikacione karakteristike raÄŒunarskihsistema koji predstavljaju platforme na kojima se agenti izvrÅ¡avaju ieksploatiÅ¡e njihove ranjivosti i slabosti. TakoÄŒe, ova kategorija napadaeksploatiÅ¡e konvencionale vrste napada koje su usmerene na operativni sistem nakome se agentska platforma izvrÅ¡ava.Uticaj softverskog agenta na agentsku platformuOva kategorija pretnji podrazumeva skup pretnji u kojima agent eksploatiÅ¡ebezbedonosne slabosti agentske platforme ili pokreÄŒe napade na agentskuplatformu. Ovaj skup pretnji obuhvata: Lažno predstavljanje ⌌ podrazumeva situaciju kada se jedanneautorizovani agent predstavlja kao neki drugi agent. Agent koji se lažnopredstavio može nastupati sa aspekta autorizovanog agenta i može dobitipristup servisima i resursima za koje nije ovlaÅ¡ÄŒen. TakoÄŒe, lažnopredstavljeni agen može takvu situaciju da iskorsiti i izvrÅ¡i nekuoperaciju (razliÄŒite bezbedonosno osetljive operacije, promena ili brisanjepodataka, malverzacije sa bankovnim raÄŒunima itd.) i na taj naÄŒin u logfajlovima sakrije svoj pravi identitet. OnemoguÄŒavanje servisa ⌌ mobilni agent može pokrenuti napad
  • 3. onemoguÄŒavanja servisa na taj naÄŒin Å¡to on prekomerno koristi velikukoliÄŒinu resursa platforme na kojoj se izvrÅ¡ava. Ovakav napad onemoguÄŒavanjemservisa može biti pokrenut namerno, pokretanjem skripta kojieksploatiÅ¡eranjivost sistema ili nenamerno Å¡to je posledica greÅ¡aka iprogramiranju. Paradigma mobilnog izraÄŒunavanja i izvrÅ¡avanja, meÄŒutim,zahteva od agentske platforme da prihvati i da izvrÅ¡i mobilnog softverskogagenta ÄŒiji je kod razvijen izvan organizacije i nije bio predmet nijedneprethodne revizije. Neki zlonamerni softverski agent može da nosi zlonamernikod u sebi koji je dizajniran da prekine ili onemoguÄŒi servise kojeagentska platforma nudi, da degradira performanse agentske platforme ili daekstraktuje-izdvoji informacije za koje sam agent nije ovlaÅ¡ÄŒen da im pristupaniti da ih koristi i poÅ¡alje ih potencijalnom napadaÄŒu. U zavisnosti od nivoapristupa, mobilni softverski agent može biti u moguÄŒnosti da kompletnoiskljuÄŒi i prekine izvrÅ¡avanje agentske platforme. Neautorizovani pristup ⌌ Mehanizmi kontrole pristupa se koriste kako biodvratili neautorizovane korisnike ili procese od pristupa servisima iliresursima za koje oni nemaju bezbedonosnim politkama definisana pravapristupa. Svaki agent koji pristupa platformi mora biti subjekat bezbedonosnepolitike same platforme. Da bi primenila ispravne mehanizme kontrole pristupa,agentska platforma ili sam agent moraju da autentikuju identitet mobilnogsoftverskog agenta pre nego Å¡to softverski agent bude instanciran na agentskojplatformi. Agent koji pristupa agentskoj platformi, njenim resursima iservisima, bez valjane autorizacije može oÅ¡tetiti druge agente ali i agentskuplatformu. Agentska platforma na kojoj razliÄŒiti agenti predstavljaju korisnikeili organizacije mora osigurati da agenti nemaju dozvole za ÄŒitanje,izmenu ili brisanje trajno saÄŒuvanih podataka za koje nisu autorizovani,ukljuÄŒujuÄŒi i podatke koji se nalaze u privremenim memorijama.Uticaj agentske platforme na softverskog agentaOva kategorija pretnji podrazumeva skup pretnji u kojima agentska platformakompromituje bezbednost mobilnog softverskog agenta. Ovaj skup pretnji obuhvata: Lažno predstavljanje ⌌ situacija kada se jedna agentskaplatforma lažno predstavlja sa ciljem da obmane mobilnog agenta da je ona pravadestinacija i odgovarajuÄŒi bezbednosni domen. Agentska platforma koja se lažnopredstavila kao treÄŒa strana od poverenja može namamiti bezazlenog agenta naplatformu i iz njega izvuÄŒi osetljive informacije. Platforma koja se lažnopredstavila može oÅ¡tetiti i agenta koji je posetio i platformu ÄŒiji jeidentitet preuzela. OnemoguÄŒavanje servisa ⌌ mobilni agent kada stigne na agentskuplatformu oÄŒekuje od paltforme da izvrÅ¡ava njegove zahteve verno,obezbeÄŒujuÄŒi ravnopravnu alokaciju resursa i pridržavajuÄŒi se dogovorenihkvaliteta servisa. Zlonamerna agentska platforma, meÄŒutim, može ignorisatizahteve za servisima koje dobija od agenta, da uvodi neprihvatljiva kaÅ¡njenjaza vremenski kritiÄŒne zadatke, da ne izvrÅ¡ava kod mobilnog agenta ili ÄŒakda prekine izvrÅ¡avanje softverskog agenta bez ikakvog507obaveÅ¡tenja o uzroku. Agenti na drugim platformama ÄŒekajuÄŒi rezultatblokiranog agenta sa zlonamerne platforme moraju biti pažljivi kako bi izbeglipotpuni prekid sopstvenog izvrÅ¡avanja. Softverski agent se takoÄŒe moženaÄŒi u stanju blokade ukoliko zlonamerna platforma, ili loÅ¡ programskikod, kreiraju situaciju u kojoj se kritiÄŒna faza u izvrÅ¡avanju agentskihzadataka nemože zavrÅ¡iti zato Å¡to agent stalno iznova dobija nove zadatke.Ovako blokirani agent ÄŒeka da se zavrÅ¡i akcija ÄŒije se zavrÅ¡avanje odlaženovim zadacima. PrisluÅ¡kivanje ⌌ u klasiÄŒnom znaÄŒenju prisluÅ¡kivanje podrazumevada potencijalni napadaÄŒ snima i nadgleda bezbedonosno osetljive
  • 4. komunikacije. Ova pretnja, u agentskim sistemima, dobija novu dimenziju ipogorÅ¡ava se buduÄŒi da agentska platforma može ne samo da nadgledakomunikaciju veÄŒ može da nadgleda izvrÅ¡avanje svake instrukcije agenta,može da nadgleda sve neÅ¡ifrovane ili javne podatke koje je agent doneo sasobom kao i sve podatke koji su generisani u toku izrÅ¡avanja na platformi.PoÅ¡to platforma ima pristup agentskom kodu, stanju i podacima, agent koji jeposetio platformu mora da bude oprezan i svestan ÄŒinjenice da može otkriti iliizložiti neki znaÄŒajen podatke, poslovnu tajnu, strategiju pregovaranja ilidruge osetljive informacije. ÄŒak iako softverski agent možda ne iznosidirektno osetljive informacije, agentska platforma može da izvodi zakljuÄŒkena osnovu tipa servisa koje agent zahteva i na osnovu identiteta agenta sakojim komunicira. Izmena koda i ponaÅ¡anja mobilnog agenta ⌌ mobilna paradigmaizvrÅ¡avanja podrazumeva da kada agent stigne na agentsku platformu on sa sobomdonese svoj kod, stanje i podatke. PoÅ¡to softverski agent, u svom životnomveku, može da poseti nekoliko platformi u okviru razliÄŒith bezbedonosnihdomena, neophodno je postojanje mehanizama koji ÄŒe obezbediti oÄŒuvanjeintegriteta koda, stanja i podataka mobilnog softverskog agenta. Modifikacijakoda mobilnog agenta, i samim tim kasnije neispravno ponaÅ¡anje agenta na nekojdrugoj platformi, može biti detektovano digitalnim potpisivanjem programskogkoda mobilnog agenta od strane njegovog tvorca. Problem detektovanja zlonamernihpromena u stanju agenta u toku njegovog izvrÅ¡avanja ili promena u podacima kojeje agent izraÄŒunao i proizveo na zlonamernoj platformi joÅ¡ uvek nema opÅ¡tereÅ¡enje. Agentska platforma može da izvrÅ¡ava modifikovanu virtuelnu maÅ¡inu,bez znanja agenta, i da ta modifikovana virtuelna maÅ¡ina može uzrokovati iproizvoditi pogreÅ¡ne rezultate.Mobilni agenti koji poseÄŒuju nekoliko platformi na svom životnom putu seizlažu novim rizicima svaki put kada su u fazi prenoÅ¡enja (pokreta sa jedne nadrugu platformu) kao i svaki put kada se oni instanciraju na novojplatformi. Ukoliko se entitet koji je odgovoran za izmenu koda, stanja ilipodataka mobilnog agenta ne detektuje odmah, na samom poÄŒetku izmena, jakoga je teÅ¡ko (skoro i nemoguÄŒe) locirati nakon Å¡to agent poseti drugeplatforme i izmena stanja agenta i podataka bude prikrivena novim promenama.Mada je tehnologija kontrolnih taÄŒaka i ponovnog izvrÅ¡avanja lako ostvarljivau tradicionalnim okruženjima, okruženje agentskih sistema ovu tehnikuÄŒini jako teÅ¡kom zato Å¡to finalno stanje agenta i podaci mogu bitirezultat serije nedeterministiÄŒkih dogaÄŒaja koji zavise od ponaÅ¡anjaautonomnog agenta ÄŒije prethodno ponaÅ¡anje i stanje nemože biti ponovokreirano.Agentska platforma takoÄŒe može greÅ¡iti u komunikaciji sa agentom. GreÅ¡ke ukomunikaicji sa agentom, na primer, mogu ukljuÄŒiti promiÅ¡ljenu promenu poljapodataka u finansijskim transakcijama ili ÄŒak promene polja tipa poruke iz⌌kupi⌌ u ⌌prodaj⌌. Ovakav tip promiÅ¡ljene i ciljane promene podataka jemnogo teže realizovati od prostog oÅ¡teÄŒenja poruke, ali se ipakizvodi jer potencijalni napadaÄŒ ima jasan podsticaj i nagradu.3. MERE ZAÅ TITE U AGENTSKIM SISTEMIMAMnoge konvencionalne bezbedonosne tehnike koje se koriste u savremenimdistribuiranim aplikacijama (tj. klijent-server aplikacijama) takoÄŒe imajusvoju primenu u okviru savremene paradigme mobilnog izvrÅ¡avanja i mobilnihagenata. Pored toga, postoje mnoga proÅ¡irenja konvencionalnih tehnika i tehnikEkoje su izmiÅ¡ljene specifiÄŒno za kontrolisanje mobilnog koda i izvrÅ¡ivogsadržaja koje su primenljive na bezbednost agentskih sistema. U daljem tekstuse na konzistentan naÄŒin prikazuje pregled protivmera koje se koriste zazaÅ¡titu platforme na kojoj se agent izvrÅ¡ava.Mnogi agentski sistemi se oslanjaju na opÅ¡ti skup pretpostavki koje se tiÄŒubezbednosti. Prva takva pretpostavka je da agent veruje poÄŒetnojplatformi na kojoj je prvi put instanciran i poÄŒeo svoje izvrÅ¡avanje. Drugapretpostavka je da su poÄŒetna platforma i druge jednako poverljive platforme
  • 5. implementirane bezbedno, bez greÅ¡aka i trapdoor-ova koje se mogu eksploatisati,i koje se ne ponaÅ¡aju zlonamerno. TreÄŒa pretpostavka se odnosi na upotrebuinfrastrukture sa javnim kljuÄŒevima (engl. PKI ⌌ Public Key Infrastructure)prvenstveno u formi digitalnih sertifikata, lista opozvanih sertifikata itehnologije digitalnog potpisa za potpisivanje koda mobilnog softverskog agenta.ZaÅ¡tita agentske platformeJedna od glavnih briga oko implementacije agentskih sistema je obezbediti daagenti nisu u moguÄŒnosti da se sukobljavaju meÄŒusobno kao i da se sukobljavajusa agentskom platformom na kojoj se izvrÅ¡avaju. OpÅ¡ti pristup kojim se topostiže je uspostavljanje zasebnih izolovanih domena za svakog agenta iplatformu ali i stroga kontrola pristupa i korenspodencije izmeÄŒudomena. U tradicionalnom smislu ovaj koncept se naziva nadgledanje izvora (engl.reference monitor). Jedna implementacija koncepta nadgledanja izvora imasledeÄŒe karakteristike: Uvek je aktivan i ne može se zaobiÄŒi, posreduje kod svakog pristuparesursima508 Nije podložan kvarovima Dovoljno je mali da se analizira i testiraImplementacija koncepta nadgledanje izvora datira negde oko ranih devedesetihgodina proÅ¡log veka i upotrebljava ÄŒitav niz konvencionalnih bezbedonosnihitehnika, koje su primenljive na agentsko okruženje. Te konvencionalne tehnikeukljuÄŒuju sledeÄŒe: Mehanizme meÄŒusobnog izolovanja procesa kao i izolovanja korisniÄŒkih odupravljaÄŒkih procesa. Mehanizme za kontrolu pristupa raÄŒunarskim resursima. Kriptografske metode kojima se postiže zaÅ¡tita tajnosti informacija kojese razmenjuju. Kriptografske metode kojima se identifikuju i autentikuju korisnici, agentii platforme. Mehanizme koji omoguÄŒavaju ponovno pregledanje dogaÄŒaja vezanih zabezbednosne probleme koji se deÅ¡avaju ili su se desili na agentskoj platformi.Tehnike razvijene u novije vreme odnose se pre svega na mobilni kod i bezbednostmobilnih agenata a razvijene su po uzoru na tradicionalne tehnike. Za zaÅ¡tituagentskih platformi razvijene su sledeÄŒe tehnike: Softverski bazirana izolacija greÅ¡aka ⌌ kako samo ime kaže, metodakoja softverski izdvaja module razliÄŒitih aplikacija i smeÅ¡ta ih u odvojenedomene koji su otporni na greÅ¡ke. Ova tehnika omoguÄŒava nekom nepoverljivomsoftveru napisanom u nepouzdanom programskom jeziku, kao Å¡to je ⌌C⌌, da seizvrÅ¡ava oukviru jedinstvenog virtuelnog adresnog prostora aplikacije. Pristupsistemskim resursima se takoÄŒe može kontrolisati putem jedinstvenogidentifikatora koji se pridružije svakom domenu. Ova tehnika, poznata podopÅ¡tim imenom sandboxing, je veoma efikasna u poreÄŒenju sa hardverskimtabelama strana koje održavaju odvojene adresne prostore za module, kada timoduli ÄŒesto komuniciraju meÄŒusobno u okviru domena otpornih na greÅ¡ke.TakoÄŒe je idealan za situacije gde veÄŒina koda spada u jedan domen odpoverenja, jer moduli u okviru domena od poverenja nemaju dodatnog optereÄŒenjapri izvrÅ¡avanju.
  • 6.  Sigurna interpretacija programskog koda ⌌ mobilni softverski agenti seÄŒesto razvijaju upotrebom nekog skript ili programskog jezika koje seinterpretira. Glavna motivacija i ideja vodilja je želja da se postignenezavisnost mobilnog agenta od platforme, operativnog sitstema na kome seizvrÅ¡ava. Osim toga, viÅ¡i konceptualni nivo apstrakcije koji obezbeÄŒujeokruženje interpretera može olakÅ¡ati razvoj koda mobilnog agenta[7]. U osnovimetode zaÅ¡tite primenom sigurne interpretatcije programskog koda leži idejada komande koje se smatraju potencijalno Å¡tetnim mogu ili uÄŒiniti sigurnim ilida se potpuno onemoguÄŒi njihovo izvrÅ¡avanje. Na primer, dobar primer zaonemoguÄŒavanje može biti komanda koja izvrÅ¡ava proizvoljan znakvni nizpodataka kao segment programa. Digitalno potpisani kod ⌌ fundamentalna tehnika zaÅ¡tite agentskihsistema koja podrazumeva digitalno potpisivanje koda mobilnog agenta. Digitalnimpotpisivanjem postiže se autentiÄŒnost objekta koji je potpisan i autentiÄŒnostentiteta koji je izvrÅ¡io digitalno potpisivanje, kao i integritet digitalnopotpisanog koda. TipiÄŒno, digitalno potpisivanje koda mobilnog agenta obavljasam kreator mobilnog agenta ili entitet koji je ovlaÅ¡ÄŒen da izvrÅ¡i reviziju ipregled koda mobilnog agenta. Procene stanja mobilnih agenata ⌌ tehnika zaÅ¡tite mobilnih agenta kojaima za cilj da utvrdi da mobilni agent nije, na neki naÄŒin, doveden uzlonamerno stanje izmenom podataka njegovog stanja. UspeÅ¡nost ove tehnikezasniva se na procenama kojima se Å¡tetne promene stanja mobilnog agentamogu predvideti, tako da se protivmere u obliku funkcija kojeprocenjuju stanje agenta mogu izvrÅ¡iti pre pokretanja samog agenta. Funkcijeprocene stanja se koriste za odreÄŒivanje koja prava pristupa treba dodelitiagentu. Istorija putanja ⌌ ima za cilj da se održava zapis[8, 9] kojipredstavlja spisak svih platformi koje je agent posetio u svom životnom veku.Neophodan uslov ove metode zaÅ¡tite mobilnih agenata je da se lako moževerifikovati autentiÄŒnost i integritet tako kreiranog zapisa ⌌ istorijeputanje softverskog agenta. Na osnovu tog zapisa, nova agentska platforma nakoju agent stigne može odluÄŒiti da li i na koji naÄŒin ÄŒe izvrÅ¡avati agentai koja ograniÄŒenja po pitanju resursa ÄŒe mu postaviti. Dokaz o pouzdanosti koda mobilnog agenta ⌌ podrazumeva da je tvoracsoftverskog agenta obavezan da formalno dokaže da programski kod posedujebezbedonosna svojstva koja su unapred dogovorena sa potencijalnim korisnicimasoftverskih agenata[10]. U najveÄŒem broju sluÄŒajeva tražena bezbedonosnasvojstva se poklapaju sa bezbedonosnim politikama agentskih platformi nakojima ÄŒe se on izvrÅ¡avati. Ovakav mehanizam zaÅ¡tite ima pre svegapreventivnu ulogu.4. ZAKLJUÄŒAKBezbednosni probelmi vezani za mobilne agente, barem u teoriji, u velikoj merise reÅ¡avaju kroz postojeÄŒe sigurnosne tehnologije i protokole. Pitanja vezanaza autentikaciju i autorizaciju u multiagentskim sistemima nije lako reÅ¡iti.OÄŒigledno da infrastruktura sistema sa javnim kljuÄŒevima predstavlja jedanvažan deo reÅ¡enja problema bezbednosti mobilnih agenata, sami agenti morajubiti u moguÄŒnosti da rezonuju i donose odluke na osnovu razliÄŒitihbezbednosnih parametara. IzvrÅ¡avanje mobilnog softverskog agenta na platformi ukoju se ne može imati poverenja je joÅ¡ jedan faktor koji bezbednost agentskihsistema ÄŒini složenijim a posebno sa aspekta pouzdanosti izvrÅ¡avanja mobilnogsoftverskog agenta i oÄŒivanja tajnosti podataka mobilnog agenta.Ne postoji jedinstveno reÅ¡enje bezbednosnih problema koje je razvoj mobilnihsoftveskih agenata doneo sa sobom osim uvoÄŒenja pouzdanog hardvera, koji jeveÄŒini aplikacija509nedostupan zbog svoje cene. ReÅ¡enje problema se može postiÄŒi razvojem malih
  • 7. mehanizama kojima bi se reÅ¡avali pojedinaÄŒni, partikularni problemi. Tako surazvijani mehanizmi koji se odnose na agente koji se izvrÅ¡avaju na veÄŒem brojuagentskih platformi, mehanizmi i protokoli koji omoguÄŒavaju agentu dokaže svojidentitet i da utvrdi identitet platforme kao i mehanizmi kojima se zapisuju ipamte akcije agenta na agentskoj platfomi kako bi se mogle koristiti usluÄŒaju odreÄŒenih sporova. Neki problemi nemaju univerzalno iopÅ¡teprihvaÄŒeno reÅ¡enje tako da je oblast bezbednosti mobilnih softverskihagenata veoma aktivna i bogata novim istraživaÄŒkim poduhvatima.SadaÅ¡nji nivo istraživaÄŒkih aktivnosti i veliki broj projekatakoji se razvija predstavlja znaÄŒajan pokazatelj daPrograms," in J. Vitek and C. Tschudin (Eds.), Mobile Object Systems: Towardsthe Programmable Internet, Springer-Verlag, Lecture Notes in Computer ScienceNo.1222, pp. 111-130, April 1997.[5] "Agent Management," FIPA 1997 Specification, part1, version 2.0, Foundation for Intelligent Physical Agents, October 1998.[6] "Mobile Agent System Interoperability Facilities Specification," ObjectManagement Group (OMG) Technical Committee (TC) Document orbos/97-10- 05,November 1997[7] John K. Ousterhout, ⌌Scripting: Higher-Levelsttehnologija mobilnih softverskih agenata ima blistavu buduÄŒnost.Programming for the 21March 1998, pp. 23-30.Century,⌌ IEEE Computer,LITERATURA[1] "Mobile Agents White Paper," General Magic, 1998. dostupno na:http://www.genmagic.com/technology/techwhitepaper.ht ml[2] A. Fuggetta, G.P. Picco, and G. Vigna, "Understanding CodeMobility," IEEE Transactions on Software Engineering, 24(5), May 1998.[3] Danny Lange and Mitsuru Oshima, Programming and Deploying Java Mobile Agentswith Aglets, Addison- Wesley, 1998.[4] Anurag Acharya, M. Ranganathan, Joel Salz, "Sumatra: A Language forResource-aware Mobile[8] Joann J. Ordille, "When Agents Roam, Who Can You Trust?" Proceedings of theFirst Conference on Emerging Technologies and Applications in Communications,Portland, Oregon, May 1996[9] Nayeem Islam, et al., ⌌A Flexible Security System for Using InternetContent, IEEE Software, September 1997, pp. 52-59.[10] G. Necula and P. Lee, "Safe Kernel Extensions Without Run-Time Checking,"Proceedings of the 2nd Symposium on Operating System Design and Implementation(OSDI 96), Seattle, Washington, October1996, pp. 229-243.
  • 8. 510

×