Valvo: Tietolähteet

Valvontajärjestelmän toteuttaman havainnoinnin tavoitteena on huomata jatkuvasta tietovirrasta reaaliaikaisesti yritykset vaarantaa ICT-infrastruktuuri, esim. havaita tunkeutumisyritykset. Tämä toteutetaan keräämällä tietoa ICT-infrastruktuurin eri toimintojen jäljistä (traces) monesta eri lähteestä. Tietolähteet kuvaavat joko isäntäkoneen/järjestelmän käyttäytymistä (käyttöjärjestelmä, sovellukset), tai verkon käyttäytymistä (liikenne ja viestintä).

Tietolähteet

Kuvassa on yksinkertaistettu käsitteellinen näkymä mahdollisista tietolähteistä. Suorakulmiot ovat käsitteitä. Ovaalit ovat näiden tietolähteiden konkreettisia toteutuksia. Pyöristetty suorakulmio on todellinen dokumentoitu ja standardoitu Syslog, jolla on erityinen rooli. Koska se on standardoitu protokolla ja formaatti, se tukee myös lokisyötteitä verkkolaitteista, käyttöjärjestelmistä ja sovelluksista. Kuvan käsitteet ja toteutukset käydään tarkemmin läpi tämän luvun syventävissä osissa.

Tietolähteet ovat tapahtumavirtoja (event stream) ja toiminnan jälkiä, jotka järjestelmän käyttäjät ovat jättäneet palveluihin. Tietolähteet syöttävät tietoja IDPS-sensoreille, jotka tuottavat hälytyksiä. Hälytykset edustavat turvallisuusnäkökulmasta kiinnostavia tietoja. Yleisesti IDPS-sensorin havaitsema tapahtuma tai tapahtumavirta luo hälytyksen, joka syntetisoi sensorin havaitseman tietoturvaongelman.

Siirtyminen ulkoisiin resursseihin, kuten pilvipalveluntarjoajiin tai internet-palveluntarjoajiin, voi rajoittaa joidenkin tietolähteiden saatavuutta käytännön syistä (esim. määrä, tietosuojarajoitteet, useiden asiakastietojen sotkeutuminen samassa jäljessä). On myös mahdollista, että isäntäympäristöjen jäljet ​​saattavat vaarantua hyökkääjien toimesta tai niitä saatetaan asettaa saataville ilman asiakkaan tietoa tai lupaa.

Massavalvonta ja SOIM

SOIM (muistutuksena: Security operations and incident management) sisältää monia erilaisia, usein automatisoituja, tietokonejärjestelmiä, joilla on erilaisia hierarkia/riippuvuussuhteita. Niinpä SOIM saattaa tuntua melko abstraktilta. Kiinan kansalaisiinsa kohdistama massavalvonta voidaan nähdä esimerkkinä SOIM-työnkulusta, jossa järjestelminä eivät suinkaan toimi pelkästään laitteet, vaan myös ihmiset. Jos tavallisesti SOIM:in voi katsoa palvelevan järjestelmän luottamuksellisuutta, eheyttä ja saatavuutta, voi Kiinan massavalvontakoneiston päämääräksi katsoa täysin päinvastaisen. “Turvallisuusteknologiaa” käytetään kansalaisten yksityisyyden sekä ilmaisunvapauden rikkomiseen. Rikkomusten kirjo on melkoinen, joten tässä esimerkissä käsitellään vain muutamia. Moduulissa myös vilisee erilaisia lyhenteitä, joten käydään niitä uudelleen läpi.

