You are on page 1of 26

Mr Marinko Aleksi

Predmet: Dijagnostika i odravanje elektronskih sistema na brodu

OSNOVE ODRAVANJA SOFTVERA I KOMPJUTERSKI


VIRUSI
Uvod u softverski inenjering
Termin softverski inenjering odnosi se na sistematsku proceduru koja se
koristi u kontekstu opte prihvaenog seta ciljeva za analizu, dizajn,
implementaciju, testiranje i odravanje softvera. Softverski proizvod treba da
bud efikasan, pouzdan, da se moe koristiti, modifikovati, prenositi, testirati,
ponovo koristiti, odravati, koristiti s drugim softverima i ispravljati. Ovi
termini odnose se kako na sisteme tako i na njihove komponente. Mnogi od
ovih termina su samoobjanjavajui; meutim radi kompletnosti mi ukljuujemo
i njihove definicije.
Efikasnost: Softver se proizvodi u oekivanom vremenu i u okviru granica
resursa koji su na raspolaganju. Softver koji se proizvodi radi u okviru
oekivanog vremena za razliita izraunavanja koja treba da se zavre.
Pouzdanost: Softver treba da funkcionie kao to se oekuje. U multikorisnikim sistemima obavlja svoje funkcije bez obzira na druga optereenja
sistema.
Upotrebljivost: Softver mora biti jednostavan za korienje. Ovo se obino
odnosi na lakou upotrebe od strane korisnika, ali se takoe bavi i
primenjivou softvera kako na operativnom sistemu tako i korisnikim
funkcijama i aplikativnom okolinom.
Izmenjivost: Softver se treba lako promeniti ako se menjaju zahtevi sistema.
Prenosivost: Softverski sistem treba da se prenosi na druge kompjutere ili
sisteme bez veih izmena softvera. Softver koji treba samo da se
rekompajlira da bi pravilno radio na novoj maini smatra se veoma prenosivim.
Mogunost testiranja: Softver treba da se lako razumije i menja s
vremenom, ako se jave problemi. Ovaj termin se esto koristi da opie ivotni
ciklus dugotrajnih sistema, kao to su npr. Softveri za upravljanje avionskim
saobraajem, koji mora raditi decenijama.
Interoperabilnost: Softverski sistem treba da jednostavno radi u interakciji
sa drugim softverskim sistemima. Ovo se moe odnositi na softver na jednom
kompjuteru ili na softver koji se koristi u mrei.
Tanost: Program treba da proizvodi taan izlaz.

Tipine faze softverskog inenjeringa


Postoje nekoliko faza koji su deo svakog projekta softverskog inenjeringa:
Analiza problema
Determinacija zahteva
Dizajn softvera
Kodiranje softverskog reenja
Testiranje i integracija koda
Instaliranje i isporuka softvera
Dokumentacija

Odravanje
Osiguranje kvaliteta
Obuka
Procjena resursa
Projektni menadment

Analiza problema se veoma esto izvodi od strane eksperata za odreeno


podruje primene.
Trebate obratiti panju da se ove faze obino ne izvode u vakumu. Umesto toga
one se izvode kao deo organizovanih sekvenci aktivnosti poznatih kao ivotni
ciklus softvera organizacije. Za sada se podrazumijeva da svaka softverska
razvojna organizacija ima svoj vlastiti i individualni softverski ivotni ciklus u
kome je red ovih aktivnosti specificiran.
Faza zahteva organizacionog softverskog ivotnog ciklusa ukljuuje precizno
odreivanje ta e biti funkcije softverskog sistema. Ako postoji jedan
potroa ili set potroaa koji su unaprijed poznati, onda e faza zahteva
traiti znaajnu diskusiju izmeu potroaa i zahteva specijalista u softverskom
timu. Ovaj scenario bi se mogao primenjivati na proces razvijanja softvera za
kontrolu leta aviona.
Ako ne postoji potroa koji se direktno identifikuje, nego potencijalni set
individualnih potroaa, onda mogu da se koriste drugi metodi kao to su
analize trita i testiranje preferencije. Ovaj pristup moe biti odgovarajui za
razvoj softvera za internet.
Faza dizajna omoguuje prevoenje zahteva u izvorni kod. Softverski dizajner
mora imati iskustvo u metodologiji dizajna i u odreivanju trokova
alternativnog dizajna. Dizajner mora znati karakteristike softverskog sistema
kao to su baze podataka, operativni sistemi, korisniki grafiki interfejsi ili
korisniki programi koji mogu pomoi u eventualnom procesu kodiranja.
Aktivnost kodiranja je najblia studentima i ne treba je ovdje detaljno
objanjavati. Meutim, mnoge odluke o kodiranju objektom orijentisanih ili
proceduralnih jezika mogu se odloiti do ove take u ivotnom ciklusu softvera
ili su moda napravljene namerno ili u fazi zahteva.
Softverski inenjer-poetnik se verovatno moe prikljuiti testiranju ili
odravanju softvera. Softversko testiranje je aktivnost koja najee poinje
poto je softver kreiran, ali mnogo ranije nego to je spreman da se
predstavi potroaima. esto je ukljuen u softversku integraciju koja
predstavlja proces kombinovanja odvojenih softverskih modula u vee
softverske sisteme.
Softverska integracija takoe esto zahtijeva integraciju prethodnih
softverskih sistema da bi se napravili vei.
Dokumentacija ukljuuje mnogo vie od prostog komentarisanja izvornog
koda. Ona ukljuuje obrazloenja dizajna koji je azhtijevan, help- fajlove,
korisnike prirunike, prirunike za obuku, tehnike vodie kao to su
prirunici za programiranje i prirunici za instalaciju. ak i interna
dokumentacija izvornog koda je mnogo sadrajnija nego to izgleda
2

programeru-poetniku. Nije neobino da fajl izvornog koda ima dvaput vie


dokumentacionih linija i komentara od aktuelnog koda.
Poto je softver dizajniran, kodiran, testiran i dokumentovan, on se mora
isporuiti i instalirati.
Termin softversko odravanje se koristi da opie one aktivnosti koje su
obavljene poto je softver puten u promet. Odravanje ukljuuje
isprvljanje greaka koje su naene u softveru; premijetanje softvera u nove
okoline, kompjutere i operativne sisteme; omoguavajui softveru da povea
funkcionalnost; i tako dalje. Za mnoge softverske sisteme odravanje je
najskuplji zadatak koji zahtijeva najvie vremena u ivotnom ciklusu razvoja
softvera.
Naravno, sve ove aktivnosti moraju biti koordinirane. Projekt menadment je
moda najkritinija aktivnost u softverskom inenjeringu.
Osiguranje kvaliteta, ili QA, bavi se utvrivanjem da softverski produkt koji se
proizvede i proces kojim je softver razvijen odgovara standardima kvaliteta.
QA tim je esto odgovoran za poboljavanje standarda kvaliteta. U
mnogim organizacijama QA tim je odvojen od ostatka softverskog
razvojnog tima. Naglaava se da se kvalitet ne moe dodati blizu kraja
razvoja softverskog projekta.Umesto toga kvalitet mora biti rezultat kompletnog
inenjerskog procesa koji se koristi za kreiranje softvera.

Odravanje softvera
U ovom poglavlju razmatraemo deo procesa softverskog inenjeringa koji se
odvija poto je softver isporuen. Moda e vas iznenaditi injenica da za
mnoge dugotrajne sisteme odravanja iznosi vie od 75% ukupne cene
softvera tokom njegovog vijeka trajanja.

Uvod
Na prvi pogled izgleda udno da se termin odravanje odnosi na softver.
Najzad, softver se ne troi na nain kako to ine kompjuteri pri paljenju i
gaenju. Medij na kome je softver pohranjen moe se menjati s vremenom sa
magnetnim esticama koje se istroe sa povrine diska ili trake ili savijanjem
diska. Paljivi sistemski administratori uvae kopije svih osnovnih softvera (i
korisnikih fajlova), najbolje na izdvojenim lokacijama da bi izbjegli
probleme sa vatrom i poplavama.
Takoe uzmite u obzir da softver ne moe da ra ili da se oteti zato to je
prljavtina ula izmeu elektrinih spojeva. Glavne promene na napajanju
kompjutera (110V, 60Hz u USA; 220V, 50Hz u EVROPI) ne utiu na softver.
Naravno, smanjenje napona moe da ima uticaja, ali ovi problemi su dobro
poznati. Oprezni administratori kompjuterskog sistema koriste kombinaciju
supresora, podesivih izvora energije i neprekidnog napajanja da omogue
odgovarajui nivo usluge. Ovi problemi su jasno povezani sa hardverom i
ne predstavljaju nikakav problem za softverske inenjere.
Pouzdanost hardverskih sistema uglavnom prati poznatu krivu kade otkaza.
Relativno visok broj nedostataka na poetku rada hardvera je uglavnom
3

zbog tri faktora: komponente koje otkazuju, greaka u instalaciji ovih


