Rootkitit, vakoiluohjelmat ja näppäinloggerit
Tutustukaa siihen, miten rootkitit piilottavat haittaohjelmia käyttöjärjestelmältä, miten vakoiluohjelmat siirtävät tietoja huomaamatta ja miten näppäinloggerit sieppaavat tunnistetietoja reaaliajassa.
Rootkitit, vakoiluohjelmat ja näppäinloggerit on ilmainen Security+ Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Security+ Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Security+ Academy-kurssilla on yhteensä 4 oppituntia.
Huomaamaton haittaohjelma: piiloutuminen kaikkien nähden
Monet haittaohjelmatyypit ilmoittavat läsnäolostaan näkyvillä vahingoilla, mutta tietynlainen haittaohjelmisto on suunniteltu erityisesti pysymään piilossa käyttäjiltä, järjestelmänvalvojilta ja tietoturvatyökaluilta samalla, kun se toteuttaa hyökkääjän tavoitteita kaikessa hiljaisuudessa. Rootkit-ohjelmat, vakoiluohjelmat ja näppäinpainallusten tallentajat edustavat haittaohjelmien huomaamatonta ääripäätä. Niiden tehokkuus perustuu siihen, että ne säilyvät järjestelmässä ilman havaitsemista — ne voivat pysyä aktiivisina kuukausia tai vuosia ja siirtää tunnistetietoja ja tietoja huomaamatta. Niiden piilotustekniikoiden ymmärtäminen on olennaista rikosteknisessä tutkinnassa ja valittaessa tunnistustyökaluja, jotka löytävät sen, minkä tavalliset tarkistukset ohittavat.
Rootkit-ohjelmat: käyttöjärjestelmän itsensä väärinkäyttö
Rootkit-ohjelma muokkaa käyttöjärjestelmää tai matalan tason ohjelmistoa piilottaakseen hyökkääjän läsnäolon. Termi tulee Unix-järjestelmän sanasta ”root” (korkein käyttöoikeustaso) ja sanasta ”kit” (työkalusarja). Rootkit-ohjelmat sieppaavat käyttöjärjestelmän toimintoja piilottaakseen tiedostot, rekisteriavaimet, prosessit ja verkkoyhteydet tavallisilta järjestelmän tarkistustyökaluilta. Rootkit-ohjelmaa käyttävä prosessi ei välttämättä näy Task Managerissa, sen verkkoyhteydet eivät näy komennolla netstat eivätkä sen tiedostot näy hakemistoluetteloissa — koska kaikki nämä työkalut kyselyttävät käyttöjärjestelmää samojen rajapintojen kautta, jotka rootkit-ohjelma on vaarantanut. Rootkit-ohjelmia on erittäin vaikea havaita tartunnan saaneen käyttöjärjestelmän sisältä.
# What rootkits hide:
# - Malicious processes from task manager / ps
# - Files and directories from file system listings
# - Registry keys from regedit
# - Network connections from netstat/ss
# - Kernel modules from lsmod
# - Loaded DLLs from process listings
# Why standard tools fail:
# Task Manager calls NtQuerySystemInformation() -> rootkit intercepts
# Rootkit patches return value to exclude hidden processRootkit-ohjelmien tyypit sijainnin mukaan
Rootkit-ohjelmat luokitellaan sen mukaan, missä ne toimivat järjestelmässä. Käyttäjätilan (sovellustason) rootkit-ohjelmat toimivat käyttäjätilassa ja liittävät itsensä API-kutsuihin; ne on helpointa havaita ja poistaa. Kernel-tilan rootkit-ohjelmat toimivat käyttöjärjestelmätason käyttöoikeuksilla ja muokkaavat ytimen tietorakenteita — ne ovat erittäin huomaamattomia ja niiden asentaminen edellyttää ajuria tai ytimen haavoittuvuuden hyödyntämistä. Bootkit (MBR-rootkit) saastuttaa Master Boot Record- tai Volume Boot Record -tietueen ja latautuu ennen käyttöjärjestelmää — käyttöjärjestelmä ei näe sitä toiminnan aikana. Hypervisor-rootkit-ohjelmat (virtuaalikonepohjaiset) toimivat käyttöjärjestelmän alapuolella ja suorittavat alkuperäistä käyttöjärjestelmää virtuaalikoneena — teoriassa niitä ei voi havaita vieraskäyttöjärjestelmän sisältä.
# Rootkit detection approaches by type:
# User-mode: Standard AV + process hollowing detection
# Kernel-mode: Rootkit scanners that compare in-memory data
# with on-disk data (GMER, RootkitRevealer)
# Bootkit: Boot-time scan from trusted environment
# Secure Boot with UEFI TPM attestation
# Hypervisor: Hardware-based integrity measurement
# Best removal approach for all types:
# Boot from trusted external media
# Image the drive for forensics, then reimage the systemRootkit-ohjelmien havaitseminen
Koska rootkit-ohjelmat vaarantavat käyttöjärjestelmän omat raportointimekanismit, niiden havaitseminen edellyttää tarkastelua tartunnan saaneen käyttöjärjestelmän ulkopuolelta. Menetelmiä ovat muun muassa ristiinvertailuanalyysi (ytimen tietorakenteiden vertaaminen suoraan muistissa API-rajapintojen ilmoittamiin tietoihin — poikkeamat paljastavat piilotetut kohteet), eheyden varmistaminen (kriittisten järjestelmätiedostojen tiivisteiden vertaaminen luotetusta lähteestä peräisin oleviin tunnettuihin vertailuarvoihin), offline-tarkistus (käynnistäminen puhtaalta USB-muistilta ja aseman tarkistaminen) sekä Secure Boot TPM-etäattestoinnilla (käynnistysketjun muuttamattomuuden kryptografinen varmistaminen). Työkaluja ovat GMER, Malwarebytes Anti-Rootkit ja Linuxille tarkoitetut chkrootkit/rkhunter.
# Linux rootkit detection:
rkhunter --check --skip-keypress
chkrootkit
# Cross-view analysis concept:
# Hidden process detection:
# Walk the kernel EPROCESS list directly (avoids API hooks)
# Compare to what NtQuerySystemInformation() returns
# Processes in EPROCESS but not in API list = hidden (rootkit)
# Verify critical file hashes:
aids --check # Advanced Intrusion Detection Environment
trip # Tripwire IDSVakoiluohjelmat: huomaamaton tietojen siirto
Vakoiluohjelma seuraa salaa käyttäjän toimintaa ja lähettää tietoja hyökkääjälle käyttäjän tietämättä tai ilman tämän suostumusta. Se voi kerätä selaushistorian, hakukyselyt, kuvakaappaukset, sovellusten käytön ja sijaintitiedot. Joitakin vakoiluohjelmia markkinoidaan kaupallisesti ”valvontaohjelmistoina” vanhempien valvontaan tai työntekijöiden seurantaan (vaikka laillisuus vaihtelee lainkäyttöalueittain). Rikolliset ja valtiolliset toimijat käyttävät haitallisia vakoiluohjelmia arkaluonteisten yritystietojen, henkilötietojen ja immateriaalioikeuksien huomaamattomaan siirtämiseen. Vakoiluohjelmat tulevat usein ilmaisten ohjelmistojen mukana (PUP-ohjelmina — Potentially Unwanted Programs), mikä vaikeuttaa niiden alkuperän selvittämistä.
# Spyware behavioral indicators:
# - Unusual outbound network connections (data exfiltration)
# - Increased CPU/disk usage with no obvious cause
# - Browser settings changed (homepage, search engine)
# - New browser toolbars or extensions installed
# - Device battery drains faster (mobile spyware)
# - Slow system performance due to background monitoring
# Anti-spyware scanning:
# Malwarebytes, Windows Defender, HitmanPro
# Check browser extensions: remove unknown extensionsStalkerware ja kaupalliset vakoiluohjelmat
Stalkerware on vakoiluohjelma, joka on suunniteltu läheisten kumppanien salaiseen valvontaan ja jota markkinoidaan hyväksikäyttäjille kumppanien seurantatyökaluna. Se kerää sijaintitietoja, puheluita, tekstiviestejä ja sosiaalisen median tietoja. Kaupallisia vakoiluohjelmia (kuten NSO Groupin Pegasus, Candiru ja FinFisher) myydään hallituksille ja lainvalvontaviranomaisille — usein toimittajien, aktivistien ja toisinajattelijoiden kohdentamiseen. Pegasus hyödynsi iPhonen zero-click-haavoittuvuuksia ja asentui ilman käyttäjän toimia. Coalition Against Stalkerware ja tietoturvatutkijat ovat pyrkineet lisäämään stalkerware-tunnistuksen yleisiin virustorjuntatuotteisiin. Havaitseminen edellyttää usein laitteen rikosteknistä analyysia Amnesty Internationalin Mobile Verification Toolkit (MVT) -työkalun kaltaisilla työkaluilla.
Näppäinpainallusten tallentajat: jokaisen näppäinpainalluksen kerääminen
Näppäinpainallusten tallentaja tallentaa jokaisen käyttäjän kirjoittaman näppäinpainalluksen ja kerää salasanat, viestit, luottokorttinumerot sekä kaikki muut kirjoitetut tiedot. Ohjelmistopohjaiset näppäinpainallusten tallentajat toimivat eri tasoilla: käyttäjätilan koukuilla (SetWindowsHookEx API), kernel-tilan ajureilla (huomaamattomampia) tai lomakkeiden kaappaamiseen tarkoitetuilla koukuilla, jotka sieppaavat selaimen lomakkeiden lähetykset ennen salausta. Laitteistopohjaiset näppäinpainallusten tallentajat ovat näppäimistön ja tietokoneen väliin kytkettäviä fyysisiä laitteita — täysin näkymättömiä ohjelmistopohjaisille tunnistustyökaluille. Ne tallentavat näppäinpainallukset sisäiseen muistiin myöhempää hakua varten. Korkean turvallisuuden tiloja suojaavien organisaatioiden tulee tarkistaa laitteistoportit säännöllisesti luvattomien laitteiden varalta.
# Software keylogger installation vector:
# Trojan download -> installs keylogger driver
# Malicious browser extension -> captures form input
# Office macro -> drops and registers keylogger DLL
# Hardware keylogger detection:
# Physical inspection of keyboard port (USB/PS/2)
# Common types: PS/2 inline, USB inline, USB hub type
# Acoustic side-channel (listening to keystrokes) - exotic
# Defense against software keyloggers:
# Two-factor authentication (keylogged password + OTP)
# Password manager auto-fill (bypasses keyboard input)
# Virtual on-screen keyboard for sensitive systems (limited protection)Lomakkeiden kaappaajat ja selaimen tunnistetietojen varastaminen
Lomakkeiden kaappaajat sieppaavat selaimen lomakkeilla lähetettävät tiedot ennen niiden salaamista ja lähettämistä verkon kautta — näin ne keräävät käyttäjätunnukset, salasanat ja luottokorttinumerot jo tietojen syöttövaiheessa. Pahamaineinen pankkitroijalainen Zeus (Zbot) käytti selaimen prosesseihin lisättyjä lomakkeiden kaappauskoukkuja. Toisin kuin verkkotason nuuskijat, jotka HTTPS estää, lomakkeiden kaappaajat toimivat sovellustasolla, joten salauksella ei ole niihin vaikutusta. Ne liittävät itsensä yleensä selaimen toimintoihin, kuten InternetReadFile-funktioon, tai ruiskuttavat koodia selaimen prosessimuistiin. Nykyaikaiset EDR-työkalut havaitsevat prosessien injektoinnin ja selaimen API-koukkujen käyttömallit, jotka viittaavat lomakkeiden kaappaamiseen.
# Form grabber detection indicators:
# - Browser process loading unexpected DLLs
# - API hooks in browser memory (InternetReadFile, PR_Write)
# - Unusual child processes spawned by browser
# - Outbound connections from browser process to unknown IPs
# Defense:
# EDR with browser protection (e.g., Cisco AMP, CrowdStrike)
# Isolated browser environment (VMware Browser Isolation)
# MFA: even if credentials captured, OTP prevents reuseMainosohjelmat ja PUP-ohjelmat
Mainosohjelma näyttää ei-toivottuja mainoksia ja saattaa ohjata selaimen liikennettä tuottaakseen tuloja ylläpitäjilleen. Vaikka mainosohjelmat ovat vähemmän tuhoisia kuin muut haittaohjelmat, ne heikentävät järjestelmän suorituskykyä, vaarantavat yksityisyyden ja aiheuttavat tietoturvariskejä ohjaamalla käyttäjiä haitallisille sivustoille tai tulemalla muiden, vaarallisempien ohjelmistojen mukana. PUP-ohjelmat (Potentially Unwanted Programs) ovat ohjelmistoja, joita käyttäjä ei välttämättä ole tarkoituksella asentanut ja jotka tulevat usein ilmaisten ohjelmistojen mukana harhaanjohtavien asennusikkunoiden kautta. PUP-ohjelmat ovat harmaalla alueella — ne eivät välttämättä ole varsinaisesti haitallisia, mutta kuluttavat resursseja, vaarantavat yksityisyyden ja luovat väylän vaarallisemmille tartunnoille.
# PUP/Adware prevention:
# During software installation:
# - Choose 'Custom' not 'Express' installation
# - Uncheck pre-selected bundled software offers
# - Read each screen carefully before clicking Next
# Removal:
# Malwarebytes Anti-Malware (good PUP detection)
# ADWCleaner (Malwarebytes tool for adware)
# Check installed programs list for unwanted additions
# Check browser extensions for unknown additionsTunnistetietojen dumppaus ja LSASS
Kun haittaohjelma on asennettu riittävillä käyttöoikeuksilla, tunnistetietojen dumppaus purkaa tallennettuja tunnistetietoja muistista tai levyltä sivuttaisliikettä varten. Windowsin LSASS-prosessi tallentaa tunnistetietoja muistiin kertakirjautumista varten. Mimikatz-tyyppiset työkalut dumppaavat selväkielisiä salasanoja tai NTLM-tiivisteitä LSASS-muistista. Puolustajat torjuvat tätä käyttämällä Credential Guardia (Windows 10 ja uudemmat versiot; se käyttää virtualisointipohjaista suojausta LSASS-prosessin eristämiseen suojatussa säilössä), Protected Users -ryhmän jäsenyyttä (estää tunnistetietojen välimuistiin tallentamisen) sekä EDR-sääntöjä, jotka hälyttävät, kun muu kuin järjestelmäprosessi käyttää LSASS-muistia.
# Credential dump detection:
# Alert on: processes accessing LSASS memory (non-system)
# Alert on: procdump.exe targeting lsass.exe
# Alert on: sekurlsa::logonpasswords in memory artifacts
# Windows Credential Guard (prevents Mimikatz from LSASS):
# LSASS runs in Isolated User Mode (VSM)
# Mimikatz dumps show only encrypted blobs, not plaintext
# Enable Credential Guard:
# gpedit: Computer Config -> Admin Templates -> System -> Device Guard
# 'Turn On Virtualization Based Security' = EnabledRootkitien ja pysyvien uhkien poistaminen
Rootkitin poistaminen käynnissä olevasta järjestelmästä on riskialtista, koska rootkit piilottaa aktiivisesti itsensä ja saattaa havaita poistamisyritykset. Rootkitin korjaamisen suositeltu käytäntö on asentaa järjestelmäkuva uudelleen luotetusta perustilasta sen jälkeen, kun rikostekniset todisteet on säilytetty. Jos täydellinen uudelleenasennus ei ole heti mahdollinen: käynnistä järjestelmä luotettavalta ulkoiselta tietovälineeltä (USB-tikulta, jolla on offline-skanneri), suorita rootkitin tunnistustyökalut ennen käyttöjärjestelmän latautumista, dokumentoi kaikki artefaktit ja suunnittele uudelleenasennus mahdollisimman pian. Bootkitien torjumiseksi käytä Secure Bootia UEFI:n kanssa estämään allekirjoittamattomat käynnistyslataajat ja harkitse nollien kirjoittamista MBR:ään ennen käyttöjärjestelmän uudelleenasennusta.
# Bootkit removal:
# Boot to Windows Recovery Environment (WinRE)
# Repair boot record:
bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd
# For Linux MBR repair:
dd if=/dev/zero of=/dev/sda bs=512 count=1 # wipe MBR
grub-install /dev/sda # reinstall GRUB
# Best practice: full reimage after forensic image capturedPikatesti
Testaa tämän oppitunnin CompTIA Security+ (SY0-701) -käsitteiden ymmärryksesi.
Oppitunnin kertaus
Tässä oppitunnissa opit, että rootkitit kaappaavat käyttöjärjestelmän API:t piilottaakseen prosessit, tiedostot ja verkkoyhteydet, minkä vuoksi tunnistaminen tartunnan saaneen käyttöjärjestelmän sisältä on epäluotettavaa ja edellyttää offline-skannausta tai näkymien välistä analyysiä; spyware ja keyloggerit siirtävät tunnistetietoja ja dataa huomaamatta ulos järjestelmästä, ja niiden toimintaan liittyviä merkkejä voidaan havaita verkkovalvonnalla ja EDR-prosessien tarkastelulla; lisäksi LSASS:ään kohdistuvia tunnistetietojen dumppausohjelmia, kuten Mimikatzia, torjutaan Windowsin Credential Guardilla ja Protected Users -ryhmäkäytännöillä. Seuraavaksi tutustumme tiedostottomiin haittaohjelmiin ja living-off-the-land-hyökkäyksiin.
Opi Security+ Academy tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”Rootkitit, vakoiluohjelmat ja näppäinloggerit” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Security+ Academy-oppimispolun 3 oppituntia, myös oppitunnin “Rootkitit, vakoiluohjelmat ja näppäinloggerit”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Security+ Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Rootkitit, vakoiluohjelmat ja näppäinloggerit”?
Tutustukaa siihen, miten rootkitit piilottavat haittaohjelmia käyttöjärjestelmältä, miten vakoiluohjelmat siirtävät tietoja huomaamatta ja miten näppäinloggerit sieppaavat tunnistetietoja reaaliajass… Harjoittelet Security+ Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Security+ Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Security+ Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Rootkitit, vakoiluohjelmat ja näppäinloggerit”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Security+ Academy-oppitunnilla?
Kyllä. Jokainen Security+ Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Virukset, madot ja troijalaiset
- Kiristyshaittaohjelmat ja kryptolukitsijat
- Rootkitit, vakoiluohjelmat ja näppäinloggerit
- Tiedostottomat haittaohjelmat ja Living-off-the-Land-hyökkäykset