SOIM:in keskiössä olevan MAPE-K-silmukan (monitor, analyze, plan, execute - knowledge) monitor-vaihetta toteutetaan usealla eri tavalla. Kansalaisten liikkumista seurataan yli puolella miljardilla valvontakameralla, joista osa tunnistaa tekoälyn avulla kasvot, joskus jopa vaatteet tai kävelytyylin (gait recognition). “Fyysiseen” seurantaan käytetään lisäksi mm. puhelimen paikannustietoja, ostoshistoriaa (esim. junalipun osto) ja jopa naapurustovahteja, jotka raportoivat alueensa asukkaista paikallishallitukselle. Naapurustovahtien sekä kameroiden voi katsoa vertautuvan eräänlaisiksi Intrusion Detection System/Intrusion Prevention System -järjestelmiksi, jotka raportoivat poikkeavuuksista ja estävät niitä olemassaolollaan. Ajattele tässä esimerkissä tunkeutumisen esto/havaitsemisjärjestelmä poikkeavuuden esto/havaitsemisjärjestelmäksi.

Kansalaisia seurataan myös internetissä. Päästä päähän -salatut (E2E) viestintäsovellukset on kielletty, ja suosituimman viestintäsovelluksen, WeChat:in, osalta Kiinan hallituksella onkin vapaa pääsy kansalaisten chattihistoriaan. Sosiaalisen median käyttö myös vaatii kirjautumista omalla nimellä: pseudonyymien käyttö on kielletty, anonyymiydestä puhumattakaan. Internettiä on muutenkin vahvasti sensuroitu, jonka voidaan myös katsoa olevan osa poikkeavuuksien estoa. Kritiikin esittäminen hallintoa vastaan internetissä tuo nopeasti poliisit ovelle.

Analyze-vaihe perustuu tekoälyyn. Edistynyt kasvojentunnistus mainittiinkin jo, ja se voidaan yhdistää muihin tekoälymalleihin. Nämä järjestelmät raportoivat, jos joku vaikkapa kävelee punaisia päin tai lajittelee roskat väärin. Seurannan ei suinkaan tarvitse perustua kamerakuvaan; tekoälymalli voi raportoida poikkeavuuden, mikäli esimerkiksi samaan hotelliin samoille päiville tulee varauksia useilta henkilöiltä, joilla on rikoshistoria (The New York Timesin artikkeli aiheesta). Joku voi olla sitä mieltä, ettei mikään näistä kuulosta kovin pahalta, mutta kyseisellä teknologialla voi myös esimerkiksi tukahduttaa protestit ennen kuin ne kerkeävät edes alkamaan. Vielä huolestuttavampaa on se, että tietyn kansalaisen rikoksentekotodennäköisyyden arvioiminen tekoälyllä alkaa olla teknologisesti mahdollista.

Plan-vaihe tapahtuu ns. kaupunkiaivoissa (city brain), jotka ovat kaupunginosakohtaisia turvaoperointikeskuksia (SOC). Näissä keskuksissa työntekijät seuraavat tekoälyjärjestelmän raportteja ja reagoivat sen aiheuttamiin poikkeamahälytyksiin, eli se on siis turvatiedon ja tapahtumien hallintaa (SIEM). Hyväntahtoisimmassa esimerkissä tälläistä järjestelmää voi käyttää (ja käytetään) esimerkiksi liikenteenohjauksen suunnitteluun ja toteuttamiseen (execute) ruuhkan välttämiseksi. Toisaalta jos järjestelmä esimerkiksi hälyttää alkavasta protestista, voi kaupunkiaivon työntekijä lähettää alueelle lisää poliisipartioita. Poliisipartiot myös raportoivat takaisin kaupunkiaivoille (feedback), jota käytetään tekoälymallin jatkokehittämiseen. Tämä muodostaa MAPE-K-silmukan.

Kansalaisten hyväksyntä näille järjestelmille on saatu vedoten turvallisuuteen ja mukavuuteen, jota ne toki lisäävät: Turvallisuus lisääntyy, kun kaupunkiaivoista voidaan säätää hätäajossa olevan ambulanssin tieltä kaikki valot vihreäksi, ja onhan se kätevää, kun kaupassa voi maksaa kasvoillaan. Yksityisyys on kuitenkin kova hinta, ja sitä on vaikea saada takaisin. Lisäksi on hyvä kysyä, kuinka paljon “rahoilleen” eli yksityisyydelleen saa vastinetta, eli kuinka paljon valvonta todellisuudessa parantaa turvallisuutta?