komponenti i neodgovarajuoj upotrebi od strane neiskusnog operatora.
Povean broj otkaza na desnoj strani grafika predstavlja greke koje se
javljaju pri kraju vijeka trajanja hardvera uzrokovane pojaanim otkazivanjem
komponenti.
Odravanje hardvera je drugaije od njegovog testiranja. Na primer, oekujete
da je nov auto koji ste skoro kupili sastavljan od strane eksperata koji koriste
visoko kvalitetne dijelove i podsisteme (kao to su oni za elektronske i koione
operacije) testirane na sigurnost. Takoe, auto je trebalo imati i druge,
osnovne, preglede kada je odvedeno sa proizvodne linije i kada je stiglo u
izlobeni prostor. Ove aktivnosti se smatraju aktivnostima testiranja. Ako nov
auto treba da ima podeene konice i upravlja tokom perioda garancije,
verovatno ete smatrati da je auto slabog kvaliteta i sigurno neete
preporuiti prijatelju da kupi slian.
Takoe vas moe zabrinuti ako se plastika na tabli slomi ili auto zvecka kada
prelazi preko izboina. Sa druge strane, ako imate iste probleme (ne
vezane za sigurnost) posle 100,000 milja koje su preene onda ete
verovatno smatrati da opravka ovih problema spada u normalno
odravanje. Moete odluiti da ga ne popravljate, jer je moda vijek trajanja
auta toliko kratak da nije vredno ulagati u njega.
Ovdje je prisutna personalna karakteristika. Sa prosenom cenom novog auta u
Americi koja je preko 20,000 dolara, prosena mesena amortizacija u
petogodinjem roku bila bi oko 400 dolara meseno podrazumijevajui veoma
nisku interesnu ratu. Moja odluka se bazira na procjeni vrednosti opravke i
koristi od automobila. Ako opravka znai da e auto biti u stanju da se sigurno
koristi sledea dva meseca, onda oekujemo da opravka nee kotati vie od
800 dolara. Preko toga morao bih da se zapitam da li to auto zaista toliko vredi.
Ovdje primenjujem neformalnu analizu cena/dobit da ustanovimo da li auto
treba da se odrava ili treba da se pokloni mehaniarskoj vioj koli (da bi dobili
smanjenje poreza na dohodak), proda dileru ili da ga se otarasim.
Odgovarajue odravanje hardvera ukljuuje odravanje istoe sa
posebnim naglaskom na pokretne delove, zamenu otkazalih komponenti i
optim planiranjem zamene komponenti koje su stare, nedostajue, imaju
greku ili postoji rizik od skorog otkaza. Analiza cena/dobit treba da se izvede
da bi se odredilo da li je trud odravanja neophodan i predstavlja cilj
organizacije. Iznenaujue, ovaj prilaz je takoe dobar nain da se pregleda
softversko odravanje.
Softversko odravanje moglo bi se opisati kao sistematski proces menjanja
softvera koji jo uvijek radi, tako da se postigne prevencija sistemskih otkaza i
da se poboljaju performanse. Softversko odravanje ukljuuje dranje
softverskog interfejsa prostim i standardnim, poklanjajui posebnu panju
problematinim modulima, zameni neispravnih komponenti i optim
planiranjem za promenu komponenti koje su stare, zastarele i rizine po
mogui otkaz. Procjena trajanja preostalog ivotnog vijeka softvera takoe
se mora uzeti u obzir pri odreivanju da li odravanje vredi dodatnih
trokova.

Posle ovog formalnog upoznavanja razloga za softversko odravanje,


pristupamo vie sistematskoj diskusiji na ovoj temi. Postoji nekoliko faktora koji
zahtijevaju da se softver odrava:
1. Hardverska platforma se menja ili postaje zastarela.
2. Operativni sistem se menja ili postaje zastareo.
3. Kompajler se menja ili postaje zastareo.
4. Jeziki standardi se menjaju ili postaju zastareli.
5. Komunikacioni standardi se menjaju ili postaju zastareli.
6. Grafiki interfejsi se menjaju ili postaju zastareli.
7. Relativne namene softverskih paketa se menjaju ili postaju zastareli.
8. Veze sa proizvoaima drugih aplikacija ili sistemskih softvera se menjaju.
9. Softver moe biti defektan, a to postaje oigledno tek kada ga korisnik
upotrijebi. Ovi defekti moraju biti opravljeni.
10.
Korisnici trae nove karakteristike.
11.
Softver mora biti poboljan da moe da se poredi sa novom
konkurencijom.
12.
Postojee softverske greke moraju se prevenirati za sluaj novog
putanja u rad.
Ovi faktori moraju biti podijeljeni u nekoliko razliitih grupa: Faktori od 1
do 9 mogu biti klasificirani kao adaptivno odravanje, i oni se koriste da se
softver prilagodi novoj tehnologiji. Faktori od 10 do 11 mogu biti klasificirani kao
korektivno odravanje, i oni se koriste da softver bude korektiniji, u smislu da
ima to manje greaka. Termin perfekcionistiko odravanje se takoe
koristi u ovom sluaju. Faktor 12 moe biti klasificiran kao preventivno
odravanje, i on se koristi da smanji mogunost nastajanja greke na softveru.
Meutim postoji i zajednika nit. Bitan korak u svim tipovima softverskog
odravanja je razumijevanje softverskog sistema koji odravamo. Prije nego to
serviser pone da menja softver da bi ispravio problem ili ga okarakterisao,
mora razumeti softver u cjelini, ali i odreene module koji moraju biti
modifikovani. Mnogi eksperimenti su pokazali da razumijevanje programa,
to ukljuuje razumijevanje softverskih zahteva i dizajna, oduzima otprilike pola
napora na odravanju softvera.
Razliiti prilazi softverskom odravanju e biti obraeni u ostatku ovog
poglavlja. Meutim treba imati na umu da nita u ivotu nije besplatno i svako
odravanje softvera mora biti finansirano kao deo sofverskog budeta
organizacije.
Opisaemo tipian prilaz procesu odravanja softvera koji podrazumijeva dvije
radnje: odreivanje gdje je problem i njegovu opravku.
Mnogi problemi u softveru mogu se pronai na neki od ovih naina:

Neprivrenost softvera razvojnim standardima. Ovi problemi


ukljuuju lo interfejs izmeu modula, kao to je prosleivanje
pogrenog broja ili tipa argumenta funkcijama.

Logike greke u programskim modulima, kao to su petlje,


ravanje ili nekonzistentna stanja programa.

Neusklaenost izmeu zahteva, dizajna, koda i dokumentacije


informacionog sistema. Nakon faktora koji govore u kom sluaju se
softver treba odravati na ovakav ili onakav nain, navee se i neki
tipini problemi koji ukazuju na potrebu redizajna softvera, odn. izrade
novog.

KANDIDATI ZA REDIZAJN SOFTVERA


Mada je odravanje jedan neprekidan proces, ozbiljno razmatranje mora,
eventualno, biti dato redizajniranju softverskog sistema. Glavna briga je kako
odrediti da li je sistem nepovratno otkazao ili se moe uspjeno opraviti i
odravati. Grupe za testiranje koje rade sa softverom cijelo vrijeme treba da
posmatraju opte stanje softvera i kada bude neophodno preporue da je
softver bolje redizajnirati nego ga nastaviti odravati. Trokovi i povoljnosti
nastavka odravanja softvera kada postane sklon grekama, neefikasan i skup,
moraju biti vagani sa onima za redizajniranje sistema ak i kada redizajniranje
nije najbolje reenje.
Odluka o redizajniranju ili o zaustavljanju odavanja sistema moe biti izvrena
na nekoliko naina. Podrka moe jednostavno biti uklonjena i dozvolie se
da sistem postane zastario i nekoristan; Mora se obezbijediti minimum
podrke neophodne za funkcionisanje sistema dok novi sistem ne bude
izgraen; ili sistem moe biti podmlaivan sektor po sektor, ime mu se
produava ivotni vijek. Kako e se redizajn pokazati, zavisi od individualnih
okolnosti sistema, njegovog operativnog okruenja i potreba organizacije koja
ga podrava.
Mada ne postoje apsolutna pravila kada je bolje redizajnirati sistem nego
odravati postojei, neki faktori koji se uzimaju u obzir su razatrani u
ovom odeljku. Glavni pokazatelji za redizajn, suprostavljeni nastavku
odravanja, direktno su proporcionalni broju karakteristika izlistanih u
narednim odeljcima. to je vei broj karakteristika, vei su pokazatelji za
redizajn.

esti sistemski otkazi


Aplikacija kojoj praktino stalno treba korektivno odravanje je kandidat za
redizajn. Sa starenjem sistema potrebno je dodatno odravanje, sistem postaje
sve nepostojaniji i osetljiv na promene. to stariji kod, sve su potrebnije
modifikacije, novi zahtevi i proirenja mogu izazvati pad sistema.
Greke treba analizirati da bi se odredilo da li je cijeli sistem odgovoran za
otkaze ili su odgovorni neki moduli ili su dijelovi koda pogreni. Ako je ovo drugo
krivac za otkaze onda e redizajniranje samo tih delova biti dovoljno.

Kodovi stari vie od pet godina


Predvieni ivotni ciklus velikog dijela aplikacija je 3-5 godina. Pogoranje
softvera sa godinama je rezultat brojnih opravki i krpljenja. Ako je sistem star
vie od pet godina, verovatno je zastario i preskup za rad, ovo je stanje veine
kodova koji su sada u upotrebi. Posle pet godina odravanja, mnogi sistemi su
dovedeni do take kada dodatno proirenje i opravke postaju vremenski vrlo
duge. Deo kodova je verovatno loe struktuiran ili loe napisan. Meutim kodovi
6

koji su tani i adekvatni za originalno okruenje, promene u tehnologiji i


aplikacijama mogu napraviti neefikasnim, tekim za proveru i u nekim
sluajevima zastarjelim.
Meutim aplikacije koje su dizajnirane i razvijane sistemski, na nain lak za
odravanje, i ako je odravanje izvoeno paljivo i dokumentovano u
skladu sa uspostavljenim standardima i po direktivama, mogue je da rade
efikasno i efektivno jo mnogo godina.

Previe kompleksne programske strukture i logiki tokovi


Odrati jednostavnost trebalo bi biti zlatno pravilo svih standarda i
putokaza u programiranju. Preesto programeri pokuavaju da piu delove
kodova upotrebljavajui najmanji broj iskaza ili zauzimajui najmanji mogui
memorijski prostor. Ovaj prilaz kodovanju je rezultirao kompleksnim, praktino
nerazumljivim kodom. Siromana programska struktura doprinosi
kompleksnosti. Ako sistem sadri veliki deo kodova ovog tipa i
dokumentacija je esto oskudna-on je kandidat za redizajn.
Kompleksnost se takoe odnosi na nivo donoenja odluka u kodu. to
vei broj grananja (mogunost) odluke, kompleksniji e biti softver. Takoe
to je vei broj linearno nezavisnih kontrolnih grana u programu vea je
kompleksnost programa. Programi sa nekim ili svim nabrojanim
karakteristikama su obino veoma teki za odravanje i kandidati su za redizajn:
Preterana upotreba DO koraka
Preterana upotreba IF iskaza
Nepotrebni GOTO iskazi
Ugraivanje konstanti i literala
Nepotrebna upotreba globalnih promenjivih
Samo-promenjivi kod
Mnogostruki ulazni ili izlazni moduli
Preterana interakcija izmeu modula
Upotreba modula koji izvravaju iste ili sline funkcije

Kodovi pisani za prethodnu generaciju hardvera


Samo par industrija ima iskustvo sa tako brzim rastom kao kompjuterska
industrija, naroito u oblasti hardvera. Ne samo da postoji znaajno
tehnoloko napredovanje, ve je i cena hardvera desetostruko opala tokom
zadnje decenije. Ovaj fenomen je generisao raznovrsne snane hardverske
sisteme. Softver pisan za stariju generaciju hardvera je esto neefikasan
u novijim sistemima. Pokuaji da se kodovi povrno modifikuju da dostignu
noviji hardver su generalno uzaludni, skupi i dugotrajni.

Sistemi koji rade po principu emulacije


