Her er Danmarks fem bedste CIO’er lige nu:Se de fem nominerede til prisen som Årets CIO 2024

Artikel top billede

(Foto: Computerworld)

Lug rootkits ud af maskinen - del 1

Sådan sikrer du din computer mod den mest luskede form for malware.

Af Redaktionen, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

Der findes en trussel mod livet online, der er så alvorlig, at den kræver en ny slags forsvar. Rootkits gemmer sig i operativsystemet, hvor de aktivt forsvarer sig selv og gemmer sig. Når du skal beskytte dit system mod rootkits, er du nødt til først at forstå dem. Hvor er de kommet fra, hvordan er de opstået, og – især – hvordan kan man stoppe dem?

Et rootkit er et program, der gør det muligt for en hacker at komme og gå, som han vil, uden at computerens forsvarsværker kan forhindre det. Ingen firewall stopper ham, og intet antivirusprogram afslører hans gerninger.

Rootkits undergraver den måde, operativ- systemet arbejder på. De får det til at lyve om processer, filer, registreringsdatabasedata og kernemoduler, der kunne gøre mennesker og antivirussoftware opmærksom på rootkittets tilstedeværelse.

I modsætning til vira har rootkits holdt lav profil de seneste 20 år, men det ændrer sig i takt med, at deres metoder smelter sammen med dem, man ser hos malware. Resultatet er en trussel, der kræver specialiseret software.

Navnet »rootkit« stammer fra »superbruger«- kontoen i Unix (og Linux). Den hedder »root«, og når man logger ind på den, får man fuld kontrol over computeren.

Man kan argumentere for, at man får større kontrol, end en administratorkonto giver i Windows. Normalt er det kun en systemadministrator, der har adgang til root, fordi denne adgang giver så mange muligheder.

For en hacker er det ikke nok blot at skaffe sig adgang til root-kontoen. Han skal også skjule sine spor for de årvågne systemadministratorer. Derfor modificerer rootkits systemfilerne, så de sletter sporene efter hackeren og får det til at se ud, som om alt er i orden.

Historien om rootkits går tilbage til sidst i 1980’erne, da de første logcleaners dukkede op. Når hackerne havde skaffet sig adgang til Unix-computere, uploadede de et logcleaner-program for manuelt at slette data i operativsystemets systemlog, og i nogle tilfælde ændrede de tidspunktet på logfilen til et tidspunkt før invasionen.

I begyndelsen af 1990’erne blev Sun Microsystems’ SunOS (en variant af Unix) målet for forsøg på at lave de første rigtige rootkits. I 1990 producerede hackerne Lane Davis og Steven Dake et rootkit, der skulle bevise, at det kunne lade sig gøre, og som viste vejen for den kommende rootkit-funktionalitet.

Indled et angreb

20 år senere er opfattelsen stadig den, at root- kits har tre funktioner. For det første skal de angribe målcomputeren og få kontrol over den. Det førte til begrebet »at eje« en computer.

Når en hacker skal have fjernadgang til en maskine, skal rootkittet først oprette en sikker kommunikationskanal. For at undgå, at computerens firewall forhindrer det, kan kanalen kapre en port, der transporterer legitim trafik, snarere end at åbne sin egen. Det er ikke usædvanligt, at et rootkit udnytter port 80, der normalt er åben, så brugeren kan komme på nettet.

Listen over teknikker til at få fodfæste og antallet af kommunikationskanaler vokser i takt med, at rootkittene bliver stadig mere avancerede. Det er dét at det er så let, at man kan skaffe sig adgang og forblive skjult, der gør forskerne meget bekymrede over udbredelsen af denne specielle form for malware.

Et rootkits anden funktion er at angribe det lokale system (eller andre på det lokale net). Formålet er at skabe et miljø, der ikke bliver opdaget.

En fremgangsmåde består i at modificere systemets kerne eller biblioteker, så systemkald bliver erstattet af rootkittets egne kald. Det er vigtigt, fordi rootkits skal lave kald, der returnerer information om systemets tilstand, uden at data om rootkittet kommer med.