Aika ajoin turvallisuuteen vedoten yritetään lännessäkin ajaa läpi yksityisyyttä heikentäviä lakeja, kuten esimerkiksi EU:n kipuilu päästä päähän -salattuja viestintäsovelluksia vastaan. E2E-salauksen heikentämistä perustellaan lapsiin kohdistuvan väkivallan ehkäisemisellä, mikä on tottakai tärkeää, mutta on kysyttävä, onko toimenpide mitoitettu oikein. Onko jokaisen EU-kansalaisen yksityisyyden heikentäminen perusteltua siksi, että marginaalinen osa väestöä käyttää E2E-salausta rikolliseen toimintaan?

Loppukevennykseksi: mikäli tunnistat itsesi raskaan musiikin ystäväksi, Meshuggah-nimiseltä yhtyeeltä löytyy aiheeseen liittyvä kappale: The Demon’s Name Is Surveillance.

Valitse oikeat väitteet.

Verkkoliikenne (syventävä)

Verkkodatasta on tullut de-facto standardi tunkeutumisen havaitsemisjärjestelmien syötetietojen keräämiselle, koska tunkeutumisen havaitsemisjärjestelmät ovat yleisesti riippuvaisia verkoista ja verkosta saatava data on standardimuotoista. Pakettien kaappaus on yleisin tapa kerätä verkkoliikennettä. Verkkodataa ei kuitenkaan aina ole saatavilla sisäisesti ja saattaa olla tarpeen saada Internet-palveluntarjoajilta tietoja, esim. hyökkääjien osoitteiden ja reittien tunnistamiseen.

Yleisin verkkoliikennetietojen tyyppi on pakettien kaappaus, josta esimerkkinä libpcap-kirjasto sekä tcpdump- ja wireshark-sovellukset. Suosittu pcap-kirjasto on käytettävissä monissa ympäristöissä, ja se on saatavilla avoimena lähdekoodina. Lukuisia datajoukkoja on ollut saatavilla tai niitä on vaihdettu yksityisesti pcap-muodossa lähes yhtä kauan kuin tunkeutumisen havaitsemistutkimusta on tehty. Pakettikaappausdataa ei kuitenkaan tallenneta IDPS-sensoreille, koska pcapsin säilyttäminen vaatii valtavan määrän tallennustilaa. Pcap-tiedostot on usein varattu tutkimusdatasarjoille tai forensiikkatarkoituksiin. Verkkopohjaisissa IDPS-sensoreissa voi olla mahdollisuus tallentaa muutamia paketteja yhdessä hälytyksen kanssa. Yleensä tallennetaan paketti, joka laukaisi havainnon ja muutama muu, jotka kuuluvat samaan kontekstiin (TCP jne.), ja jotka ilmestyivät nopeasti jälkeenpäin. Tämä ominaisuus rajoittuu yleensä väärinkäytösten havaitsemiseen.

Pcap-kirjasto edellyttää verkkoliitäntää, joka voidaan konfiguroida ns. vapaamuotoiseen tilaan (promiscuous mode). Tämä tarkoittaa, että liitäntä hakee kaikki paketit verkosta, myös ne, joita ei ole osoitettu sille. Myöskään IP-osoitetta ei tarvitse sitoa verkkoliitäntään liikenteen kaappaamiseksi. Sitomattomuus on suositeltavaa häiriöiden välttämiseksi. Näistä ominaisuuksista johtuen pakettien kaappaus voi yleensä tapahtua hiljaisesti näkymättömissä, eikä sitä oletusarvoisesti voida havaita.

Verkkoliikenteen koostaminen: Netflow (syventävä)

Pakettikaappaukset ovat hankalan suuria kooltaan, mutta tarvetta olisi kokonaisnäkymälle verkon toimintaan. Verkkokoosteet (network aggregates) auttavat tässä ongelmassa. Verkkokoosteet ovat mekanismeja, joilla lasketaan tietyt ominaisuudet (lähde, kohde, protokolla tai liitäntä) omaavat paketit. Nämä laskelmat suoritetaan verkkolaitteilla, kun paketit ylittävät niiden rajapinnat.

