Virusi

Ovim člankom pokušaćemo odgovoriti na neka od najčešćih pitanja u vezi virusa na Linux operativnom sistemu.

Postoje li virusi za Linux?

Da, postoje. Postoji svega nekoliko virusa za Linux koji su uglavnom eksperimentalne prirode i nisu primijećeni u javnosti.i.

Poznati Linux virusi

[http://www.viruslist.com/eng/viruslistfind.asp?findWhere=011&findTxt=linux www.viruslist.com navodi 19 virusa koji mogu zaraziti Linux]. Većina su neškodljivi, "proof-of-concept" virusi, objavljeni na raznim Usenet grupama.

<sup>*</sup> Stranica nedostupna. Koristite www.archive.org.

Kada bi Linux postao najpopularniji OS, da li bi bilo više virusa za njega?

Da, ali ne onoliko koliko trenutno postoji Windows virusa, tj. virusi ne bi imali ni približno toliki uticaj na rad sistemâ širom svijeta. Ovo ćemo obrazložiti u nastavku.

Pod pojmom "virus" danas se obično podrazumijevaju svi programi koji operišu mimo znanja i želje korisnika, a konkretno tri vrste takvih programa: virusi (u užem smislu), "trojanski konji" i crvi (eng. worms).

Virusi u užem smislu

Virus u užem smislu je program koji se razmnožava tako da se "zakači" na kraj nekog drugog programa. Program se izvršava potpuno normalno, korisnik ne primjećuje ništa dok u pozadini virus izmjenjuje druge programe koje pronađe na sistemu. Ovakvi virusi su posebno rašireni bili 80tih i početkom 90tih godina kada su se programi razmjenjivali na disketama. Danas su oni rijetkost, jer se većina programa downloaduje sa jedne jedinstvene (po definiciji pouzdane) lokacije na Internetu, a korisnici međusobno ne razmjenjuju već instalirane programe. Programi su postali mnogo složeniji, tako da ne možete jednostavno prekopirati direktorij sa instaliranim programom, nego je potrebno koristiti poseban instaler. Dakle, sam instaler mora biti zaražen. Glavni izvor virusa i trojanaca su danas peer-to-peer mreže za razmjenu ilegalnih (piratskih) programa.

Ovakvi virusi ne mogu postojati na Linuxu iz više razloga. Prije svega, na Linuxu je razmjena piratskih programa vrlo rijetka jer je gotovo sve što vam treba raspoloživo u formi open-sourcea. Programi se ne instaliraju kopiranjem direktorija, nego isključivo iz izvornog koda ili iz binarnih paketa (RPM, DEB ili tar.gz). U slučaju izvornog koda, bilo kome je vrlo lako uočiti da je u kodu prisutan virus i upozoriti autora i druge na to.

Kada instalirate binarni paket, on razbacuje datoteke po čitavom sistemu, tako da je vrlo teško i nepraktično opet "zapakovati" te datoteke nazad. Iz tog razloga, ne postoji situacija kada korisnici međusobno razmjenjuju već instalirane programe, nego razmjenjuju linkove na pakete ili (u vrlo rijetkim situacijama) same binarne pakete. Opet, RPM i DEB paketi posjeduju digitalne MD5 ključeve koji garantuju autentičnost svakog paketa. Ključeve izdaje centralni autoritet, u ovom slučaju distributer (RedHat, Debian, SuSE itd.)

Konačno, sve i kad bi korisnik pokrenuo virus, on ne bi bio u stanju da izmijeni programske datoteke jer je njihov vlasnik root (super-korisnik), tako da običan korisnik nema privilegije da ih mijenja, nego samo da ih izvršava.

Crvi (Internet worms)

Crvi su dobili ime po tome što koriste "rupe" (bugove, programerske propuste) u programima da bi se širili putem Interneta bez znanja korisnika sistema. Svaki programer griješi - samim time, svaki program ima rupe.

Velika većina savremenih crva i gotovo svi "virusi" za koje ste čuli u proteklih par godina koriste rupe u jednom jedinom programu: a to je Microsoft Outlook. Iako je ovo opštepoznata stvar, korisnici i dalje insistiraju da koriste baš ovaj e-mail program i ne instaliraju njegove nove verzije sa zakrpljenim rupama. Linux je siguran od ovih crva samim time što ne postoji Outlook za Linux :)