Jedna od tehnika koje se koriste za odravanje sistema u radu na novijem
hardveru je emulacija-imitiranje originalnog hardvera i operativnog sistema.
Imitiranje se koristi kada zbog resursa nije mogue promeniti sistem ili su
trokovi preveliki. Za ove sisteme linija izmeu korisnosti i zastarjelosti je
veoma tanka. Jedna od najveih tekoa u odravanju ovakvih sistema je
pronalaenje personala koji je upoznat sa originalnim hardverom i voljni su da
7

ga odravaju. Zato to je hardver koji se imitira zastario, specifine vetine


potrebne za odravanje ovakvih sistema imaju malu primenu drugdje, i
perspektiva odravanja takvog sistema nije obeavajua.

Veoma veliki moduli ili podrutinske jedinice


Mega-sistemi koji su pisani kao jedan ili vie vrlo velikih programa ili
potprograma (hiljade ili desetine hiljada redova kodova po programu) mogu
biti ekstremno teki za odravanje. Veliina modula obino je direktno
proporcionalna nivou napora neopphodnom za njegovo odravanje. Ako veliki
moduli mogu biti restruktuirani i podijeljeni na manje, funkcionalno
povezane sektore, pogodnost za odravanje tih sistema e biti poboljana
(unaprijeena).

Prekomerna zahtevanja resursa


Aplikativni sistem koji zahtijeva znatno vrijeme centralne procesorske jedinice,
veliku memoriju ili resurse drugih sistema moe da bude veoma ozbiljno
optereenje za sve korisnike. Ovakvi sistemi spreavaju obavljanje drugih
poslova i sniavaju nivo i kvalitet usluge za sve druge korisnike. U pitanja koja
treba postaviti u pogledu ovih sistema treba ukljuiti i pitanja da li je jeftinije
dodati jo snage kompjuterima ili redizajnirati i reimplementirati sistem i da li e
redizajn smanjiti zahteve za resursima. Ako zahtevi za resursima nee biti
smanjeni onda nema koristi od redizajna.

Tvrdo-kodirani parametri su subjekti za izmenu


Mnogi stariji sistemi su dizajnirani sa vrednostima parametara koritenih za
izvoenje specifinih izraunavanja tvrdo-kodiranih u izvornom kodu umesto da
se itaju iz tablica ili fajlova podataka. Kad su neophodne promene ovih
parametara svaki program u sistemu mora biti ispitan, izmenjen i ponovo
sastavljen ako je neophodno. Ovo je dugotrajan i proces sklon grekama koji
troi vrijeme i resurse neophodne za ove izmene.
Ako je mogue program bi trebalo modifikovati unosom parametara u
jedan modul ili itanjem parametara iz centralne tabele vrednosti. Ako ovo ne
moe biti uraeno, treba ozbiljno razmotriti redizajniranje sistema.

Podrka nisko-nivoovskim jezicima


Programi pisani nisko-nivoovskim jezicima, naroito ASSEMBLER-om, trae
prekomernu koliinu vremena i napora za odravanje. Uopte takvi jezici
nisu iroko ueni i poznavani. Eto zato je programere koji ga ve znaju
izuzetno teko nai. ak i kada takvi programeri bivaju pronaeni njihovo
znanje ovih jezika je verovatno smanjeno.

Ozbiljni manjak dokumentacije


Jedan od najee zastupljenih problema softverskog odravanja je manjak
adekvatne dokumentacije. U veini organizacija dokumentacija je ili zastarjela
ili ne postoji. ak i kada je dokumentacija obimna kad je dostavljena, ona se
esto ne obnavlja i ubrzano postaje neupotrebljiva kako se modifikuje softver.

U nekim sluajevima dokumentacija je moderna, ali neupotrebljiva (kada je


dokumentacija pisana od strane nekog ko ne razumije softver).
Moda je najgora dokumentacija koja je dobro struktuirana i oblikovana, ali
netana i zastarjela. Ako nema dokumentacije programer je primoran da
analizira kod da bi razumio sistem. Ako je dokumentacija loa programer joj
nee verovati i proverie tanost. Ako je dokumentacija naizgled dobra, ali
tehniki netana, programer e pogreno poverovati u njenu tanost i
prihvatiti njen sadraj. Ovo e rezultirati ozbiljnim problemima, nadodatim
onima koje je trebalo opraviti.
Grupa za odravanje se ne moe osloniti na dokumentaciju i mora ispitati kod
da bi odredili kakve izmene da izvre. Ovo uveava ne samo vrijeme za
opravku, ve i mogunost uvoenja dodatnih defekata nakon izvrenih izmena.

Fluktuacija strunjaka
Strunjaci dodijeljeni projektu tokom faze odravanja moraju prostudirati
aplikaciju i postati familijarni sa procedurom korienom za obradu
podataka. Zbog dugotrajnog uenja za sloene projekte, neki strunjaci
odravanja imaju neadekvatno znanje kako rade aplikacije; oni su moda
sposobni da izvre izmene, ali nisu svesni potencijalnih efekata po
sistem. Takoe, personal odravanja moda ne razumije razloge za izvoenje
projektnih aktivnosti na nain na koji se izvode.

Nedostatak ili nekompletnost specifikacija za dizajn


Poznavanje kako i zato sistem radi je osnovno za ispravno odravanje.
Ako su zahtevi i specifikacije za dizajn nekompletni ili nedostaju, zadatak
odravanja e biti tei. Ako specifikacije nedostaju ili su nekompletne,
proizvod najverovatnije nee biti izveden kako je nameravano i biemo
opsednuti zahtevima za izmenama i poboljavanjima.

Zastarjela tehnologija
Ranije raazvijane aplikacije prvenstveno koriste tehnologije koje su sad
zastarjele. Tekua sistemska tehnologija e isto tako zasterjeti za nekoliko
godina. Eto zato personal odravanja mora biti upoznat sa starijim
tehnologijama. Ovo moe jako ograniiti raspoloivi personal za izvravanje
odravanja i moe iziskivati potrebu da odravanje obavlja personal koji ne
poznaje dobro staru tehnologiju.

Obim testiranja u odnosu na veliinu izmena


Mnoge izmene na aplikacijama sistema su zanemarljive (ukljuuju manje
od 1% programskih iskaza). Da bi se osiguralo da aplikacija i dalje funkcionie
kako je specificirano, itav sistem mora biti testiran. Testiranje 100% koda
kada je manje od 1% promenjeno ne izgleda kao unosan pristup. Meutim
kada je testiranje sistema ogranieno, sistem je podloan regresionom
defektima (problemi u ostatku koda izazvani kodom koji je izmenjen).

Neadekvatna test dokumentacija


Programeri obino imaju adekvatno vrijeme i budet da izvre neophodne
izmene, stvore uslove za testiranje, i testiraju izmene, ali nemaju vremena da
stvore uslove za testiranje i pristupe testiranju itave aplikacije-naroito ako je
test aplikacija nekompletna ili netana. 2 Korektivno odravanje softvera
Prvi korak u korektivnom odravanju softvera je odreivanje to treba da se
opravi. U korektivnom odravanju softvera sve aktivnosti poinju sa
identifikacijom problema u postojeem softveru. Tano odreivanje modula
koji prouzrokuje problem moe biti teko. Ovaj osnovni prilaz baziran je na
tehnici pokuaja i greaka, voen serviserovim poznavanjem sistema i
njegovim osnovnim poznavanjem kompjuterske nauke i softverskog
inenjeringa.
Kad problem jednom bude odreen, odluka koja e biti donesena je koji, kako ili
kada e problem biti rijeen.
Ovo obino zahtijeva nekoliko povezanih radnji:
Zakljuak da problem postoji
Dokumentovanje problema.
Odreivanje vanosti problema.
Odreivanje prioriteta problema po redu vanosti za opravku.
Odreivanje koji problemi nee biti opravljani zbog nedostatka resursa.
Reavanje problema.
Testiranje sistema da vidimo da li rjeenje ovog problema moe da
prouzrokuje greku u drugom dijelu softvera.
Dokumentovanje reenja kao dijela izvornog koda.
Dokumentovanje reenja u drugim formama ako su izvrene promene
originalnog dizajna sistema.
Auriranje baze podataka sa informacijama o softverskim grekama.
Moda ovo izgleda kao mnogo posla. Odravanje softvera zahtijeva, po
svojoj prirodi, veliku koliinu rada sa dokumentima da bi se aurirala
dokumentacija. Najzad, proizvoai softverskih sistema ili vlade rijetko
zauvek ostaju na istim projektima. Sa velikom promenom (gubitkom)
personala, pisana dokumentacija o svim izmenama mora biti ostavljena
buduim serviserima sistema.
Uoavanje softverskih problema moe se dogoditi na vie nivoa. U najidealnioj
situaciji problem je uoila osoba koja je upoznata sa kompletnim
sistemskim zahtevima. U ovom sluaju dokumentovanost problema je
trenutna i odreivanje izvora problema je tada uopte lako.
ea situacija je da je osoblje koje uoi problem potpuno neupoznato sa
unutranjom strukturom softvera. Zaista, osoblje koje uoi problem moe
ak biti i neupoznato sa operacijama koje se oekuju od softvera. Ovo je
tipian primer problema koji su prvo primijetili novi korisnici koji su zatim
telefonom pozvali tehniku podrku za upoznavanje sa procesima ili sline
primene. Tehniki, personal koji radi na tehnikom izvetavanju je odgovoran za
voenje korisnika koji trai pomo kroz ovaj pretpostavljeni problem, da trai
problem u podeavanju i konfiguraciji softvera, ukratko da odredi da li je
10

problem nastao grekom korisnika ili je greka u softveru. Tamo u osnovi


