Hvordan fungerer zombies og botnets?

Det relativt nye fenomenet hvor hackere faktisk kan fjernstyre andres PC samtidig som PCen for øvrig oppfører seg normalt, utgjør en økende trussel mot intetanende PC-eiere.

Publisert Sist oppdatert

En zombie kalles den gjerne, en PC som har fått installert fiendtlig kode som gjør at den kan fjernstyres av en hacker. Mange av dagens PCer er svært kraftige og de er ofte konstant knyttet til nettet (always on) ved hjelp av bredbåndsaksess. Så det er masse ledig datakraft og masse ledig båndbredde som hackerne er interessert i å bruke til ulike påfunn.

Ved å få et større antall slike zombie-PCer til å virke sammen under kommando av en hacker, kan større angrep mot øvrig infrastruktur på Internett utføres. En hacker som operere på denne måten omtales gjerne som en zombie-gjeter.

Zombie er et uttrykk som betyr noe sånt som «levende død» og stammer opprinnelig fra en vestindisk religion. Et annet navn på en slik PC er en bot som er en kortform for ordet robot. Flere like samvirkende bots kalles et botnet.

Slike botnets kan bestå av tusenvis av maskiner under felles kommando. Telenor avsløret et slikt botnet bestående av 10.000 maskiner i 2004, en sak som også fikk internasjonal oppmerksomhet. I Nederland ble en gruppe zombiegjetere fengslet i 2005 for å ha opprettet et botnet bestående av hele 100.000 maskiner.

Slik risikerer du å bli en zombie

Det høres nesten for enkelt ut at en hacker kan gjøre noen triks, og vips har han kontrollen over en fremmed PC. Det er de grunnleggende metodene for å angripe en PC som benyttes i utgangspunktet. Det er prinsipielt sett to ulike fremgangsmåter: Enten kan hackeren komme inn via et sikkerhetshull i programvaren på PCen eller brukeren kan selv installere den fiendtlige koden (uten å vite at det er det han gjør, selvfølgelig).

Utnyttelsen av sikkerhetshull har vi beskrevet utførlig tidligere i denne sikkerhetsspalten. Den mest kjente metoden er buffer overflow, hvor hackeren sender inputdata til maskinen som den egentlig ikke er i stand til å ta imot. Det forårsakes rett og slett en programmeringsfeil hvor man ikke har tatt hensyn til unntakstilfellene. Dette kan i en del utspekulerte tilfeller føre til at eksekverbar kode blir plantet på maskinen.

I andre tilfeller har altså brukeren selv aktivt startet innlastingen av koden, for eksempel i den tro at koden egentlig gjør noe helt annet. Slik kode kalles ofte for en trojaner, etter den trojanske hest kjent fra gresk mytologi. Vi har også det velkjente eksemplet med at brukeren klikker på vedlegget til en e-postmelding og dermed kan starte et ondsinnet program.

De ulike sikkerhetshullene blir etter hvert kjent for programvareselskapene. Hullene tettes fortløpende ved at korreksjoner utarbeides. Slike rettelser (patcher) gjøres deretter tilgjengelig for nedlasting for brukerne. Men det er ikke alle, verken privatpersoner eller bedrifter som er flinke nok til å holde maskinene sine oppdatert.

Fiendtlig kode (malware) av ulike typer er også ofte vevd sammen. For eksempel ligger det inne bakdører i enkelte virus og ormer som tidligere er spredt over Internett. Dette er jo praktiske innganger til PCene for hackere. Ved å søke over nettet (scanning) etter ulike kjente sikkerhetshull og bakdører, er hackerne i stand til å finne ofre for sin virksomhet.

Slik styres botnets

Når zombie-koden er installer på de ulike PCene, er gjeteren klar til å ta kommandoen over disse. Koden vil typisk koble PCen opp mot en IRC-tjener. IRC (Internet Relay Chat) er en protokoll som benyttes for prategrupper (chat) på Internett. Disse benyttes typisk for meldingsutveksling for åpne grupper via sentrale tjenere (må ikke forveksles med peer-to-peer-baserte direktemeldinger). Det én deltaker taster inn distribueres til de andre i gruppen. En slik gruppe blir ofte styrt av en såkalt operatør.

Det er en slik kommandostruktur hackerne trenger for styre sine zombies. Forskjellen er bare at i denne sammenhengen er det ikke personer man kommuniserer med, men automatisk programvare (derav betegnelsen robot) som tar imot.

Det er et viktig poeng at det er zombien selv som oppretter forbindelsen ut mot IRC-tjeneren, fordi forbindelser som åpnes fra innsiden typisk slipper enklere gjennom brannmurer enn omvendt. Ofte benyttes default IRC-port (6667), men også alternative portnummer kan settes opp til dette formålet.

Hackerne kan enten benytte seg av åpne IRC-tjenere og få opprettet en egen pratekanal med det formål å styre et botnet. Eller hackeren kan operere sin egen IRC-tjener som dermed kan spesialtilpasses til formålet. For å dekke sine spor, vil tjenerens adresse ofte være en URI som kan flyttes fra IP-adresse til IP-adresse ved hjelp av dynamisk DNS.

