Leksjon 4 av 7 · 8 min
Rootkits: skadelig programvare som skjuler seg for deg
Jobben til et rootkit er å holde seg skjult og holde seg på plass. Se hvordan rootkits virker, hvorfor de er farligere jo dypere de ligger, og hvordan moderne macOS gjør jobben deres mye vanskeligere.
Det meste av skadelig programvare vil gjøre noe: stjele, kryptere, spionere. Et rootkit vil ikke bli sett mens det skjer. NIST definerer et rootkit som et sett med verktøy en angriper bruker etter å ha fått root-tilgang til en maskin, for å skjule angriperens aktiviteter og beholde privilegert tilgang i det skjulte. Navnet kommer fra Unix, der «root» er den allmektige administratorkontoen, og et «kit» var pakken med endrede verktøy en inntrenger etterlot seg for å beholde den makten i det stille.
To jobber: utholdenhet og skjul
Et rootkit kombinerer vanligvis to evner. Utholdenhet betyr å overleve omstarter og oppdateringer, slik at angriperen ikke mister tilgangen. Skjul betyr å gjemme filer, prosesser og nettverkstilkoblinger for nettopp de verktøyene du ville brukt for å lete etter dem. MITRE ATT&CK beskriver det andre trikset direkte: rootkits skjuler at programmer, filer, nettverkstilkoblinger og tjenester finnes, ved å fange opp og endre operativsystemkallene som rapporterer om dem. Hvis den delen av systemet du spør «hva kjører?» er tuklet med, kan den rett og slett utelate svaret.
Jo dypere, jo vanskeligere å finne
| Nivå | Hvor det bor | Hvor vanskelig det er å oppdage og fjerne |
|---|---|---|
| Brukernivå | Erstatter eller kaprer vanlige programmer og biblioteker som kjører med kontoen din | Vanskelig, men verktøy med høyere rettigheter kan ofte oppdage tuklingen |
| Kjernenivå | Lastes inn i kjernen av operativsystemet, der det kan lyve til alle programmer | Svært vanskelig: systemet selv rapporterer falsk informasjon |
| Oppstarts- og fastvarenivå | Starter før operativsystemet, i oppstartsprosessen eller i fastvaren til en enhet | Vanskeligst: kan overleve en fullstendig reinstallering av operativsystemet |
Hovedregelen er at kode som kjører på et lavere, mer privilegert nivå, kan lure kode som kjører over den. Derfor sikter rootkits så lavt de kan, og derfor legger forsvarere så mye arbeid i å gjøre de laveste nivåene av en datamaskin motstandsdyktige mot tukling.
Hvordan macOS slår tilbake
Moderne macOS er bygd for å nekte rootkits stedene de pleide å gjemme seg. Apple dokumenterer flere lag i sin veiledning om plattformsikkerhet:
- Systemintegritetsbeskyttelse (SIP) hindrer til og med administratorkontoen i å endre beskyttede deler av systemet, som systemmapper og systemprosesser. Apple anbefaler å la den være på.
- Systemvolumet er forseglet og signert: ved oppstart sjekker macOS at systemfilene er nøyaktig det Apple leverte, og nekter å bruke et endret system.
- Sikker oppstart på Mac med Apple silicon (og Mac med T2-brikken) verifiserer hvert trinn i oppstartsprosessen før det kjøres, slik at ingen kode kan snike seg inn før operativsystemet.
- Kjerneutvidelser fra tredjeparter er begrenset og krever uttrykkelig godkjenning; Apple har flyttet det meste av det de gjorde til systemutvidelser, som kjører utenfor kjernen.
Til sammen gjør dette det klassiske kjerne-rootkitet langt vanskeligere å installere på en moderne Mac med standardinnstillinger. Det er også grunnen til at angripere nå gjerne holder seg på brukernivå og satser på utholdenhetstriks som påloggingsobjekter og oppstartsagenter, som ikke trenger å bryte systemets forseglinger.
Utholdenhet du kan sjekke selv
Fordi dype rootkits er vanskelige å installere, er det meste av utholdenhet på Mac i dag synlig hvis du vet hvor du skal se. macOS viser påloggingsobjekter og bakgrunnsobjekter i Systeminnstillinger, under Generelt og deretter Påloggingsobjekter og utvidelser, og varsler deg når et nytt bakgrunnsobjekt legges til. Alt der som du ikke kjenner igjen, fortjener en nærmere titt. MITRE ATT&CK katalogiserer launch agents og launch daemons som vanlige utholdenhetsteknikker på macOS nettopp av denne grunnen.
Hvorfor nettverket fortsatt forteller sannheten
Et rootkit kan lyve til programmer på samme maskin, men det må vanligvis fortsatt snakke med operatøren sin. Den trafikken må krysse nettverket. En brannmur per app som ligger i operativsystemets eget filtreringslag, ser tilkoblingene mens systemet håndterer dem, og en ruter eller en annen enhet på nettverket ser dem utenfra, der rootkitet ikke har kontroll. Nettverksfilteret i FireAI er en systemutvidelse fra Apple; det viser hvilken app som står bak hver tilkobling og spør før nye apper kobler seg til. Det er ikke en rootkit-detektor og kan ikke se gjennom en kompromittert kjerne, men uforklarlig trafikk fra en prosess du ikke kan gjøre rede for, er et av de klassiske tegnene på at noe skjuler seg.
Ikke bare datamaskiner: rutere og andre enheter
Rootkit-lignende implantater er ikke begrenset til bærbare. Hjemmerutere, nettverkslagringsbokser og andre enheter som alltid står på, kjører sine egne små operativsystemer, ofte sjelden eller aldri oppdatert. Angripere har gang på gang gått etter dem fordi de sitter på hver tilkobling og få noen gang sjekker dem. Å holde ruterens fastvare oppdatert, bytte standard administratorpassord og slå av fjernadministrasjon du ikke bruker, lukker de vanligste dørene. Det forklarer også hvorfor det er verdifullt å se på trafikken fra mer enn ett sted: et problem som bor i ruteren, vil ikke vises i noen skanning av Mac-en.
Hvis du mistenker et rootkit
- Gå ut fra at systemets egne verktøy kanskje ikke forteller sannheten; undersøk det utenfra der det er mulig.
- Sjekk at Systemintegritetsbeskyttelse er på (Apple beskriver hvordan) og hold macOS oppdatert.
- Gå gjennom Påloggingsobjekter og utvidelser for ukjente oppføringer.
- Ved en alvorlig mistanke er den pålitelige løsningen å sikkerhetskopiere dokumentene dine (ikke apper eller systemfiler), slette Mac-en, installere macOS på nytt fra Apple og bare gjenopprette dataene dine.
- Hvis trusselen er målrettet, for eksempel mot en journalist eller aktivist, få eksperthjelp og vurder Låsemodus.
Det viktigste
- Formålet med et rootkit er å skjule en angripers tilstedeværelse og beholde privilegert tilgang.
- Jo lavere et rootkit ligger (bruker, kjerne, oppstart, fastvare), jo vanskeligere er det å oppdage og fjerne.
- Systemintegritetsbeskyttelse, det signerte systemvolumet og sikker oppstart gjør klassiske kjerne-rootkits mye vanskeligere på moderne Mac-er.
- Et rootkit kan lyve til datamaskinen, men nettverkstrafikken kan fortsatt ses utenfra.
Test deg selv
1. Hva er de to hovedjobbene til et rootkit?
- Kryptere filer og kreve betaling
- Beholde privilegert tilgang (utholdenhet) og skjule angriperens aktivitet (skjul) — Riktig.
- Sende søppelpost og utvinne kryptovaluta
- Vise annonser og endre startsiden
NIST definerer rootkits som verktøy som skjuler en angripers aktivitet og beholder privilegert tilgang i det skjulte.
2. Hvorfor er rootkits på kjernenivå så vanskelige å oppdage?
- De er svært små filer
- De kjører i kjernen av operativsystemet og kan få systemet til å rapportere falsk informasjon til alle programmer — Riktig.
- De kjører bare om natten
- De sletter seg selv etter hver omstart
Kode på et mer privilegert nivå kan lure programmene over seg, også verktøyene du ville brukt for å lete etter den.
3. Hvilken macOS-funksjon hindrer selv en administrator i å endre beskyttede systemfiler?
- FileVault
- Systemintegritetsbeskyttelse — Riktig.
- AirDrop
- Time Machine
SIP beskytter systemmapper og systemprosesser mot endringer, selv fra administratorkontoen, og det blokkerer en klassisk rootkit-teknikk.
Prøv det med FireAI
Sett denne leksjonen ut i praksis på din egen Mac.
- Regler: app, nettsted, domene, IP eller et område, for alltid eller til du starter på nytt — Skriv en regel like presis som én adresse eller like bred som et helt domene.
- Verdenskartet — Se hvor dataene dine faktisk går, ikke bare et vertsnavn du måtte slå opp selv.
- Trussellister (valgfritt) — Sjekk trafikken din mot offentlige trusseldata uten å sende den noe sted.
- Undersøk en tilkobling — Bestem deg med fakta foran deg, ikke en vag advarsel.
- Sikkerhetsmoduser: Hjem, Kaffebar, Paranoid, Under angrep — Match FireAIs strenghet til hvor Mac-en din faktisk er, med ett trykk.
- USB Network Protection: nothing from a USB drive goes online unasked — Plug in a drive someone handed you without letting what’s on it phone home.
Kilder
- NIST Computer Security Resource Center Glossary: rootkit
- MITRE ATT&CK T1014: Rootkit
- MITRE ATT&CK T1543.001: Create or Modify System Process: Launch Agent
- Apple Support: About System Integrity Protection on your Mac
- Apple Platform Security: System security overview
- Apple Support: About Lockdown Mode
Ta det i bruk på din Mac
Prøv alle funksjonene gratis i 17 dager, uten kort.