postoje dva problema: korisnik nije razumio objanjenja za instalaciju i rad ili je
softver u otkazu.
Kad personal za tehniku podrku odredi da korisnik nije razumio dokumentaciju
instalacije sistema ili sistemskih operacija, ostaju im da urade dva zadatka.
Korisnik mora biti voen pravilnim instrukcijama dok ne rijei problem. I
jo personal za tehniku podrku mora dokumentovati problem tako da
dokumentacija i korisniki interfejs budu poboljani. Ovo se esto radi u
novoj verziji koja e se tek pojaviti. Personal za tehniku podrku treba da
potpuno opie i dokumentuje probleme i preda to osobama odgovornim za nove
verzije sistema tako da e korisnici, nove verzije smatrati unaprijeenim.
Primijetili smo u prolosti da je veina kompjuterske dokumentacije mogla biti
unaprijeena upoljavanjem tehniki obrazovanih pisaca.
U sluaju softverske greke, od korisnika se ne oekuje da obezbijedi
detaljnu dokumentaciju o detaljima problema. Tipian korisnik nema toliko
tehniko znanje i, u svakom sluaju to nije njegov posao. Personal za tehniku
podrku je odgovoran da uzme informacije od korisnika i organizuje ih na nain
na koji mogu biti iskoritene u procesu opravke.
Cilj linog dokumentovanja softverskih problema je u sposobnosti
ispunjavanja formulara za softversko odravanje ili formulara za izvetaj o
odravanju. Zapamti da formulari pomau u potpunom opisivanju problema
i za procjenu relevantne vanosti problema. Na osnovu tih formulara,
rukovodilac softverskog odravanja e proceniti i odrediti prioritete na osnovu
kojih e se vriti odravanje softvera.
Nakon to je problem rijeen, jo jedan formular treba da se ispuni. Ovaj
formular pokazuje odgovor na formular sa pitanjima o softverskom
odravanju i kao takav je esto nazivan formular sa odgovorima za
softversko odravanje. Zapamti da formular sa odgovorima uvek pokazuje
listu zahvaenih modula i vrijeme koje je bilo potrebno za reavanje problema.
Treba primijetiti i vanost da se ovim formularima doda ekstra dokumentacije.
Veoma je korisno ako se kao prilog da i odtampan sadraj ekrabna, na kom se
vidi manifestacija greke. Ako nema ovih mogunosti, slika ekrana moe biti
dovoljna. Oigledno, digitalna slika je najbolja.
Moda ste zabrinuti produavanjem papirologije koju zahtijevaju ovi formulari.
Za ta trebaju sve ove ekstra informacije? Kome trebaju? Sledei primer
pokazuje potrebu za ovim aktivnostima.
Pretpostavimo da ispitujete softverski sistem koji mora da bude najveeg
kvaliteta jer e biti koriten bez modifikacija kao jezgro za mnoge druge
softverske proizvode u primeni sa posljedicama kritinim posigurnost.
Primarno zbog njegovog dizajna ovaj softver ima mnogo manji odnos defekata
od veine drugih softvera u organizaciji. Meutim, visoki kvalitet nije
dovoljan. Zbog toga to e se jezgro koristiti u toliko mnogo aplikacija,
vano je proveriti i odrediti tendencije moguih softverskih greaka.
Svakako, nema potrebe za formularima pisanim na papiru. Formulari
mogu biti uvani u elektronskoj formi sa automatskim unosom u bazu
11

podataka. Idealno, serviserima treba da budu dostupni softverski paketi koji


podravaju aktivnosti u odravanju, automatski stvarajui formulare i snimaju
informacije u bazu podataka . U mnogim softverskim okruenjima nedostatak
sposobnosti generisanja formulara je najkritiniji problem.
Najjednostavnije reenje je unos podataka o odravanju u tekst formatu
direktno u tabelu ili u bazu podataka.

3 Adaptivno Softversko Odravanje


Adaptivno odravanje je proces menjanja softvera u skladu s novim
trendovima na tritu. Oekivane promene hardvera, sistema,
interoperatibilnosti aplikacionih paketa i novih karakteristika nametnutih od
strane konkurencije su vani u odreivanju potrebe za adaptivnim
odravanjem softvera. .
Poznat je svima primer MICROSOFT WORD-a koji je proao kroz mnoge verzije
od njegovog poetka. Neke od ovih promena su ukljuivale korisniki
interfejs i lakou koritenja. Druge izmene su obezbjedile dodatne
karakteristike i zajedniki format fajlova. esto, dokumenta otvorena u
jednoj od kasnijih verzija WORD-a ne mogu biti itana ili menjana u ranijim
verzijama istog softvera (ovaj problem nije jedinstven za MICROSOFT. Isti
iskaz se moe primeniti na COREL WORD PERFECT, izmau ostalih).
Za neke korisnike, prednost zajednikog formata fajlova u kojima dokumenti
mogu biti itani i na PC-iju i MACINTOSH-u je vanija naspram sposobnosti
stvaranja velikih fajlova za dokumente. Za druge korisnike su vanije
mogunosti koje obezbeuju makro-i nego dodatni sigurnosni zahtevi za
tretiranje makro-virusa koji se mogu prenositi sa PC-a na MACINTOSH i obratno.
Kao kod korektivnog odravanja znatna testiranja softvera su neophodna,
naroito regresiono testiranje.
To je podesno do te take da se pokau neki problemi koji nisu bili oekivani da
e se otkriti ak i tokom najiscrpnijih testiranja softvera..
Jo jedan problem koji naroito uznemirava softverske servisere. Mnogi
softverski inenjeri, naroito oni sa prvobitnim iskustvom sa kompjutera
koji su imali veliku koliinom fizike memorije, ne misle da njihovi sadanji
sistemi imaju ikakva ogranienja.
Naime, memorija moe biti potroena naroito ako je sastavljena od
jeftinih proizvoda iji su memorijski zahtevi nepoznati.
Treba biti svestan da je situacija naroito sloena za odravanje ako je softver
koji treba odravati u vezi sa jeftinim komponentama hardvera ija je
unutranja struktura nepoznata.
Jasno je da softverski serviser mora imati mnogo vie vetina od obinog
iskustva u programiranju.

12

4 Preventivno Odravanje Softvera i Problem 2000 Godine


Preventivno odravanje softvera treba da prevenira softverske probleme u
postojeem softveru prije nego to oni nastanu.
Najverovatnije najbolji nain da se ilustruje preventivno odravanje na
tematskom primeru-problem 2000 godine (u vreme kada je ova knjiga
pisana ovaj problem je bio u okviru preventivnog odravanja. U vreme kada
bude ovo itao to e biti jedan od problema korektivnog odravanja).
Ova situacija izgleda bezopasno: mnogi kompjuterski problemi prikazuju
datume koristei dva mesta za cifre i 2000. godina e traiti novu
interpretaciju ovih ve postojeih fajlova. Zato je ovaj problem tako vaan?
Postoji zapravo dva dijela za odgovor: prvi u veliini problema koji su
razumele organizacije koje koriste softver ili su odgovorne za njega, i
drugi mogui skriveni problemi iji opseg se moe samo nagaati. Svaki od
ovih scenarija ima problem sa prekoraenjem (overflow) koji e morati da bude
rijeen. Velika koliina softvera na koje bi se mogao odraziti Y2K problem je
prouzrokavao nonu moru za odravanje, naroito zbog manjka
kvalifikovanog personala.
Postoji mnogo scenarija za budue probleme sline problemu Y2K:

Iscrpljivanje telefonskih pozivnih kodova u Americi do 2020 godine


Tranzicija sa ASCII koda na internacionalni karakterni set kao to je
UNICODE The Global Positioning System (GPS) je visoko zavistan od
tanog tajminga informacija za odreivanje pozicije. Delovi vremenskog
raunanja su mereni od 05.01.1980 godine, kada je GPS prvi put
startovan. Aritmetika raunanja sa nedeljama u datumima se rade u
modularnom aritmetikom modulu 1024 i doi e do promene sa 1023 na
0000 u avgustu 1999 godine. Telefonski brojevi koji se postavljaju u
deset cifara (tri za kod podruja i sedam za lokalni broj) e biti iscrpljeni u
Americi oko 2015 godine.

Datumski i vremenski mehanizmi u UNIX operativnim sistemima


baziranim na broju sekundi je startovao 01.01.1970 godine. Broj sekundi
se uva u 32-bitnom integratoru koji e se prepuniti 19.01.2038 godine.

Devetocifreni brojevi socijalnog osiguranja e u Americi biti iscrpljeni


otprilike u periodu od 2050 do 2075 godine.

Poto e se ovi problemi pojaviti u budunosti, preventivno odravanje je veoma


vano. Softver koji je otporan na ove nezaobilazne probleme imae prednost
kada se problemi pojave.
Prodiskutovaemo problem Y2K detaljnije prije nego to pokuamo da
odgovorimo na ova pitanja.
Ako su baze podataka podeene sa tano odreenom irinom polja za prikaz
datuma, pomeranje svih ostalih podataka da bi se napravilo jo mesta
moe prouzrokovati ozbiljne probleme u performansama sistema jer blokovi
podataka moda nisu linearizovani sa blokovima memorije prouzrokujui
probleme sa performansama. Problem se pogorava jer svaka rezervna traka i
arhiva mora takoe biti izmenjena. Meutim, primer problema sa bazom
13

podataka, prethodno opisan, je jednostavno uporeen sa drugim problemima


koji mogu biti sakriveni. Primer je kontrolni softver za nuklearni reaktor. Kako
je pokazao RICHARD LEFKON u oktobru 1997 godine izdatom u magazinu
Softvare, softver koji uklanja kontrolnu ipku u 22h 31.12. i vraa je tri sata
kasnije je zavisan od tanog tumaenja vremena i datuma. ekanje 100 godina
na izvrenje jednostavno nije prihvatljivo reenje. Ovo je primer skrivenog
sluaja problema Y2K.
Koliko je velik problem? Opet citiramo magazin Softvare izdatog u oktobru 1997
godine koji daje tri pretpostavljene veliine za Ameriku (privatne i vladine):
Gartner Group $200 biliona Istraivanja za Softversku produktivnost $70
biliona Drutvo zai Informacioni Menadment $136.4 biliona
Ove pretpostavke su velike jer problem Y2K nije ogranien samo na baze
podataka u velikim raunarima. Mnogi ureaji, pogoeni ovim problemom nisu
samo tipovi kompjuterskih aplikacija koje nam odmah padaju na pamet.
Razmotri potencijalni problem u takozvanim ugraenim procesorima koji
su tako uobiajeni u svakodnevnom ivotu. to je sa automatskom
kontrolom brzine u tvojim kolima? Da li problemi sa raunanjem datuma utiu
na ova vozila?
Ovo znai da isto ogranienje polja za datume koje pogaaju raunarske
sisteme, pogaa i ugraene mikroprocesore.
Svi ovi problemi imaju bar jedno zajedniko: dizajnerska odluka da ostave
samo ogranienu koliinu prostora za snimanje podataka e prouzrokovati
ogromne probleme kada ta ograniena koliina prostora bude iscrpljena.
Druga dva problema e se pojaviti tokom sledeih par godina. Evropska
Monetarna Unija e poeti konverziju u Euro u januar 1999 godine. Oigledno,
ovo ukljuuje transformaciju valuta za nove transakcije. Na nesreu ovo e
takoe ukljuiti revalutaciju podataka za primenu na dalekosene finansijske
modele za ekonomske projekte. Postojali su i neki problemi u vezi sa simbolom
za ovu valutu da se podesi u dostupne fontove mnogih WORD procesora.
Drugi problem e se pojaviti 29.02.2000 godine. 2000 godina je prestupna
zbog:
1. Broj 2000 prolazi prvi test jer je deljiv sa 4.
2. Uobiajeni uslov da godina deljiva sa 100 nije prestipna je prevazien
injenicom da je 2000 godina takoe deljiva sa 400.
Drugi korak u odreivanju da li je 2000 godina prestupna moda nije
pravilno implementiran u datumskim kalkulacijama.