Og hvilken maskin kan en hacker kjøre sin IRC-tjener på? Hvorfor ikke benytte en zombie-PC til dette? Og kommandolinjen fra hackerens klientmaskin til tjeneren trenger ikke gå direkte. Enkelte andre zombie-PCer kan settes opp til å overføre data i proxy slik at kommandoer og svar sendes på kryss og tvers over jordkloden på veien mellom klienten og tjeneren. Skulle botnettet bli avslørt, så blir det ingen enkel sak å spore det tilbake til opphavet.

Hva kan botnets brukes til?

Botnets er som skreddersydd for distribuerte tjenestenektangrep. Gjeteren kan gi tusenvis av zombies ordre om å bombardere et offer med SYN-oppkoblingsmeldinger for TCP for eksempel. I andre tilfeller kan UDP- eller ICMP-angrep benyttes. Se figur 2.

Botnets er også kjent for at disse kan leies ut til å utføre spamutsending. Spam blir ofte forsøkt stoppet ved at avsendermaskinen svartelistes. Men ved en distribuert utsending fra tusenvis av maskiner blir ikke dette så enkelt lenger. Utsendingen vil også typisk foregå i kontrollerte former, slik at trafikkvolumet ikke blir så høyt at dette vekker mistanke.

Også den voksende trenden med phishing kan kombineres med botnets. Phishing startet gjerne med utsendelse av lokke-post, og det er en fordel for hackeren at disse meldingene ikke kan spores tilbake til den reelle avsenderen. En zombie kan også benyttes som vert for den falske webtjeneren som «fisken» lokkes til å kontakte.

Zombie-koden kan også utføre mer direkte logging av aktiviteten på brukerne tastatur og skjerm (spyware). Derved kan også kommunikasjon over krypterte forbindelser avsløres ved at data innehentes før disse krypteres eller etter at de er dekryptert. Zombien vil normalt sett ikke skade selve vertsmaskinen. Det er fordel for hackeren at dennes eksistens ikke er merkbart for eieren.

Det er omtrent ingen grenser for hva en zombie kan benyttes til. Zombien er typisk utstyrt med en mekanisme som gjør at denne kan oppdateres, styrt fra gjeteren. Så snart han har kontroll over en PC, kan den altså «gjetes» til å gjøre stadig nye former for ugang.

Hvordan unngå å bli en zombie?

For ikke å havne i klørne på en gjeter, er det først og fremst viktig å holde maskinene oppdatert. Operativsystem, applikasjoner (Internet Explorer for eksempel) og antivirus/brannmur må jevnlig sjekkes for nye patcher og signaturer. Heldigvis blir det mer og mer vanlig med automatisk oppdatering av disse programmene.

Og som vi vender stadig tilbake til i forbindelse med Internettsikkerhet: Vi bør forstå hva vi gjør og være påpasselige. For det første trenger vi kunnskap om hvordan Internett og dataangrep fungerer. Dernest må vi selv sørge for at vi ikke går i de ulike fellene som hackerne legger ut. Vi kan unngå å besøke suspekte nettsteder. Og vi klikker ikke på hvilke som helst e-postvedlegg eller popup-vinduer. Det er slett ikke alt som er hva det utgir seg for å være.

Og så er det heldigvis noen som til en viss grad passer på for oss. ISPene påtar seg ikke ansvaret for å beskytte den enkeltes PC, men det er i deres interesse å holde en viss kontroll med hva som skjer på nettverkene deres. På bedriftsinterne nett kan det legges større restriksjoner på hva brukerne får lov til å gjøre. For eksempel kan IRC-kommunikasjon blokkeres, og derved stenges den vanligste innfallsporten for botnets.

Vil du selv sjekke hva som foregår på PCen din, kan du ta en kikk på prosesslisten. Men denne er ikke alltid like enkel å forstå. Slår du derimot en netstat-kommando, får du opp en oversikt over hvilke porter som er i bruk. IRC-porten bør ikke vises her, med mindre du selv bruker denne for øyeblikket.

Et spennende forskningsprosjekt kalt Honeynet, utfører overvåkning av ulike sikkerhetstrusler på Internett. De har blant annet utført research innen botnets ved å utplassere ubeskyttede PCer, såkalte «honningkrukker», for å tiltrekke seg hackerangrep. Ved å følge med på hva som skjer med slike PCer, har de kunnet avsløre i detalj hvordan botnets fungerer.

Sikkerhetsselskapene hevder at kriminelle miljø i stadig større grad tar i bruk hackere. Dette er en naturlig utvikling ettersom Internett på mange måter gir et speilbilde av samfunnet for øvrig. Vi bør ikke la oss skremme av slike spådommer, men samtidig bør la det være en vekker for oss. Internett brukes til mange nyttige formål, men det blir også brukt til mye unyttig og ulovlig aktivitet.