Beveik kiekviena ataka tam tikru momentu palieka pėdsakų tinkle: užpuolikas skenuoja sistemas, jungiasi prie serverių, juda tarp kompiuterių ar siunčia duomenis į išorę. Gynėjas, kuris supranta, kaip tinklo protokolai veikia normaliai, gali pastebėti, kada jie naudojami neįprastai. Šioje temoje apžvelgsime svarbiausius tinklo protokolus jų saugumo požiūriu, dažniausias tinklo atakas ir sistemas, kurios padeda jas aptikti.
TCP/IP modelis
Tinklo ryšys aprašomas sluoksniais. Praktikoje dažniausiai naudojamas TCP/IP modelis, turintis keturis sluoksnius. Tinklo prieigos sluoksnyje duomenys perduodami fiziniu ryšiu vietiniame tinkle, o įrenginiai atpažįstami pagal MAC adresus. Interneto sluoksnyje veikia IP protokolas, kuris pagal IP adresus nukreipia paketus tarp tinklų. Transporto sluoksnyje veikia TCP ir UDP. Taikomųjų programų sluoksnyje veikia protokolai, kuriuos naudoja programos: HTTP, DNS, SMTP, SSH ir kiti.
Teorijoje dažnai naudojamas ir išsamesnis septynių sluoksnių OSI modelis. Saugumo specialistams svarbu žinoti abu, nes tiekėjai ir dokumentacija jais remiasi, pavyzdžiui, kalbėdami apie „septinto sluoksnio ugniasienę“, kuri analizuoja programų srautą.
TCP užtikrina patikimą ryšį. Prieš perduodant duomenis, užmezgamas ryšys trimis žingsniais, vadinamais trigubu rankos paspaudimu: klientas siunčia SYN, serveris atsako SYN-ACK, klientas patvirtina ACK. UDP ryšio nemezga ir nepatvirtina gavimo, todėl yra greitesnis, bet nepatikimas. Juo veikia, pavyzdžiui, DNS užklausos ir vaizdo skambučiai.
Protokolai, kuriuos būtina pažinti
ARP susieja IP adresus su MAC adresais vietiniame tinkle. Jis neturi jokios autentifikacijos: bet kuris tinklo įrenginys gali paskelbti, kad tam tikras IP adresas priklauso jam. Šiuo trūkumu remiasi ARP klastojimo ataka, kai užpuolikas apsimeta, pavyzdžiui, maršrutizatoriumi, ir visas srautas pradeda keliauti per jo įrenginį. Tai klasikinis „žmogus viduryje“ atakos būdas vietiniame tinkle. Apsaugai komutatoriuose naudojama dinaminė ARP patikra, o užšifruoti protokolai užtikrina, kad perimtas srautas būtų neperskaitomas.
DHCP automatiškai suteikia įrenginiams IP adresus ir kitus tinklo nustatymus. Neautorizuotas DHCP serveris gali įrenginiams nurodyti klaidingą maršrutizatorių ar DNS serverį ir nukreipti jų srautą. Nuo to apsaugo komutatorių funkcija DHCP snooping, leidžianti DHCP atsakymus siųsti tik iš patikimų prievadų.
DNS paverčia domenų vardus IP adresais. Kadangi beveik kiekvienas tinklo veiksmas prasideda nuo DNS užklausos, DNS žurnalai yra vienas vertingiausių saugumo informacijos šaltinių. Kartu DNS yra ir atakų įrankis: užpuolikai kartais per DNS užklausas slepia ryšį su savo serveriais ar net išneša duomenis. Tai vadinama DNS tuneliavimu. Jį išduoda neįprastai ilgi, atsitiktinai atrodantys subdomenai ir didelis užklausų į vieną domeną kiekis.
HTTP ir HTTPS yra žiniatinklio protokolai. Dauguma šiuolaikinio srauto užšifruota, todėl tinklo stebėsena mato ne turinį, o metaduomenis: kur jungiamasi, kiek duomenų perduodama, kokie sertifikatai naudojami.
SMB naudojamas failų bendrinimui „Windows“ tinkluose, o RDP nuotoliniam darbalaukiui. Abu dažnai naudojami judėjimui tinkle, todėl jų srautas tarp įprastų darbo stočių yra svarbus įspėjamasis ženklas. Atviras RDP į internetą yra viena dažniausių išpirkos reikalaujančių programų patekimo priežasčių.
Dažniausios tinklo atakos ir jų požymiai
Skenavimas. Prieš atakuodamas, užpuolikas išsiaiškina, kurie įrenginiai veikia ir kokie prievadai atviri. Skenavimą išduoda tai, kad vienas šaltinis per trumpą laiką bando jungtis prie daugybės adresų ar prievadų, o dauguma bandymų nesėkmingi.
Slaptažodžių spėjimas tinklo paslaugose. Daugybė nesėkmingų prisijungimų prie SSH, RDP ar el. pašto iš vieno ar kelių adresų.
DoS ir DDoS. Paslaugos perkrovimas. Tinklo lygmenyje tai gali būti, pavyzdžiui, SYN užtvindymas, kai siunčiama daugybė SYN paketų, bet ryšys niekada neužbaigiamas, todėl serveris išnaudoja išteklius laukdamas. Apsaugai naudojamos SYN slapukų technologija ir specializuotos DDoS apsaugos paslaugos.
Judėjimas tinkle. Užpuolikas, patekęs į vieną kompiuterį, jungiasi prie kitų. Požymiai yra neįprastos SMB, RDP ar nuotolinio valdymo jungtys tarp darbo stočių, kurios įprastai tarpusavyje nebendrauja.
Ryšys su valdymo serveriu. Užkrėstas įrenginys reguliariai jungiasi prie užpuoliko serverio. Tai gali išduoti švyturio (angl. beaconing) elgsena, kai jungtys kartojasi labai reguliariais intervalais, ir jungtys į neseniai užregistruotus ar retai lankomus domenus.
Duomenų išgavimas. Neįprastai didelis išeinantis srautas, ypač naktį, į nežinomus adresus ar debesijos saugyklas.
IDS ir IPS sistemos
Įsilaužimų aptikimo sistema (angl. Intrusion Detection System, IDS) stebi srautą ir praneša apie įtartiną veiklą. Įsilaužimų prevencijos sistema (angl. IPS) veikia srauto kelyje ir gali įtartinus paketus iš karto blokuoti. IDS nerizikuoja sutrikdyti verslo, bet tik įspėja. IPS gali sustabdyti ataką, bet klaidingas suveikimas gali užblokuoti teisėtą srautą.
Aptikimas vyksta dviem pagrindiniais būdais. Parašais grįstas aptikimas ieško žinomų atakų požymių. Jis tikslus ir mažai klysta, tačiau neaptinka naujų, dar neaprašytų atakų. Anomalijomis grįstas aptikimas pirmiausia išmoksta, kaip atrodo normalus srautas, ir praneša apie nukrypimus. Jis gali aptikti naujas atakas, tačiau dažniau klaidingai suveikia. Praktikoje abu būdai derinami.
Plačiai naudojamos atvirojo kodo sistemos yra Suricata ir Snort, veikiančios parašų principu, bei Zeek, kuri ne tiek ieško atakų, kiek sukuria išsamius tinklo veiklos žurnalus: kas, kada, su kuo ir kokiu protokolu bendravo.
Tinklo srauto analizė
Tinklo stebėsenai naudojami du pagrindiniai duomenų tipai. Visų paketų įrašai (angl. full packet capture) išsaugo visą srautą su turiniu. Jie suteikia daugiausia informacijos tyrimui, bet užima labai daug vietos, todėl saugomi trumpai. Plačiai naudojamas analizės įrankis yra Wireshark.
Srauto įrašai, pavyzdžiui, NetFlow ar IPFIX, fiksuoja tik metaduomenis: šaltinio ir paskirties adresus, prievadus, protokolą, laiką ir duomenų kiekį. Jie nedideli, todėl gali būti saugomi ilgai, ir puikiai tinka anomalijoms, tokioms kaip skenavimas ar duomenų išgavimas, aptikti.
Kadangi didžioji dalis srauto užšifruota, gynėjai vis dažniau remiasi metaduomenimis, DNS žurnalais ir galinių įrenginių stebėsena. Dar viena svarbi priemonė yra pradinė būsena (angl. baseline): žinant, kaip tinklas atrodo įprastą dieną, daug lengviau pastebėti, kada kažkas pasikeitė.
Svarbiausios temos išvados
TCP/IP modelis aprašo tinklo ryšį sluoksniais, o saugumo specialistas turi žinoti, kaip kiekvienas svarbus protokolas veikia normaliai. ARP ir DHCP neturi įmontuotos autentifikacijos, todėl apsaugomi komutatorių funkcijomis, o DNS žurnalai yra vienas vertingiausių informacijos šaltinių. Skenavimą, slaptažodžių spėjimą, judėjimą tinkle, švyturio elgseną ir duomenų išgavimą galima atpažinti iš būdingų srauto požymių. IDS įspėja, IPS blokuoja, o parašų ir anomalijų aptikimas vienas kitą papildo. Paketų įrašai, srauto įrašai ir pradinė būsena leidžia pastebėti ir ištirti įtartiną veiklą. Kitoje temoje nagrinėsime žiniatinklio programų saugumą ir OWASP Top 10.
Savikontrolės klausimai
1. Kodėl ARP protokolas leidžia vykdyti „žmogus viduryje“ atakas vietiniame tinkle ir kaip nuo to apsaugoti komutatorius?
2. Kokie DNS srauto požymiai gali rodyti DNS tuneliavimą?
3. Kodėl SMB ar RDP jungtys tarp įprastų darbo stočių laikomos įspėjamuoju ženklu?
4. Kuo parašais grįstas aptikimas skiriasi nuo anomalijomis grįsto ir kokie yra kiekvieno trūkumai?
5. Kodėl srauto įrašai, pavyzdžiui, NetFlow, išlieka naudingi net tada, kai didžioji dalis srauto užšifruota?
Visos pamokos