5 Kako itati zahteve, dizajn i izvorni kod


Onog trenutka kada se problem odravanja preda strunjacima za odravanje,
oni moraju menjati izvorni kod. Meutim mnogi softverski sistemi se sastoje
od miliona linija izvornog koda. Svaka linija je potencijalno mesto pojavljivanja
problema. Ali gdje da ponemo?

14

Softverski serviser e potraiti sve dostupne informacije: o zahtevima, o


dizajnu, prirunicima, u drugoj dokumentaciji i naravno u samom izvornom
kodu. Cilj je razumeti efekte izmena u softveru, prije nego to su izmene
izvrene. Svako ko je pisao softver je upoznat da emo promenom dijela
softvera uticati i na njegove druge delove i performanse. Zato je sistemski
prilaz neophodan.
Imaj na umu staru poslovicu: ako se izvorni kod ili bilo koji od zahteva, dizajna ili
dokumentacije ne slau, oboje su pogreni! U tom sluaju izvorni kod je sigurni
vodi jer pokazuje kako sistem radi trenutno. Dostupni izvorni kod se uvek ita u
procesu odravanja.
Da pretpostavimo da razmatramo samo izvorni kod. to emo prvo traiti?
Odgovor se sastoji od vie delova. Mogli bi startovati traei izvetaje o
odravanju slinih situacija da bi potraili nagovetaje gdje da traimo
probleme. Takoe bi mogli upotrijebiti bilo koji CASE alat da analiziramo izvorni
kod i pokaemo programsku strukturu. Nakon to smo skupili dovoljno
informacija da ograniimo nau panju na manji broj modula, svaki od njih treba
proveriti istim nivoom detaljnosti kao kad vrimo proveravanje u toku pisanja
programa.

6 Menaderska perspektiva odravanja softvera


Iako bi to moglo iznenaditi studente, odravanje softvera je jedna od najskupljih
taaka u ivotnom ciklusu softvera. Ono to vole menaderi je smanjivanje
trokova. Ti esto moe pomoi menaderu preporuivanjem naina da se
smanje trokovi odravanja.
Baza podataka sa zahtevima i poslovima za odravanje moe da
pomogne. Na primer sistem opisan u prthodnom poglavlju ima bazu podataka
za odravanjeu kojoj obino ispitivanje pokazuje da je jedan jedini modul
prouzrokovao 44% problematinih softverskih greaka. Problemu se ulo u trag
novim dijalektom komandnog jezika koji se kreira sa svakom novom
verzijom softvera. Zamrzavanje komandnog jezika prouzrokuje male
funkcionalne gubitke u pogledu korisnika, ali redukuje trokove odravanja
za znatnu koliinu novca. Menaderi vole ove informacije. To ini njihov posao
lakim.
Ova vrsta analize napora na odravanju je ekstremno vaan za menadere
na svim nivoima. Za najkomercijalnije organizacije, male dobiti, tokom
odravanja naspram putanja novih softvera, su planirane. Zato se trokovi
odravanja minimiziraju gdje god je modue.
Naravno, uvek je najvanije pratiti upute za standarde i postupke tvoje
organizacije za procedure dokumentovanja. Kratak pregled
Mnogo napora za softverske projekte se pojavljuje posle isporuke i
ugradnje. Ovo se zove faza odravanja.
Postoje tri osnovna tipa odravanja:
Korektivno odravanje Adaptivno odravanje Preventivno odravanje

15

Y2K problem je primer preventivnog odravanja-prije nego to se pojavi


problem. Kada se problem pojavi to e biti problem korektivnog odravanja.
Postoji izreka koja opisuje skepticizam koji mora da ima serviser: ako se izvorni
kod i bilo to od zahteva, dizajna ili dokumentacije ne slau-oboje su pogreni.
Kompjuterski virusi Kompjuterski virusi su mali programi koji imaju za cilj
nanoenje tete t. zloupotrebu. Nazvani su tako jer imaju sposobnost
razmnoavanja (sami sebe iskopiraju na vie mesta na disku ili na disketu).
Aktiviraju se tako sto se "zakace" za neki legalan program i startuju kada se
startuje i taj program. Obicno ne pocinju odmah sa pravljenjem tete, vec na to
cekaju izvesno vreme (u nekim slucajevima je to odredeni datum), kako bi
njihovo tetno dejstvo bilo to razornije.
Tom prilikom ce virus zaraenom racunaru naneti tetu koja se krece od
ispisivanja bezazlenih poruka pa sve do brisanja fajlova, formatiranja diska,
otkazivanja monitora... i zato je znaajno da budu primeeni i uklonjeni na
vreme od strane antivirusnog programa.
Sam termin kompjuterski virus prvi put je upotrebljen na Sedmoj svetskoj
konferenciji posveenoj bezbednosti u radu na raunarima, koja je odrana
1984. godine u SAD. Iako je razmatranje fenomena kompjuterskih virusa
zapoeto mnogo ranije, ni dan-danas ne postoji jedinstvena definicija
pojma. Osnovna potekoa za definisanje je ta to se sve osobine virusa
(sposobnost da se povezuje sa drugim programima, da radi i pri tom ostaje
neprimeen, potencijalna kodljivost po zaraeni raunar i druge) mogu pronai
i kod drugih programa, a postoje i virusi koji nemaju sve te osobine. Na primer,
virusi koji se aktiviraju kada korisnik raunara klikne na email attachment
definitivno nisu nevidljivi, a ni sposobnost virusa da natete informacijama u
zaraenom raunaru ne moe biti uzeta kao strog parametar, jer postoji gomila
virusa koji ne nanose nikakvu tetu.
Drugi problem je u tome to bi svaka definicija bila punovana samo za neki
operativni sistem za koji je odreeni virus specijalizovan. (Sreom po
naunike, a nesreom po korisnike, nedavno se pojavio prvi multiplatformski
virus, W32.Winux, koji napada i Windows i Linux operativne sisteme. Ovaj
virus nije destruktivan, ali je, naravno, samo pitanje dana kada e se pojaviti
neki njemu slian virus koji jeste.) I dok je na pitanje ta je virus? jo
uvek nemogue precizno odgovoriti, postoji mnogo oblika malicioznog softvera
koji se pogreno tako nazivaju: dobar primer su trojanci, koji, iako su
najee napravljeni iz krajnje zlobnih namera, nemaju sposobnost
samokopiranja - te automatski ispadaju iz konkurencije.
Virusi - mali kompjuterski programi veliine nekoliko kilobajta, koji se obino
ugnjezde u neke druge fajlove. Znai fajl u koji se virus ve ugnjezdio je zaraen
fajl, taj fajl ne menja ime i moe se izvravati kao ranije (na prvi pogled je
sasvim uredu), ali njegovim pokretanjem e se izvriti i virus to obino
podrazumeva:
1. da e se uitati u memoriju i biti aktivan sve vreme dok je raunar
ukljuen,
2. kopirae se - ugezditi u nove fajlove-programe na Vaem raunaru,
3. podesie da se sa on pokree prilikom svakog sledeeg ukljuenja
raunara,
16

4. za svaki virus je specifino ta e osim ovoga jo raditi na Vaem


raunaru, neki virusi mogu da briu fajlove sa Vaeg raunara ...
Kako zaraen fajl dospeva na Va raunar ?
1. neko vam je takav fajl poslao u mailu,
2. dobili ste ga snimljenog na disketu od prijatelja iji je raunar ve
zaraen,
3. downloadovali ste zaraen fajl ... Crvi-Worms - za crve je karakteristino
da jednom kada se nau na Vaem raunaru, poinju da samostalno - bez
Vaeg znanja alju mailove u kojima su njihove kopije. Najei scenario je
sledei: primite mail koji u sebi nosi fajl (Attachment), Vi ne znate da je taj
fajl u stvari crv i pokreete ga da vidite ta je. Crv aktiviran i to znai:
a. da e se uitati u memoriju i biti aktivan sve vreme dok je raunar
ukljuen,
b. izabrae nasumice adrese ljudi iz Vaeg adresara i poslati im bez
veeg znanja mailove sa svojom kopijom ili e dodati svoju kopiju u
mailove koje Vi aljete,
c. pokretae se prilikom svakog sledeeg ukljuenja raunara, svaki
crv pojedinano ima jo osobina specifinih samo za njega.
Kako zaraeni mail doe do Vas ?
Jednostavno, sam crv je sa nekog zaraenog raunara poslao mail sa svojom
kopijom na Vau email adresu.
Kada i Va raunar postaje zaraen ?
Kada se pokrene fajl-program koji je doao sa mailom (Attachment). Nekad je
neophodno da Vi otvorite taj fajl, a nekada je dovoljno da samo otvorite mail
(npr. mail u HTML formatu koji pokree Java ili ActiveX skriptove koji se nalaze u
Attachmentu).
Najei oblici u kojima se alju crvi su:
1. u obliku izvrnih programa .EXE, .COM, .BAT,
2. u obliku skriptova .SCR, .PIF, .VBA, .VBS (Visual Basic Script),
3. u obliku makroa .DOC.
Najnoviji crvi koriste rupe u Microsoft Outlook Express-u. Outlok Express
omoguava pokretanje koda iz maila ve u trenutku kada mail stigne u Va
INBOX, tako da sada za pokretanje crva iz zaraenog maila nije vie potrebno ni
da otvorite mail. A ta su trojanci Ime su dobili prema uvenom trojanskom
konju.U velikom drvenom konju koji je po Odisejevoj ideji poslat Trojancima na
poklon krila se grupa naoruanih Grka koji su pod okriljem noi napustili svoje
skrovite i otvorili vrata Troje omoguivi grkoj vojci da zauzme grad, i tako
okona desetogodinji rat.
Kompjuterski "trojanski konji" na slian nain pod maskom nekog poklon
programa sa zanimljivim nazivom, stiu putem e-maila, news grupa ili
popularnih chat programa do lakovernih i nedovoljno informisanih korisnika
mree, slatkoreivo ih navodei da ga pokrenu i instaliraju na raunar.

