170 likes | 309 Views
Verkkoliikenteen seuraaminen ja tulkitseminen. Kevät 2007 Arsi Hartikainen, Mikko Pukki. Johdanto. Miksi verkkoliikennettä seurataan? Miten verkkoliikennettä seurataan? Haasteet Hyökkäyksenhavainnointijärjestelmät Työkalut Johtopäätökset ja tulevaisuus. Miksi verkkoliikennettä seurataan.
E N D
Verkkoliikenteen seuraaminen ja tulkitseminen Kevät 2007 Arsi Hartikainen, Mikko Pukki
Johdanto • Miksi verkkoliikennettä seurataan? • Miten verkkoliikennettä seurataan? • Haasteet • Hyökkäyksenhavainnointijärjestelmät • Työkalut • Johtopäätökset ja tulevaisuus
Miksi verkkoliikennettä seurataan • Vaikeaa pitää muuten turvallisena • Havaitaan luvaton käyttö sekä sääntörikkomukset • Palomuurin sääntöjen muutokset • P2P –liikenteen karsiminen • Viruspostien torjunta
Miten verkkoliikennettä seurataan • Kirjoitetaan ja tulkitaan lokeja • Pyritään olemaan haittaamatta liikennettä • Läpinäkyvää muulle liikenteelle • Kaappaavan laitteen verkkorajapinta asetetaan tilaan jossa liikennettä ei suodateta • kerätään pakettien otsikot tai koko paketit
Haasteet • Resurssit (varsinkin hyökkäyksenhavannointijärjestelmässä) • Laiteresurssit • henkilöstöresurssit • Verkkoliikenteen luonne • Paketti täytyy kerätä sen esiintymishetkellä • Samaan liikenteeseen voi liittyä useita paketteja • Kaikki paketit kerättävä • Laki ja etiikka • sähköisen viestinnän tietosuojalaki • Ratkaisuja? • kaapataan vain paketin alku
Hyökkäyksenhavainnointijärjestelmät • Etsii tapahtumasarjoja jotka viittaavat ilkeämieliseen toimintaan • Host based IDS & Network IDS • Signature based & Anomaly detection • Hyökkäykseen reagointi • Lokiin kirjoittaminen ja hälyttäminen • vastatoimet
Snort • Avoimen lähdekoodin NIDS • Toimii pakettikaappaajana ja/tai IDS:nä • Signature based (www.snort.org) • Voi säätää iptablesin sääntöjä hälytysten perusteella • Kun hälytyksen aiheuttaman liikenteen kulku estetään, se ei enää aiheuta lisähälytyksiä jatkossa • Toimii myös ylemmillä protokollatasoilla
tcpdump • Työkalu verkkoliikenteen seuraamiseen • Käyttää libpcap kirjastoa • Työssä käytetty versiota 3.9.4 (pcap 0.9.4) • Kaappaa oletuksena kaikkien verkkorajapintaan tulevin pakettien otsikot (promiscuous mode) • Linux:ssa voidaan kaapata liikennettä kaikista verkkorajapinnoista • tcpdump -i any • Non Promiscuous Mode
tcpdump • Monia suodatus mahdollisuuksia • Voidaan käyttää boolean operaatiota • tcpdump 'not host 192.168.0.50 and (port 22 or portrange 55600-55700)' • Tiputtaa paketteja, jos kuorma on suuri • Koe: 1 GB/s Ethernet verkko, 3.03GB tiedosto, “tcpdump host 192.168.0.5 and not port 22” • > 26% kaapatuista paketeista tippui • Määrä riippuu myös koneesta jolla kaapataan
Tcpdump esimerkki • 13:02:29.305580 IP (tos 0x0, ttl 64, id 3613, offset 0, flags [DF], proto: TCP (6), length: 64) 192.168.0.21.49160 > 192.168.0.10.ssh: S 4127978631:4127978631(0) win 65535 <mss 1460,nop,wscale 0,nop,nop,timestamp[tcp]> • 13:02:29.305818 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: TCP (6), length: 44) 192.168.0.10.ssh > 192.168.0.21.49160: S, cksum 0x75f4 (correct), 3134202974:3134202974(0) ack 4127978632 win 5840 <mss 1460> • 13:02:29.305864 IP (tos 0x0, ttl 64, id 3614, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.21.49160 > 192.168.0.10.ssh: ., cksum 0x818a (incorrect (-> 0xa481), 1:1(0) ack 1 win 65535
Tcpdump esimerkki jatkuu • 13:02:40.231702 IP (tos 0x10, ttl 64, id 3684, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.21.49160 > 192.168.0.10.ssh: F, cksum 0x818a (incorrect (-> 0x89b8), 3477:3477(0) ack 3381 win 65535 • 13:02:40.232369 IP (tos 0x10, ttl 64, id 11842, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.10.ssh > 192.168.0.21.49160: F, cksum 0x5537 (correct), 3381:3381 (0) ack 3478 win 13440 • 13:02:40.410576 IP (tos 0x10, ttl 64, id 11843, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.10.ssh > 192.168.0.21.49160: F, cksum 0x5537 (correct), 3381:3381(0) ack 3478 win 13440 • 13:02:40.410639 IP (tos 0x10, ttl 64, id 3685, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.21.49160 > 192.168.0.10.ssh: ., cksum 0x818a (incorrect (-> 0x89b8), 3478:3478(0) ack 3382 win 65534
Tcpdump sovelluskohteita • Vian etsinta • Tutkimus • Hajautettu seuranta • Vähäiset liikennemäärät seurattavissa kohteissa • Kerätään yhteen paikkaan ja analysoidaan • Analysointi mahdollisesti jollain muulla sovelluksella
Wireshark • Graafinen käyttöliittymä • Käyttää libpcap kirjastoa kuten tcpdump • Oletuksena riettaassa tilassa (promiscuous mode) • Kaappaa myös pakettejen kuormaa • Yksityisyyden suoja • Käyttäjätunnukset salasanat...
Yhteenveto • IDS ei välttämättä huomaa kaikkia hyökkäyksiä. • Hyökkääjä voi huijata IDS:ää muuntamalla paketteja. • Tällöin tärkeää että tapahtumat on tallennettu. • Olettaen että hyökkäys/tietomurto on todettu. • Snort voi olla toimiva pienessä yrityksessä • Isommassa mittakaavassa ulkoinen palvelu voi olla kannattava. • Tcpdump soveltuu pakettien keruuseen vähäisessä liikennemäärässä • Analysointiin tarvitaan muita työkaluja (Wireshark)
Yhteenveto • Seuraaminen ei ole halpaa ja vaatii resursseja • Ei järkeä maksaa tiedon turvaamisesta sen enempää kuin tiedon arvo on • Tarvitsee ottaa huomioon myös lainsäädäntö • Suomalaisia IDS –palveluita tarjoavia yrityksiä ovat mm. Secode ja Citadec Solutions • Hintatietoja odotetaan yhä (odotettu jo viikko)