Netflow on laajalti käytetty verkon valvontatyökalu, jota käytetään havaitsemaan ja visualisoimaan tietoturvahäiriöitä verkoissa. Netflow protokolla tallentaa reitittimien läpi kulkevien pakettien otsikoiden laskurit. Netflow on Ciscon kehittämä ja se on standardoitu IPFix, RFC 7011.

Koska Netflow on verkkolaitteiden tarjoajien kehittämä, se integroituu erittäin hyvin verkkoon. Sen vahvimpia käyttökohteita ovat verkkoviestinnän ja -suhteiden visualisointi ja viestintäkuvioiden esiintuonti. Visuaalinen analytiikka tarjoaa käyttäjäystävällisen tavan ymmärtää poikkeavuuksia ja niiden vaikutuksia. Siksi Netflowta käytetään myös laajalti kyberturvallisuustehtävissä.

Netflow voi kuitenkin kärsiä suorituskyvyn heikkenemisestä sekä laskennan että varastoinnin suhteen. Pakettien käsittely Netflow-laskurien laskemiseksi vaatii pääsyn reitittimen CPU:hun. Tämä heikentää merkittävästi verkkolaitteiden suorituskykyä. Uudemmat reitittimet pystyvät nykyisin generoimaan Netflow-tietueita laitteistokerroksessa, mikä rajoittaa vähemmän suorituskykyä.

Aiemmin operaattorit käyttivät Netflow:ta usein näytteenottomoodissa (vain yksi tuhannesta paketista analysoidaan) rajoittaakseen vaikutusta prosessorin suorituskykyyn. Tällöin liikennenäkymästä tulee rajoitettu ja moni turvallisuushäiriö voi mennä ohi. Lukuunottamatta suuria palvelunestohyökkäyksiä, turvallisuuden suhteen pelkästään Netflow-näytteeseen on vaikeaa luottaa.

Verkon infrastruktuurin sisäinen tieto (syventävä)

Verkkoinfrastruktuuri käyttää monia protokollia oikeanlaisen viestinnän takaamiseksi. Kaksi niistä, nimeäminen ja reititysinfrastruktuuri, ovat myös kiinnostavia sekä hyökkäyksiin että havaitsemiseen. Reititys- tai nimeämistoimintojen raportoiminen vaatii suoran pääsyn infrastruktuurinäkymään. Reititykseen ja nimeämiseen osallistuvat operaattorit yleensä luottavat Syslogiin tietojen keräämisessä.

DNS-protokolla ja nimeäminen (syventävä)

DNS (domain name system) eli nimipalvelujärjestelmä, on yksi Internetin tärkeimmistä palveluista. Se muuntaa verkkotunnuksia IP-osoitteiksi (esim. www.tuni.fi -> 130.230.252.62). Nimeämistä tarvitsee myös TLS (RFC 8446) ja tietyt HTTP-mekanismit, kuten verkkoisännöinti (virtual hosting). Vaikka DNS on tärkeä, siinä on ollut haavoittuvuuksia ja se on monien hyökkäysten kohteena. Perusmuotoisen DNS:n suurin ongelma on autentikoinnin puute, josta johtuen hyökkääjä voi varastaa verkkotunnuksen väärennetyillä DNS-viesteillä tai -vastauksilla. DNSSEC tarjoaa autentikoidut vastaukset DNS-kyselyihin, jolloin käyttäjä saa todisteen verkkotunnuksen omistuksesta.

DNS-protokolla on myös luonnollinen hajautetun palvelunestohyökkäyksen (DDoS) vahvistin, koska hyökkääjä voi matkia DNS-kyselyssä uhrin IP-osoitetta, jolloin DNS-palvelin lähettää ei-toivottua liikennettä uhrille. Valitettavasti siirtyminen DNSSEC:iin ei todennäköisesti auta tätä vastaan.