17

Za razliku od virusa, trojanci su komleksne klijent-server aplikacije za pristup


udaljenom raunaru u mrei. Server je trojanac koji se instalira na raunaru
neopreznog korisnika i po uspostavljanju veze sa Internetom, otvara odreeni
port za uspostavljanje sesije sa klijent aplikacijom preko koje takozvani haker sa
svog racunara stupa u vezu sa trojancem i na taj nain dolazi do poverljivih
podataka. Spisak portova koje koriste trojanci moete pogledati na
http://www.onctek.com/trojanports.html.
Kako e se razorno dejstvo manifestovati, razlikuje se od trojanca do trojanca.
Trojanci mogu poslati korisniko ime i lozinku (koji se nalaze u pwl fajlovima na
raunaru) na odredjene e-mail adrese, iskoristiti Va e-mail klijent da sami sebe
poalju na sve adrese iz Vaeg address book-a, poslati svoju kopiju preko mIRCa, preuzeti celokupnu kontrolu nad Vaim raunarom itd.
Trojanci - program koji kada dospe na Va raunar i pokrene se. Omoguava
pristup Vaem raunaru sa Interneta. Znai da neko ko zna da je na Vaem
raunaru pokrenut trojanc (a moda Vam ga je i sam poslao) moe vrlo lako da
pristupa podacima na Vaem raunaru. Trojanci se najese ne ire kao virusi,
nego se ciljno alju/instaliraju na odreeni raunar. Oni tamo ekaju i igraju
ulogu servera na zaraenom raunaru - nude usluge klijentima.
Neautorizovani pristup drugih korisnika - znai neko pristupa Vaem
raunaru, a da Vi to ne elite i niste dozvolili. ta on moe da uradi:
1. ita, pie i brie Vae fajlove (recimo da eli Va username/password za
Internet, pa da moe da troi Vae vreme),
2. da Vam restartuje/iskljui raunar,
3. da iskoristi Va raunar za napad na neki novi raunar
Kako je to mogue ?
1. Prvo, operativni sistem i ostali programi nude mogunost da Vi omoguite
pristup drugima Vaem raunaru (na Vama je da li Vi imate potrebu da to
dozvolite i da odredite emu, kako i ko moe pristupati),
2. Drugo, vremenom se otkriju propusti proizvoaa operativnog sistema,
koji ostavljaju bezbednosne "rupe" u programu. Hakeri trae i koriste ove
propuste za pristup tuim raunarima.

Word i makro virusi


Makro virusi su se ne tako davno pojavili u raunarskom svetu, t. od onda kada
je Microsoft u paket Office ubacio i Visual Basic (prvo je to bio WordBasic). Ako
esto razmenjujete Office fajlove sa kolegama morate biti oprezni i svesni
postojanja ovakvih virusa. Virusi se sada piu u najnovijoj verziji Basic-a za
aplikacije - Visual Basic for Applications ili VBA. Makro virusi mogu da budu isto
tako destruktivni kao i ostali virusi, jer imaju mogunost samoreprodukcije
(umnoavanja) i preko novog-starog programskog jezika, dostupni su im svi
resursi zaraenog kompjutera (to znai i mogunost brisanje podataka).
Jezik VBA je dodat paketu radi poveanja fleksibilnosti i mogunosti paketa MS
Office, tako da njegovi korisnici prvenstveno mogu da pisanjem rutina poveaju
produktivnost u radu. Jedan od najpoznatijih makro-virusa bio je "Concept" (u
verzijama Word-a 6.0 i 95), iju su "koncepciju" preuzeli i kasnije nastali virusi.
18

Ovaj virus se ubacivao u osnovni ablon Word-a - "Normal.dot" i odatle se


kopirao u svaki novi dokument. Od tada su nastale mnoge nove generacije
naprednijih i destruktivnijh makro-virusa.

Kako da se zatitite od makro-virusa?


Postoje dve solucije: da preuzimate samo proverene dokumente, a ako su i iz
proverenih izvora opet ih proverite nekim od antivirusnih softvera. Druga
solucija je ona koja je ugraena u sam Word, a to su funkcije bezbednosti. Da bi
zadali Word-u odreeni stepen zatite pozovite padajui meni "Tools -> Macro
-> Security". Otvorie vam se dijalog prozor "Security" na kome imate dve
kartice: Security Level i Trusted Sources. Na prvoj kartici podeavate nivoe
sigurnosti:
High - ovo je Word-ov standardni nivo, gde e se ukoliko neki dokumenti
imaju makroe, otvoriti samo oni koji imaju sertifikate iz izvora koje korisnik
odredi.
Medium - Word e otvoriti fajlove koji sadre makroe, ali e pre svakog
otvaranja postaviti upit, da li elite da se dokument otvori sa makroom ili bez
makroa.
Low - u ovom sluaju Word e otvoriti sve dokumente bez obzira da li sadre
makroe ili ne.
Na drugoj kartici se nalazi lista pouzdanih izvora, t. spisak ablona i dodataka
koje ste runo instalirali na sistem. Stavke iz liste moete ukloniti, ako izaberete
stavku i pritisnete dugme "Remove". Telefonski virusi
Strunjaci za
bezbednost upozoravaju da bi sledea meta hakera mogli da budu mobilni
telefoni nove generacije, opremljeni mogunou stalne veze sa Internetom.
Prvi primer "zloudnog" koda je zabeleen u Japanu, gde je e-mail poruka
poslata korisnicima mobilnih telefona sadrala link koji je, kada se na njega
klikne, prouzrokovao stalno pozivanje broja hitne pomoi. Pozivanje ovog broja
je japanski operater privremeno blokirao, dok nije otklonjen bezbednosni
propust. Na isti nain, upozoravaju strunjaci, hakeri bi mogli da "nateraju"
telefone da pozivaju neku meunarodnu "vruu liniju".
I u Evropi je bilo primera delovanja hakera, koji su koristili SMS poruke kako bi
blokirali rad mobilnog telefona. Da bi se omoguilo normalno funkcionisanje,
morala je da bude izvaena baterija, t. resetovan aparat. Nova verzija ovakvih
poruka blokira rad telefona sve dok se SMS ne obrie sa samog servera
operatera. U Sedinjenim Dravama nije bilo veih problema sa hakerima, jer
mobilna telefonija zaostaje za tehnologijom u Evropi i Japanu. Prihvatanje novih
standarda i uvoenje mrea tree generacije oznaie i poetak telefonskih
virusa, smatraju strunjaci za bezbednost.
Sve doskora, mobilni telefoni nisu mogli da skidaju sadraje sa Mree. Nova
generacija ureaja, prikljuena na Internet, bie idealna meta za hakere, koji e,
na isti nain kao i kod kompjutera, moi da kreiraju viruse, crve i trojance koji e
blokirati rad, otvarati mogunost za daljinsku kontrolu telefona ili krau lozinki i
brojeva telefona u imeniku. Za "pametne telefone", poput modela Nokia
Communicator, Handspring Treo, Motorola Java Phone i Mitsubishi Trium-Mondo,
antivirusna kompanija F-Secure poela je da razvija softver pod nazivom Cell
19

Phone Virus Challenge, koji e predstavljati svojevrsni firewall, tip softvera


dobro poznat vlasnicima kompjutera.

Koliku tetu nanose virusi?


Na pitanje iz naslova odgovara kalifornijska agencija Computer Economics , koja
tetu izraava u dolarima. U trokove koje izazivaju zloudni kodovi spadaju
sume potroene na ienje i izleenje, kao i novac koji je izgubljen
angaovanjem sistem administratora, spreavajui ih da se bave svojim
redovnim aktivnostima.
U 1999. godini ukupna teta na svetskim kompjuterima iznosila je 12,1 milijardu
dolara, da bi u 2000. godini ovaj broj dostigao 17,1 milijardu. U tekuoj godini
su virusi prouzrokovali tetu od 10,7 milijardi dolara, i ako se ne pojavi neka
nova infekcija, ukupna teta bi, na kraju godine, mogla da iznosi oko 15 milijardi
dolara. Ali, januar 2002. godine je jo daleko, i malo je verovatno da e hakeri
mirovati - dovoljna je jo jedna "solidna" infekcija, pa da ova godina postane
rekordna.
Na top-listi "tetoina", koji su "arili i palili" proteklih godina, nalaze se Love
Bug, Melissa, Code Red i SirCam . Upravo su oni bili najuspeniji, i izazvali
najveu tetu, izraenu u dolarima. "Ljubavna buba" se pojavila u maju 2000.
godine, i od tada uspela da inficira 40 miliona kompjutera. Procenjena teta: 8,7
milijardi dolara. "Melissa" virus dri rekord za 1999. godinu, izazvavi tetu od
1,2 milijarde dolara.
Ovogodinji najopasniji virusi su "CodeRed" i "SirCam", koji su zapoeli svoj
pohod u julu: prvi je zarazio oko milion kompjutera i "vredeo" 2,6 milijardi
dolara, dok se drugi "uselio" na 2,3 miliona maina i izazvao tetu od 1,04
milijarde dolara. Oba zloudna koda su postigla ovakve rezultate za samo
mesec i po dana, pri emu infekcija i dalje traje, a broj potroenih/izgubljenih
dolara se uveava. Po brzini irenja, "CodeRed" ostaje neprikosnoven: za samo
9 sati od trenutka kada se pojavio, zarazio je 250.000 kompjutera.

Zatita
Antivirus - program koji ima zadatak da sprei infekciju i oisti zaraene fajlove.
Antivirus proverava fajlove tako to u njihovom kodu trai kodove poznatih
virusa. Svaki Antivirus zato ima bazu sa kodovima poznatih virusa. Novi virusi
se pojavljuju /piu svakodnevno, pa je zato neophodno redovno aurirati bazu
antivirusa koji ste instalirali na Vaem raunaru. Dakle, da jo jednom
istaknemo: izuzetan antivirus, ako radi sa bazom starijom od nekoliko meseci
prua ve izuzetno slabu zatititu, jer e veina novih virusa pored njega proi
neprimeena. Neki od najpoznatijih proizvoaa antivirusa su: Kaspersky,
McAfee, Norton, Sophos, F-Prot. Preporuke:
1. izabrati proveren antivirus (preporuka - Kaspersky),
2. podesiti automatsko auriranje baze virusa bar jednom nedeljno,
3. podesiti akciju nad zaraenim fajlovima (brisanje, dezinfekcija, dijalog)
4. inicijalno skenirati sve diskove na raunaru.

20