Antivirusprogrammer bygger på almindelige systemkald, og det er derfor næsten umuligt at afsløre rootkits uden at bruge specielle teknikker, der undersøger integriteten af de data, systemet leverer.

Skjult trussel

Angrebsfunktionaliteten i nogle rootkits er lige så imponerende, som den er uhyggelig. Nogle leverer angreb på andre systemer på det lokale net, hvis de har mistanke om, at disse systemer rummer forholdsregler mod invasion. Det kan de gøre ved at undersøge netkortene på andre computere for at se, hvilke der er i »promiskuøs« tilstand.

Det betyder, at de er indstillet til at læse alle de data, der flyder igennem. Det er et tegn på, at der kører software, som læser og analyserer nettrafik for at afdække tegn på invasion. Somme tider gemmer rootkits også data på lokalnettet, som hackeren senere kan downloade.

Det tredje afgørende element i et rootkits funktionalitet, og den del, der gør dem særlig snigende, er deres evne til at slette deres spor. På dette område er programmerne blevet utrolig udspekulerede på ganske kort tid. En del af denne hurtige vækst inden for funktionalitet hænger sammen med den måde, moderne kerner virker på.

Operativsystemer indeholder en central kerne, der sidder mellem de kørende applikationer og computerens hardware. Denne kerne har til opgave at styre adgangen til ekstraudstyr og allokere systemressourcer såsom cpu-tid og hukommelse.

Hvis kernen bestod af et enkelt monolitisk stykke kode, ville den være meget ufleksibel. Hvis man for eksempel skulle tilføje nyt udstyr, ville man være nødt til at installere en ny kerne, der understøttede dette udstyr. I Linux’ barndom betød det, at man skulle rekompilere kernen, så den kunne indeholde de moduler, der var krævet til al ens hardware.

Næste gang kigger vi nærmere på skjulte trusler, og hvad du kan gøre for at slå igen mod rootkitsne.

Det er muligt for et rootkit at overtage kontrollen med et helt operativsystem, samtidig med at det overbeviser forsvarsværkerne om, at der ikke er noget galt. Gælder det, uanset hvilke forsvarsværker der er tale om? Det ser ud til, at
en sikkerhedsforsker i august 2006 beviste, at det er tilfældet.

Under konferencen Black Hat Briefings i Las Vegas demonstrerede Joanna Rutkowska – grundlægger af Invisible Things Lab i Warszawa – at dillen med virtualiseringsteknologi på chippen, der bliver anført af Intel og AMD, kan bruges til at lave et rootkit, som ikke kan afsløres. Det gjorde hun ved at lægge et kørende operativsystem ind i en virtuel maskine ved hjælp af software, som hun kaldte Blue Pill.

»Tanken bag Blue Pill er enkel«, siger Rutkowska. »Operativsystemet sluger Blue Pill, som vågner inden i den matrix, der bliver styret af det ultratynde Blue Pill-hypervisor«, Det sker øjeblikkelig uden genstart. Systemets antivirussoftware opdager aldrig, hvad der sker.

Eftersom virtualisering på chippen er beregnet til ikke at blive set af de operativsystemer, der kører på den, kan denne teknik i teorien gøre det muligt for et ondsindet program at skabe et miljø, hvor det agerer som hypervisor med fuld kontrol. Det kan derefter opsnappe og ændre alle de systemkald, det vil, og indsamle personlige oplysninger, uden at pc’ens antispyware-software løfter et øjenbryn.

Rutkowska er bidende kritisk over for de vilkår, der omgiver så alvorlige sårbarheder. »Vi bør huske, at dette kun eksisterer, fordi softwareproducenterne begår fejl, eller fordi brugerne er dumme«, siger hun. »I de fleste tilfælde er det producenten, der er uansvarlig«.

[themepacific_accordion]
[themepacific_accordion_section title="Fakta"]

Det skal du bruge…

[/themepacific_accordion_section]
[themepacific_accordion_section title="Fakta"]

Kernemoduler

[/themepacific_accordion_section]
[/themepacific_accordion]