Toinen DNS:ään liittyvä ongelma on bottiverkkojen havaitseminen. Kun haittaohjelma on saastuttanut tietokoneen, se kommunikoi bottiverkon C&C-palvelimen kanssa saadakseen toimintaohjeita. Tässä viestinnässä voidaan hyödyntää esim. DNS-protokollaa. DNS on houkutteleva viestintäkanava hyökkääjille, koska se on yksi harvoista protokollista, joka todennäköisesti kulkee palomuurien läpi ja jonka hyötykuorma pysyy muuttumattomana. Hyökkääjät pystyttävät tähän tarkoitukseen haitallisia verkkotunnuksia ja puolustajat yrittävät ne havaita. Yleisin puolustusmekanismi on DNS-verkkotunnusten mustat listat, mutta sen tehokkuutta on vaikea arvioida. Tätä mustan listan puolustusmekanismia voidaan myös laajentaa muille C&C-kanaville. Huomaa, että DNS ei ole ainoa protokolla, joka on altis DDoS-vahvistushyökkäyksille. NTP (network time protocol) on myös usein käytetty.

Reititys (syventävä)

Toinen hyökkäyksiin liittyvä tietolähde on reititystiedot. BGP (border gateway protocol) -reititysinfrastruktuurin tapauksia on tutkittu, mutta monet tallennetuista tapauksista johtuvat inhimillisestä erehdyksestä. Haitallisia BGP-kaappauksia on kirjattu, mutta ne vaativat niin suurta vaivannäköä hyökkääjältä etteivät hyökkäykset vaikuta olevan vaivan arvoisia.

Sovellusten lokit: verkkopalvelimien lokit ja tiedostot (syventävä)

Sovelluslokit dokumentoivat tietyn sovelluksen toimintaa ja toimivat siten tietolähteenä. Sovelluslokien tärkein etu järjestelmälokeihin verrattuna ovat niiden vastaavuus todellisuuteen sekä tietojen täsmällisyys ja tarkkuus. Sovelluslokit luotiin alun perin virheenkorjausta ja järjestelmän hallintaa varten, joten ne ovat tekstillisiä ja ymmärrettäviä. Sovellukset voivat jakaa lokitiedostoja syslog-infrastruktuurin kautta. Esimerkiksi auth.log-lokitiedosto tallentaa käyttäjän yhteystiedot käytetystä mekanismista riippumatta (pam, ssh jne.).

Verkkopalvelimien lokit (syventävä)

Hyvä tietolähde ovat verkkopalvelin- ja välityspalvelinlokit (Common Log Format, CLF; Extended Common Log Format, ECLF). Formaatti on on de facto -standardi esim. Apache-verkkopalvelimissa. Formaatti on erittäin yksinkertainen ja helppolukuinen. Se antaa tiedot kyselystä (resurssi, jota asiakas yrittää saada) ja palvelimen vastauksen koodina. Siksi sitä on käytetty laajalti tunkeutumisen havaitsemisjärjestelmissä. Suurin ongelma formaatissa on tiedon puute palvelimesta, koska lokitiedosto on lokin luovan koneen paikallinen tiedosto.

Koska palvelinlokit kirjoitetaan kun palvelin on jo vastannut pyyntöön, myös hyökkäys on jo tapahtunut, kun IDPS-sensori vastaanottaa lokitiedot. Tämä tietolähde ei siis täytä tunkeutumisen havaitsemis- ja estojärjestelmien vaatimuksia, vaan IDPS on kytkettävä suoraan datavirtaan (pakettivirta, ohjevirta), jotta se voi estää kyselyn tai muokata sen sisältöä.

Tiedostot ja dokumentit (syventävä)

Toinen sovellustason tapahtumavirtoihin liittyvä tietolähde koostuu joidenkin sovellusten tuottamista dokumenteista. Rikkaat dokumenttiformaatit (esim. PDF, Flash, toimistoohjelmistot, sähköposteissa käytetty rikas HTML-formaatti) ovat myös hyökkääjälle mahdollisuus sisällyttää niihin haittaohjelmia. Kun nämä dokumentit liikkuvat verkossa tai esim. sähköpostissa, ne jättävät jälkiä, jotka voivat paljastaa dokumenttiin upotetun haitallisen koodin (esim. makrot, javascript).