Upravo možemo reći da je pošast crva kojoj smo izloženi u proteklih par godina uzrokovana "monokulturom", odnosno činjenicom da velika većina korisnika koristi isti software. Često se navodi primjer Velike gladi u Irskoj krajem 19. vijeka koja je uzrokovana prevelikim oslanjanjem na jednu sortu krompira koja je u svega par godina potpuno uništena parazitima. Isto se odnosi i na računarske programe. "Standardizovanje" na jedan određeni softver možda malo olakšava stvari za korisnike, ali neproporcionalno povećava opasnost od pojave crva.

Linux kao operativni sistem promovira raznolikost. Postoje stotine distribucija Linuxa - od toga 5-6 vodećih - koje međusobno imaju suptilne razlike ali dovoljne da zbune crve. Na svakoj distribuciji imate 3-4 e-mail aplikacije, 2-3 web preglednika itd. od kojih su svi podjednako popularni i nijedan nije favorizovan. Stoga, moglo bi se reći da je upravo ta raznolikost koju mnogi kritikuju onaj gen koji čini Linux imunim na crve.

Jedino pravo rješenje za crve ipak je redovno instaliranje novih verzija programa. Vodeće Linux distribucije dolaze sa alatima za automatiziranje updatea sistema i svih instaliranih programa. Microsoft je u posljednje vrijeme razvio slične alate, ali mnogi se boje da ih koriste zbog raznih neželjenih posljedica. Windows je po svojoj prirodi zatvoren sistem, te je jako teško znati šta se dešava "ispod haube" prilikom updatea ako je ta hauba zavarena, umjesto otvorena kao što je slučaj kod Linuxa. Osim toga, često se dešavalo da nakon updatea piratske verzije Windowsa prestaju raditi, u kojem slučaju nemate nikoga kriviti osim sebe. :)

Brzina reakcije je takođe bitna stvar. Za mnoge sigurnosne propuste Microsoft je znao godinama prije nego što je izdao zakrpu. Neki nedavni propusti u Windows OS-u (DCOM) su omogućavali slanje i pokretanje bilo kojeg programa na računaru žrtve bez potrebe za ikakvom interakcijom od strane žrtve. Ti propusti su se mogli koristiti i za ubacivanje trojana i najiskusnijem korisniku. Proces izdavanja zakrpi za open-source programe je i sam otvoren, pa se možete i sami u njega uključiti i doprinijeti mu (ako posjedujete potrebno znanje). Zakrpe se često izdaju u roku od nekoliko sati nakon otkrivanja rupe.

Trojanski konji

Trojanski konj je zloćudan program koji omogučuje napadaču da ostvari kontrolu nad vašim računarom. Najčešće se trojanski konji koriste za preuzimanje kontrole nad serverima, slanje spam pošte, izvršavanje distribuiranih napada i druge nelegalne radnje.

Trojanski konji se u principu šire metodama "socijalnog inženjeringa". To znači da ih npr. napadač maskira u neki koristan program i pošalje žrtvi za koju pretpostavlja da će nasjesti. Operativni sistem tu apsolutno ne čini nikakvu razliku.

Veći broj trojanskih konja postoji za Linux. Rootkit je alat koji omogućuje da napadač ostvari root privilegije (kontrolu) nad sistemom potpuno transparentno za korisnika tog sistema.

Jedina prava zaštita od trojanskih konja je edukacija korisnika. Mnoge Linux mašine postale su žrtva trojanaca prije svega radi neznanja njihovih vlasnika. Savremene Linux distribucije u pravilu dolaze u potpunosti zatvorene, ali to ne znači da neko neće u neznanju ukloniti ove zaštite. Isto se odnosi i na Windows. Možemo reći da je Linux trenutno manje podložan trojanskim konjima isključivo zato što su njegovi korisnici u prosjeku više obrazovani iz oblasti informacionih tehnologija. Iskreno se nadamo da će tako i ostati :)

 


Najnoviju verziju dokumentacije potrazite na sajtu start.linux.org.ba