Firewall - program koji ima zadatak da kontrolie i ograniava pristup Vaem


raunaru sa Interneta i iz mree. Ideja je da Vaem raunaru mogu da pristupe
samo oni kojima ste Vi to dopustili i da rade samo ono to ste im dopustili, a da
ostali budu onemogueni i da njihovi pokuaji budu evidentirani - znai stop
neeljenim upadima.
Kako ovo funkcionie ? Da bi ovo bilo jasno moramo objasniti dva pojma: IP
adresu i TCP i UDP portove.
1. Sve to je povezano na Internet ima bar jednu svoju jedinstvenu IP adresu
(To moe biti Va raunar sa kojim ste preko provajdera, dobivi od njega
privremenu IP adresu izali na Internet, gateway server neke firme preko
kog cela firma ima izlaz na Internet, ruter, Internet server koji nudi neke
servise HTTP, FTP , itd.). Svaki paket koji putuje Internetom nosi svoju
izvorinu i svoju odredinu IP adresu, tako da se zna od koga je poslat
(kome treba poslati odgovor) i kome je poslat.
2. Sa Vaeg raunara koristite razne sadraje na Internetu kroz mnogobrojne
programe (Http, FTP, Chat, ICQ, Broadcast Internet Radio ...). Upiti i
odgovori se prenose u obliku TCP ili UDP paketa. Da bi se razlikovali paketi
od razliitih programa svaki program ima svoj "kanal" port po kome alje i
prima pakete. Portovi su standardizovani, pa tako npr. FTP koristi port 20 i
21, Telnet port 23, HTTP port 80, ICQ portove 1508 i 1509. Vi sada moete
da dozvolite/zabranite saobraaj koji ka Vaem raunaru dolazi sa
odreenih adresa. Takoe moete da ograniite Internet saobraaj samo
na odreene programe - dozvoljavajui saobraaj samo po odreenim
portovima. Tako ako za IP adresu 123.103.10.12 dozvolite saobraaj po
portu 23, to znai da ste nekom sa te adrese dozvolili da se Telentom
povee na Va raunar. to je manje portova ostavljeno otvoreno i to je
manje adresa kojima ste dozvolili pristup, mogunost da haker pristupi
Vaem raunaru je manja. Ako imate server na Internetu razmotrite za
svaki servis koji moe da se prua, da li vam je stvarno potreban (esto
tokom instalacije pokrenete mnoge servise koje uopte ni ne koristite), jer
je svaki ponueni servis istovremeno i potencijalno mesto upada.
Oprez - kada znate gde se kriju opasnosti, onda moete biti oprezniji u rizinim
situacijama i tako sami spreiti da vam raunar bude zaraen ili napadnut. Na
primer - primili ste mail sa attachmentom: ukoliko to nije oekivan mail
od poznatog poiljaoca i attachment za koji znate ta je, ve imate razloga
za sumnju, razmislite da li treba da otvarate taj attachment i ako ga otvarate
budite sigurni da je Va antivirus pokrenut i auriran.

Zli attachmenti
Ukoliko Vam se desi da dobijete poruku koja ima attachment (fajl prikaen uz
poruku), nemojte ga odmah otvoriti. Ovako stvarate opasnost da Vam se
startovanjem attachmenta zarazi raunar. Na alost, veina modernih
programa za e-mail, a meu njima i daleko najpopularniji - Microsoft
Outlook Express esto ne prikazuje kojeg je tipa prikaceni fajl. Prikazuju samo
njegovo ime. Dakle, ukoliko Vam je poslat izvrni fajl, prostim pritiskom mia
na njega (u okviru za attachmente) startovace se program. Na sreu, svi email programi omoguavaju da se fajl snimi na disk. Naa preporuka bi bila da
svaki attachment koji Vam stigne, snimite na disk, a onda ga proverite.
21

Provera snimljenog fajla poinje sa proverom kojeg je tipa. Ako je zaista u


pitanju slika (.gif, .jpg, .bmp) ili tekst (.txt, .asc), onda ga slobodno moete
otvoriti. Ukoliko je u pitanju dokument popularnog tekst procesora, Word
(.doc), izvrsni fajl (.exe, .com, .bat, .cmd) ili neto Vama nepoznato,
potrebno je da taj direktorijum pretraite (skenirate) antivirusnim programom.
Ukoliko je u pitanju arhiva fajlova, tj. fajl koji sadri druge fajlove u
kompresovanoj formi (.zip, .arj, .rar ili .tgz), potrebno je fajl "otpakovati", a
onda ponoviti prethodno uputstvo i utvrditi kojeg su tipa fajlovi. Sve to
smo rekli za e-mail attachmente, vai i za attachmente iz news grupa.
Fajlovi koje preuzimate sa Web ili FTP adresa nisu nita razliiti od
attachmenta. Sa njima je potrebno biti isto toliko oprezan, ako ne i vie.
Dakle, svaki fajl koji preuzimate, proverite.
Deljenje resursa pod Windowsom (Sharing) - Netbios - Windows sam po sebi
moe da dozvoli da se pristupa Vaem raunaru, to je potrebno ako imate
raunare u mrei i elite da npr. Vae kolege mogu da vide neke fajlove na
Vaem raunaru ili da tampaju na tampau koji je prikljuen na Va raunar.
Da bi ovo bilo mogue mora biti ukljueno "File and printer sharing for Microsoft
networks" u mrenim podeavanjima i trebate da na
particijama/direktrorijumima kojima elite da pristupaju i drugi ukljuite
"Sharing". Ali ako ste na Internetu bilo ko sa Interneta moe vrlo lako da pristupi
podacima na Vaem disku.

Kako se zatititi ?
1. ako nemate razloga da dozvolite da drugi pristupaju Vaem raunaru (npr.
to je samostalan raunar - nije u mrei) iskljuite "File and printer sharing
for Microsoft networks",
2. ako ipak potrebno da i drugi pristupaju Vaem raunaru, moete postaviti
lozinku na direktorijum na kome ukljuujete "Sharing" ili jo i ukljuiti
atribut "read only" da bi onemoguili brisanje i menjanje podataka,
3. Netbios komunicira preko TCP/IP protokola koristei portove 137, 138 i
139 tako da ako imata instaliran Firewall zabranom saobraaja po ovim
portovima onemoguujete pristup Vaem raunaru sa Interneta kroz
Netbios.
4. Rupe i zakrpe - Microsoft i ostali proizvoai softvera reaguju na
mnogobrojne otkrivene bezbedonosne "rupe" u njihovim programima
izbacivanjem zakrpa kojima se otkriveni nedostaci otklanjaju. Tako postoje
Service Pack-ovi za Windows 2000, Internet Explorer 5.5 i 6.0, Security
Package za Windows 2000/XP, Internet Explorer Reenje za
bezbednosne nedostatke Outlook Express-a moe biti prelazak na neki
drugi bezbedniji mail klijent, npr The Bat.

Zatita od virusa
Zatita od virusa nije komplikovan proces, ali zahtijeva pedantnost. Pedantnost
u smislu da kad ste na Internetu, znate tano ta radite, koje attachmente
otvarate, koje programe preuzimate sa Web ili FTP adresa, kao i kome verujete.
Najbolja zatita od mrenih virusa jeste zdrava doza opreza.

22