Tietojen jäsentäminen dokumenteista, sekä yksinkertaisista (esim. TLS-sertifikaatti) että mutkikkaista (esim. PDF), on monimutkaista. Se on mahdollisuus myös hyökkääjälle, koska samasta dokumentista voidaan luoda erilaisia ​​tulkintoja, mikä voi johtaa haavoittuvuuksiin ja haittaohjelmiin. Monipuoliset dokumenttiformaatit ovat täällä kuitenkin jäädäkseen. Tästä syystä monipuoliset (ja monimutkaiset) määritykset, kuten HTML5, on kirjoitettava erityisen hyvin, jotta ne voidaan tulkita yksiselitteisesti. Tällöin jätetään vähemmän tilaa hyökkääjille itse formaatin speksissä.

Dokumenttien käyttöä tietolähteenä tarvitaan yhä enemmän haittaohjelmien havaitsemiseen.

Järjestelmän ja käyttöjärjestelmän ytimen lokitus (syventävä)

Käyttöjärjestelmissä on yleensä lokit virheenkorjausta ja kirjanpitoa varten. Useimmat järjestelmälokit eivät kuitenkaan riitä tunkeutumisen havaitsemiseen, koska niistä puuttuu vaadittu tarkkuus. Esimerkiksi Unix-lokijärjestelmä tallentaa vain kahdeksan ensimmäistä merkkiä käyttäjän antamista komennoista ilman polkua. Tämä tekee mahdottomaksi erottaa toisistaan komennot, joilla on samat nimet mutta eri polku tai pitkät komentonimet.

Käyttöjärjestelmän ytimen lokit keskittyvät nykyisin käyttöjärjestelmän sisäisten toimintojen valvontaan ja ne ovat laitteistoläheisiä. Niistä voidaan käyttää termiä “päätepistesuojaus” (endpoint protection), josta on tullut yleinen termi virustentorjuntamoottoreille. Tämä korostaa ongelmaa, joka liittyy paitsi järjestelmän, myös sovellusten (esim. selain, sähköpostiohjelma) suojaamiseen. Osa sovelluksista ei ainoastaan vaihda tietoja, vaan ne myös suorittavat ulkoisten lähteiden toimittamaa epäluotettavaa koodia.

Syslog (syventävä)

Syslog tarjoaa yleisen loki-infrastruktuurin, joka on tehokas tietolähde moniin käyttötarkoituksiin. Lokien alkuperäinen lähde on Syslog-protokolla, joka on otettu käyttöön BSD Unixissa. Syslogin nykyinen määrittely on RFC 5424.

Syslog-merkintä on aikaleimattu tekstipohjainen viesti, joka tulee tunnistetusta lähteestä. Se sisältää seuraavat tiedot tässä järjestyksessä:

Aikaleima Tapahtuman luomispäivämäärä ja -aika sekunnin tarkkuudella.

Host-nimi Lokin luovan laitteen nimi. Se voi olla nimi tai IP-osoite tai paikallisen koneen localhost.

Prosessi Lokin luovan prosessin (ohjelman) nimi.

Prioriteetti Lokin luokka ja vakavuus, laskettu vakiokaavan mukaan.

PID Lokin luovan prosessin prosessitunnus.

Viesti 7-bittinen ASCII-viesti, joka määrittelee tiedot.

Syslog luokittelee tiedot eri tiedostoihin, yleensä Unix-järjestelmien hakemistoon /var/log/.

Syslog on myös protokolla, joka toimii UDP/513:lla. Tämä helpottaa lähetystä, koska UDP kestää vaikeita verkko-olosuhteita ja voi hukata muutaman paketin menettämättä kokonaisuutta.

Syslog on erittäin hyödyllinen, koska se on tekstimuotoinen. Monet raskaat SOC-toteutukset rakentuvat Syslog-pohjalle tapahtumien ja hälytysten keskittämisessä.

Palautusta lähetetään...