Antivirusni programi
Na svakom raunaru bi trebalo da bude instaliran najmanje jedan
antivirusni program. Ovo su kompleksni i "ivi" programi. Kompleksni su
utoliko to se sastoje od vie dijelova, a ivima ih zovemo zato to zahtijevaju
odravanje i panju.
Svi moderni antivirusni programi imaju nekoliko komponenata. Ove komponente
su najee deo za proveru fajlova (scan), deo za dezinfekciju, odnosno
ienje zaraenih programa (clean) i stalno aktivni deo koji nadgleda ulaznoizlazne operacije na raunaru i proverava da li se moda tu kree i neki virus
(monitor). Scan delom programa se proverava sadraj diska u potrazi za
virusima. Dakle, ovo je upravo deo programa koji treba koristiti da biste
proverili da li je neki fajl zaraen virusom. Ukoliko fajl zaista jeste zaraen,
scan program e automatski pokrenuti clean deo i pokuati da dezinfikuje
fajl. Namerno kaemo pokuati, zato to nije uvijek mogue oistiti zaraeni fajl.
Nekad je jedino rjeenje brisanje zaraenog fajla. tavie, to je najbolje
rjeenje koje treba primenjivati kad god je mogue. to se tie monitor
programa, veina antivirusnih programa ovakve programe instalira da se
automatski startuju po podizanju raunara. Ovo je dosta dobra zatita, poto
stalno imate antivirusnog uvara koji nadgleda ta radite. Meutim, ovo je
operacija koja dosta usporava rad na raunaru. Naime, svaki fajl koji kopirate,
otvarate, snimate ili startujete, antivirusni monitor proverava. Stoga, ovo nije
uvijek mogue primeniti. Uz dovoljan oprez iz prethodnog poglavlja, monitor
program Vam nije neophodan. Ako pak utvrdite da Vam ne smanjuje brzinu rada
previe, slobodno ga drite stalno aktivnog. No, nemojte se opustiti!
Meseno se u proseku pojavi oko 100-150 novih virusa. Nisu svi od njih opasni
ili se prenose putem Mree, ali dovoljno je da se pojavi i jedan takav novi,
pa da to predstavlja problem. Svi moderni antivirusni programi mogu da se
nadograuju novijom verzijom (upgrade). Nove verzije izlaze najee jednom
ili dva puta meseno, a po nekad i ee, tj. po pojavi nove opasnosti
(novog, jako opasnog virusa). Stoga, vodite rauna i uvijek imajte najnoviju
verziju antivirusnog programa.
Pored ovoga, nisu svi antivirusni programi dobri. Vremenom su se iskristalisala
dva kojima se moe verovati i koji su azurni, tj. njihovi proizvoai ih redovno
nadograuju. To su AntiViral Toolkit Pro (http://www.avp.com/) i Symantec
Norton AntiVirus (http://www.symantec.com/). Mi Vam preporuujemo da
koristite jedan od ova dva programa.
Nemojte zaboraviti podatak o broju virusa koji se meseno pojavi. Ukoliko
je Va antivirusni program stariji od mesec dana, NISTE ZATIENI OD VIRUSA!

Antivirus programi
Antivirusni programi predstavljaju prvi nivo zatite protiv virusa i trojanaca. Svi
antivirusni programi sastoje se iz vie celina. Jedan njegov deo, "Monitor" je
rezidentan u memoriji i obezbeuje neprestanu zatitu od virusa, dok drugi deo
"Scan" omoguava skeniranje celog sistema. Kod svih postoji i mogunost
pravljenja disketa za podizanje sistema kad je raunar napadnut virusom usled
kojeg se sistem ne moe podii normalno. Pojedini programi imaju i dodatne
alatke za zatitu od virusa u mail-u. Jedan od njih je AVP Script Checker koji titi
23

od script virusa tipa "Love Letter". Zbog velikog broja novih virusa koji se
pojavljuju svakog meseca, veoma je vano aurirati bazu virusa to je to ee
mogue, sa sajta proizvoaa anti-virusnog programa. Mnogi AV programi
poseduju mogunost automatskog download-a novih virusnih definicija kao i
opciju da korisnika upozore da je vreme da izvri update.
Veza izmeu lokalnog raunara (localhost) i udaljenog raunara na mrei
(remote host) zasnovana je na skupu TCP/IP protokola (Transmission Control
Protocol/Internet Protocol). Svaki host na Internetu ima svoju IP adresu: etiri
broja izmeu 0 i 255 meusobno odvojenih takom. Veza se uspostavlja preko
odreenog lokalnog i udaljenog porta (take kroz koju podaci mogu ui ili
napustiti mreu). Da bi haker mogao pristupiti odreenom raunaru, mora znati
njegovu IP adresu, a taj raunar mora imati "otvoren" neki port. Hakeri
najee napadaju preko programa koji se zovu skeneri (skeniraju raunar rtve,
tragajui za otvorenim portom). Trojanci dre odreene portove otvorenim i
ekaju zatev za konektovanjem od strane klijent aplikacije sa raunara hakera.
Firewall je sistem dizajniran da kontrolie protok informacija izmeu lokalnog
hosta i bilo kog udaljenog hosta na mrei. Koristi se kao sredstvo za smanjenje
rizika od neeljenog pristupa sistemu ili lokalnom raunaru. Firewall program
instaliran na Vaem raunaru prijavie svaki pokuaj konekcije sa udaljenim
raunarom, dajui mogunost da se ona odobri ili blokira.

Kako se zatititi
Za poetak, da razjasnimo neto: ne postoji, niti e ikada postojati softver koji
e vaem kompjuteru obezbediti apsolutnu zatitu od virusa. Ono to postoji
jesu bolji i gori AV programi - a to se ee budete kaili na Internet i skidali
updateove, to ete biti sigurniji: novi virusi se pojavljuju svakog dana, i morate
drati korak. Veina domaih provajdera na svojim serverima dri antivirusni
softver, a za svaki sluaj, evo nekih adresa sa kojih ga moete skinuti.
Najpoznatiji i najee korieni antivirusni programi su:
www.kaspersky.com - Kaspersky Antivirus
www.mcafee.com - McAfee Antivirus
www.symantec.com - Norton Antivirus
www.trendmicro.com - PC-cillin Antivirus
www.sophos.com - Sophos Antivirus Firewall
www.zonelabs.com - ZoneAlarm, ZoneAlarm Pro-Firewall (jedan od najboljih
firawall programa) www.iss.net - BlackICE - Firewall (jedan od najboljih
firawall programa)
www.sybergen.com - Sygate Personal Firewall Pro Info
www.securelab.com - Saveti, testovi, bagovi sve o zatiti
www.firewallguide.com - Firewall, Antivirus - testovi, tekstovi
www.zastita.co.yu - Domai sajt o zatiti

VIRUSI - ne dozvolite sebi da budete rtva


U proteklih godinu dana, pojavilo se preko 100 razliitih raunarskih
virusa koji zlonamernim korisnicima Interneta omoguavaju da dou do (svih!)
podataka na zaraenom raunaru. Na alost, neki od tih zlonamernih korisnika
su i nai korisnici. Ono to nas, a verujemo i Vas, vie brine je to to su mnogi
od naih korisnika postali rtve ovih virusa i vandala koji se njima slue. Ovaj

24

tekst e Vam, nadamo se, dati nekoliko korisnih saveta kako da se zatitite od
takvih virusa.

Koncept "mrenog virusa"


Virusi o kojima je ovde rije se ire putem globalne mree - Interneta. Oni
spadaju u kategoriju virusa koji se nazivaju trojanci. Ime im potie od
legendarnog konja iz opsade Troje.
Nain njihovog irenja je raznovrstan. Meutim, u daleko najei nain
irenja virusa spada i najee korieni Internet servis, elektronska pota (email). Pored e-maila, mreni virus je mogue "zaraditi" i na druge naine - u
news grupi, preko IRC-a, ICQ-a ili putem downloada neproverenog fajla. Po
infekciji raunara, ovi virusi dojavljuju svojim "vlasnicima" izabrane podatke sa
zaraenog raunara. Ti podaci mogu biti bilo ta, ali su to najee lozinke koje
vlasnik koristi na raunaru. Meutim, mnogi od ovih virusa preuzimaju
POTPUNU kontrolu nad raunarom, tako da zlonamerniku omoguavaju i
pristup fajlovima na disku, ekranu ili podacima koje korisnik zaraenog
raunara ukucava na tastaturi. Dakle, po infekciji, raunar je najee pod
kontrolom napadaa, a ne rtve, t. zaraenog korisnika.
Nabrojali smo servisa preko kojih se virus moe zaraditi, ali kako? Na alost,
veoma jednostavno. Virusi su obini programi i kao takvi svoj "posao"
obavljaju samim izvravanjem od strane korisnika. Dakle, ako je virus
program, putem e-maila ili news grupe moe doi kao attachment. Prilikom
preuzimanja sa neke Web ili FTP adrese, program je upravo taj fajl sto
preuzimate. esto su virusi "upakovani" kao katalog proizvoda, neka poalica,
estitka za praznik i slino. Meutim, svi imaju jednu zajedniku stvar - svi su
izvrni fajlovi, t. programi. Pod Windows operativnim sistemom, izvrni programi
su SVI fajlovi koji se zavravaju sa .exe. Ovo je veoma bitno, poto ima
sluajeva da fajlovi koji nose viruse imaju ime slika.jpg.exe ili
katalog.txt.exe. Dakle, iako pie slika.jpg, to NIJE slika, ve program. Po
izvravanju, ovaj program e moda zaista i prikazati neku sliku, ali gotovo
sigurno e uraditi jo neto - zaraziti Va raunar virusom. Ovo je ve stanje
koje zahtijeva Vau intervenciju. Potrebno je virus oistiti i uraditi ostale radnje
koje bi sprijeile dalju tetu. No, najbolje je ni ne zaraziti se.

Upoznajte svog neprijatelja


Ako ste i imali tu sreu da va raunar dosad nije zakaio nijedan virus, sigurno
strahujete od toga. Iako ovek ne moe biti u potpunosti bezbedan, nije na
odmet znati poneto o virusima i ljudima koji su odgovorni za njihov nastanak
Zamislite mladog, ne preterano bistrog kancelarijskog radnika koji sa
svojim pretpostavljenim komunicira iskljuivo preko papiria sa porukama koje
nalazi na stolu svaki put kada doe na posao. Sada zamislite da je neki zlobnik
na vrh te gomile papira ubacio poruku na kojoj stoji Napravi dve kopije ovog
papira i postavi ih na stolove svojih kolega, a original uniti. Budui da je
savestan, na radnik e uraditi to to se od njega trai ne postavljajui suvina
pitanja. Ako su njegove kolege podjednako revnosne, uskoro e kancelarija biti
zakrena savreno beskorisnim papirima.

25

Opisana situacija veoma je slina onoj kada je va raunar zaraen nekim


virusom ili kompjuterskim programom koji ima sposobnost da se sam kopira.
Kod kompjuterskih virusa komanda koju treba izvriti ima neto drugaiji oblik i
otprilike glasi: Iskopiraj ovu listu dva puta i stavi je na stolove svojih saradnika
samo ako je oni ve nemaju kako bi virus napadao nove rtve. Naravno,
postoje i destruktivni virusi koji, osim prve, sadre jo jednu komandu koja
otprilike glasi: Proveri datum; ako je danas petak trinaesti, izbrii sve
fajlove na hard disku (upravo ovo je radio virus Jerusalem). Na ovom
primeru moemo videti i zato je tako teko odrediti odakle je na raunar
zakaio virus: svi slubenici imaju isti papir i negativcu je teko ui u trag.
Psiholozi kau da je meu autorima virusa mogue izdvojiti nekoliko grupa. U
prvu spadaju mladi programeri koji tek ovladavaju nekim programskim
jezikom a, najverovatnije, ne mogu da sete niega pametnijeg to bi
napravili. Ovako kreirani virusi obino su kratkog daha (ali ne i uvek), a ljudi koji
ih stvaraju ine to uglavnom da bi podigli nivo samopotovanja.
U drugoj grupi su takoe mladi ljudi koji jo nisu postali eksperti za
programiranje, ali su ve odluili da svoj ivot i rad posvete stvaranju
kompjuterskih virusa. Po psiholozima, razlog za donoenje ovakve odluke lei
verovatno u nekoj vrsti kompleksa nie vrednosti koji mui ove ljude i navodi ih
na destruktivno ponaanje. Oni obino ne prave nita spektakularno; najee
su u pitanju modifikacije ve poznatih, klasinih virusa, ili izuzetno primitivni
virusi sa velikim brojem greaka - a ponekad se koriste i specijalizovanim
programskim paketima pomou kojih je mogue napraviti virus uz malo ili
nimalo poznavanja programskog jezika ili operativnog sistema.
Treu, najopasniju grupu ine profesionalci koji stvaraju i alju polimorfne
viruse: samo ime ukazuje da su u pitanju virusi sposobni na esto
menjanje oblika, to veoma oteava praenje, prikupljanje baze podataka i
pravljenje adekvatnog antivirusnog softvera. Svaki profesionalac ima svoj
karakteristian rukopis - odnosno algoritme i programske funkcije koje
primenjuje u radu - pomou koga strunjaci prate njegov razvoj.
Postoji i posebna grupa autora virusa koja se naziva istraivai; ovi ljudi su
posveeni borbi protiv antivirusnih programa, odnosno stvaranju novih
programa i generatora za masovnu proizvodnju virusa. Iako istraivai ne
prave viruse sami, time nisu nita manje krivi za irenje novih generacija
virusa.
Dok je raunara, bie i virusa, a i antivirusnih programa. Naravno, bez nekog
antivirusnog programa i najprostiji virus moe da nanese ozbiljnu tetu
vaem raunaru ili da vas, u najmanju ruku, propisno iznervira.

26

You might also like