Nekoliko je „slojeva“ odgovornosti potrebno za funkcioniranje mreže. Ti slojevi predstavljeni su u OSI modelu (engl. Open Systems Interconnection model). Ti slojevi uključuju sljedeće:
Sloj fizičke mreže, koji se nalazi na dnu mreže. Taj sloj brine o stvarnom fizičkom prijenosu podataka. To znači da je odgovoran da ako pošiljatelj pošalje 1, primatelj isto dobije 1. Fizički sloj može prenositi podatke putem svjetlosnih (optičkih) kablova, na primjer. On određuje može li se promet istovremeno slati u oba smjera, kako se uspostavlja veza itd.
Sloj veze podataka odgovoran je za otkrivanje pogrešaka i ispravak, kao i pakiranje podataka u pakete koji se nazivaju okviri. To je čuvar ulaza za podatke za ulaz u stvarnu mrežu. Taj sloj također definira adresu hardvera na koju se šalju podaci. To mogu biti različita mrežna sučelja u istom računalu, na primjer.
Mrežni sloj je sloj odgovoran za usmjeravanje podataka prema ciljanom uređaju u mreži. Zapamtite da se mreža može povezati s drugom mrežom a da čak ni ne koristi isti komunikacijski protokol. Mrežni sloj propušta podatke prema prijenosnom sloju.
Prijenosni sloj upravlja vezama između početnog čvora (fizičkih dijelova koji čine mrežu) i krajnjeg čvora. Također definira kako se upravlja vezom, očekuje li se da će paketi stići po redu i hoće li se paket morati ponovno poslati ako ne stigne. Prijenosni sloj također upravlja protokom podataka tako da brži čvorovi ne opterete sporije.
Sloj sesije upravlja uspostavljanjem veza i njihovim održavanjem.
Prezentacijski sloj upravlja, recimo, šifriranjem koji računala s različitim načinima prikaza podataka mogu interno prenositi na način koji je razumljiv obama čvorovima. Prezentacijski sloj također upravlja šifriranjem u nekim slučajevima, primjerice, kada pregledavate internet na sigurnom mjestu.
Aplikacijski sloj upravlja stvarnim slojem protokola. Na primjer, u web-pregledniku HTTP protokol definira način na koji aplikacija šalje zahtjev za web-stranicu.
Svaki poslani bit podataka, npr. web-stranica ovog tečaja, prolazi kroz mrežne slojeve (koji se nazivaju „mrežni stog“). Web-mjesto tečaja koristi TLS ili protokol za sigurnost prijenosa podataka (SSL u gornjoj slici uglavnom je zamijenjen TLS-om). To je način šifriranja podataka koji sprečava nižim slojevima da zavire u pakete kako bi vidjeli podatke. Da web-mjesto tečaja ne koristi TLS, vaši podaci bili bi poslani u nešifriranom obliku svim slojevima i svim računalima koja sudjeluju u prijenosu podataka. U najgorem slučaju, to može biti nekoliko desetaka čvorova. Sva ta računala mogla bi u teoriji pregledavati i krasti podatke.
Premda je lijepo znati da web-mjesto ovog tečaja koristi TLS radi sigurnosti, što ako se ne radi o podacima koji su sadržaj ovog tečaja nego o osjetljivim osobnim bankovnim ili zdravstvenim podacima? Kako možete vjerovati čvorovima kroz koje se šalju vaši podaci kada ne možete znati tko njima upravlja? Sada ćemo saznati.
Osiguravanje web-veza
Kada šaljete i primate podatke putem interneta, vrlo često činite to putem web-preglednika. Sigurni preglednici koriste protokol koji se zove TLS (protokol za sigurnost prijenosa podataka) za zaštitu prometa između preglednika koji koristite za pristup internetu (klijent) i poslužitelja kojemu šaljete ili od kojega primate podatke (npr. poslužitelj web-mjesta).
Možete provjeriti jeste li zaštićeni TLS-om tako da pogledate adresnu traku preglednika koji koristite. Trebao bi prikazivati lokot uz ispravan naziv domene. Ako ne vidite lokot pored URL-a, niste zaštićeni šifriranjem.
Kao sloj mrežne sigurnosti, TLS koristi kriptografske protokole za provjeru autentičnosti, provjeru i omogućavanje sigurne razmjene šifrirane komunikacije od preglednika do ciljanog poslužitelja. Pritom štiti sadržaj podatkovnih paketa od izloženosti nižim mrežnim slojevima i čvorovima trećih strana koji šalju podatke duž puta.
TLS protokoli obavljaju razmjenu stvarnih ključeva za šifriranje na siguran način. Prisjetimo se: ključ za šifriranje štiti povjerljivost i provjerava integritet komunikacije (poruke) koja se šalje.
Preglednici koji koriste TLS pokušavaju vas zaštititi tako što provjeravaju valjanost certifikata poslužitelja web-mjesta. Provjeravaju i odgovara li taj certifikat nazivu domene web-mjesta (URL). Ako certifikat poslužitelja nije valjan ili ako se koristi na drugom mjestu, preglednik upozorava da niste zaštićeni. U tom slučaju, poruka na zaslonu upozorava na nevaljanog izdavača certifikata što bi npr. moglo značiti da napadač ubacuje vlastiti certifikat umjesto Googleovog.
Neka mjesta ipak dozvoljavaju povezivanje s nezaštićenim HTTP protokolom. To znači da sve podatke koji se šalju između preglednika i poslužitelja tog mjesta može prisluškivati bilo tko tko upravlja bilo kojim čvorom kroz koji se usmjeravaju podaci.
Napadi na TLS
No nije dovoljno osloniti se samo na ikonu lokota. Bilo tko može stvoriti certifikat koji služi tome da kaže preglednicima koje šifriranje trebaju koristiti za povezivanje.
Napadač vas može pokušati zavarati da upotrijebite njihovo mjesto umjesto izvornog korištenjem jednostavnih trikova kao što je mijenjanje URL adrese mjesta tako da je sasvim nalik izvornoj. Na primjer, to se može učiniti tako da se zamijeni malo slovo L i broj 1. U većini fontova oni izgledaju dovoljno slično da zavaraju korisnika ako nije oprezan. Ta mjesta isto mogu koristiti šifriranje pa ako vidite ikonu lokota, to samo po sebi ne znači da ste sigurni. Ako primite poruku koja sadrži poveznicu, možda će vas zavarati da pristupite mjestu na taj način. Takav oblik zamjene URL-a lako možete izbjeći tako da sami utipkate adresu umjesto da kliknete na poveznicu koju ste primili.
Posrednički napad (engl. man-in-the-middle, MITM) je napad u kojem napadač sjedi između vas i poslužitelja i dešifrira vaš promet, pohranjuje ga i ponovno šifrira prije nego što ga proslijedi poslužitelju. Tu vrstu napada vrlo je lako izvesti ako ne koristite šifriranje. Način na koji TLS razmjenjuje ključeve i provjerava poslužitelja služi tome da vas pokuša zaštititi od tih napada. Međutim, ako zanemarite poruku o upozorenju u vezi s nezaštićenim mjestima, posrednički napad i dalje je izvediv.
Savjeti za provjeravanje mrežne sigurnosti preglednika i web-mjesta:
Uvijek potražite lokot u adresnoj traci kako biste provjerili valjanost certifikata. Nemojte preskakati upozorenja koja vam preglednik pokaže. Ako preglednik kaže da je certifikat poslužitelja nepouzdan, nemojte koristiti mjesto.
Važno je napomenuti da TLS i drugi sigurnosni protokoli poput SSL-a ne služe samo za komunikaciju između web-preglednika i poslužitelja web-mjesta. Trenutno se mogu koristiti i koriste se i za druge vrste primjena poput klijenata za e-poštu, usluga u oblaku i mobilnih aplikacija. To je važno jer sve više i više podataka šaljemo i primamo na internetu putem mobilnih aplikacija i oblaka. Ipak, ponešto je složenije odrediti je li takva komunikacija sigurna, kao što ćemo vidjeti u nastavku ovoga dijela.
Uporaba VPN-a za zaštitu
Kako se možete zaštititi od prisluškivanja na internetu ili posredničkih napada? Izvrsno rješenje je uporaba VPN-a (virtualna privatna mreža, engl. virtual private network). VPN šifrira vaše podatke i usmjerava ih s vašeg računala prema poznatom i pouzdanom posredničkom čvoru koji dešifrira podatke i propušta ih dalje na putu prema odredišnom čvoru.
Zamislite da je VPN svojevrsna dodatna omotnica koja šifrira sadržaj (izvornu podatkovnu omotnicu) s čvora vašeg računala, a kada dođe do izlaznog čvora, dešifrira šifrirani sadržaj vanjske omotnice i omogućuje izvornim podacima da nastave uobičajenim tijekom. To može spriječiti, recimo neprijateljske Wi-Fi mreže u pokušaju prisluškivanja vaše komunikacije.
Premda se ona ne preporučuje jer sama po sebi nije sigurna, ako koristite javnu Wi-Fi vezu, VPN je ključan sigurnosni dodatak. Načelno, ako se ikada prijavite na javni Wi-Fi, npr. besplatan internet u kafiću, pobrinite se da pri odlasku isključite dijeljenje datoteka na svojem uređaju i „zaboravite mrežu“ u mrežnim postavkama. To će spriječiti nenamjerno automatsko povezivanje na te mreže koje se može dogoditi kada niste zaštićeni ni svjesni problema.
Primjer VPN rješenja je aplikacija na vašem mobilnom telefonu ili instalirana na fizičkom uređaju na rubu vaše pouzdane mreže (kao što je interni mrežni usmjerivač u tvrtki). Kada se aktiviraju, obje implementacije su sigurne i skrivaju komunikaciju od pozadinskih mrežnih slojeva, a samim time i od čvorova koji upravljaju prometom.
Međutim, ono čega biste uvijek trebali biti svjesni je to da jednom kada šifrirani VPN promet napusti čvor poslužitelja pružatelja usluge VPN-a, on normalno nastavlja svoj put prema ciljanom čvoru. Dakle, ako ne koristite siguran mrežni protokol poput TLS-a ili sveobuhvatnog šifriranja (vidi poglavlje 3.1), promet je dostupan svakom čvoru na ostatku puta.
VPN se također može koristiti za sakrivanje polazišta vašeg prometa tako da izgleda kao da je izašao iz VPN-ovog izlaznog čvora. Ta se značajka može koristiti za zaobilaženje geografskih ograničenja ili skrivanje vašeg prometa od potencijalno neprijateljskih mreža. VPN-ovi se također mogu koristiti za skrivanje komunikacije od neprijateljskih vlasti koje pokušavaju prisluškivati građane svoje zemlje. VPN to čini šifriranjem i maskiranjem cilja komunikacije dok se ne prekine veza u izlaznom čvoru koji se može nalaziti u drugoj zemlji.
VPN rješenje često se koristi za povezivanje zasebnih mreža. To se često čini kako bi se proširila mreža između više ureda jedne tvrtke. Premda zasebne mreže nisu fizički povezane, VPN može učiniti da mreže izgledaju kao jedna mreža. Promet koji je namijenjen tome da bude interni mrežni promet usmjerava se kroz šifriranu VPN vezu prema izlaznom čvoru, koji se u ovom slučaju nalazi na rubu druge mreže.
VPN nije rješenje za sve slučajeve. Ako imate VPN na svojem mobilnom telefonu i koristite ga za dijeljenje internetske veze s prijenosnim računalom, veza prijenosnog računala nije zaštićena VPN-om, iako biste to možda očekivali. Telefon djeluje kao usmjerivač i neće koristiti VPN tunel za dijeljenje internetskih veza iako sve aplikacije na mobilnom telefonu koriste VPN.
U slučaju poput ovog, najbolje je umjesto toga omogućiti VPN na prijenosnom računalu.
Sigurnost na aplikacijama i uslugama u oblaku
Tradicionalno, netko tko koristi računalo koje se zove poslužitelj hostira podatke, a tu je još i osoba koja upravlja poslužiteljem i njegovom sigurnošću. Mnoge prakse kibernetičke sigurnosti kao što je kontrola pristupa i prijava potječu još od ranih početaka računalstva kada su svi uređaji bili jednostavniji, a svi podaci smještali su se lokalno.
U 1980-ima i 1990-ima komercijalizacija i konzumerizacija osobnih računala uvela je osobnu odgovornost potrošača da zaštite svoja računala, ili „krajnje točke“, kako se često nazivaju u korporativnim okruženjima. To je obično značilo instaliranje antivirusnog programa. Danas znamo da to nije dovoljno, pogotovo za kibernetičku sigurnost na korporativnoj razini. Dobra je praksa imati barem redovitu edukaciju o osnovnom protokolu kibernetičke sigurnosti ako zaposlenici tvrtke rade na daljinu, uključujući putovanje na posao.
Trenutno krajnje točke poput radnih stanica, mobilnih telefona i tableta nisu strogo namijenjene isključivo poslovnoj ili privatnoj uporabi. Umjesto toga, dolazi do preklapanja tih namjena s uporabom uređaja i sadržaja koji se na njima pohranjuje. Mjesto na kojem su smješteni podaci također nije jasno definirano. Zato je teško otkriti gdje se nalaze sigurnosne kontrole aplikacija koje svakodnevno koristite.
Samo „oblak“ ili IaaS (infrastruktura kao usluga), PaaS (platforma kao usluga) ili SaaS (softver kao usluga)?
Možda ste čuli za izraz „oblak je automatski siguran“. Alternativno, neki kažu da je „oblak samo nečije računalo“.
Iako su ponekad gotovo istinite, obje su izjave jedne od mnogih suvremenih mitova o kibernetičkoj sigurnosti. Da bismo razumjeli prirodu „oblaka“, moramo postaviti još neka pitanja. Ovisno o odgovorima utvrđuje se i kakve su kontrole i prakse kibernetičke sigurnosti.
Oblak je gotovo postao sinonim za bilo koju obradu podataka koju vrši netko drugi. Međutim, postoje razlike između različitih vrsta oblaka, IaaS-a, PaaS-a i SaaS-a:
IaaS (infrastruktura kao usluga) znači da pružatelj usluga hostinga, kao što su AWS, Azure ili GCP, hostira virtualne poslužitelje u skalabilnom okruženju. U tom slučaju korisnik i dalje mora održavati sigurnost operativnih sustava i usluga.
PaaS (platforma kao usluga) nude isti pružatelji usluga kao i u prethodnom slučaju, ali uključuje i baze podataka ili softver za analizu podataka (engl. data intelligence) kao uslugu, na primjer. U tom slučaju korisnik se može usmjeriti na značajku platforme dok je istovremeno štiti primjerenom konfiguracijom.
SaaS (softver kao usluga) uključuje usluge kao što su Salesforce, Office365 i Gmail. U tom slučaju korisnik ima najmanje pravo glasa u vezi s načinom zaštite usluge. Međutim, korisnik je odgovoran za upravljanje svojim identitetom za uslugu i održavanje dobre mrežne sigurnosti, kao što smo dosad naučili u ovom tečaju.
„Može li se ova aplikacija sigurno instalirati?“
To je vrlo često pitanje. Ako pročitate informacije koje su objavljene uz aplikaciju, nećete saznati mnogo o sigurnosti obrade podatka unutar aplikacije ili u pozadini aplikacije.
Za analizu kibernetičke sigurnosti aplikacije, trebate razmisliti o sljedećim pitanjima:
Tko je objavio aplikaciju? Radi li se o proizvođačevoj trgovini ili nepoznatom entitetu? Trgovine aplikacijama (Google Play, Apple store) imaju određenu razinu provjere aplikacija kako bi se otkrile štetne funkcije (npr. softver za praćenje (engl. stalkerware), zlonamjerni softver i programi za neovlašten pristup).
Koje informacije aplikacija prikuplja od korisnika, sa ili bez njegova pristanka?
Kako su informacije zaštićene između aplikacije i pozadine (engl. backend)? (Za više informacija, vidi treće poglavlje.)
Kako su informacije zaštićene između pošiljatelja i primatelja (sveobuhvatno šifriranje)?
Kakva je sigurnost protokola za šifriranje i njihovog ključnog upravljanja? - Ima li aplikacija TLS certifikat, na primjer?
Kako može izdavač aplikacije tehnički obrađivati vaše informacije?
Radi li izdavač u zemlji čiji pravni sustav propisuje da mora predati vaše informacije lokalnim vlastima (npr. Kina)?
Presreće li izdavač sadržaj informacija i mijenja li ga u prolazu (također, npr. WeChat u Kini)?
Provjera činjenica bila bi mukotrpna čak i za stručnjaka pa možete vidjeti što su drugi učinili da bi ih otkrili. Možete započeti tako da se zapitate je li nedavno provedena provjera koda i neovisna sigurnosna analiza.
Možda je najbolja javno dostupna analiza usporedba značajki sigurnosti i privatnosti različitih aplikacija za čavrljanje (Signal, Telegram, WhatsApp, Facebook Messenger).
Da biste usporedili različite aplikacije, pogledajte npr. usporedbu EFF-a (Eletronic Frontier Foundation). Međutim, ona je zastarjela pa se novija i detaljnija verzija može naći ovdje na Securemessagingapp.com.
Važno je zapamtiti da kada je riječ o bilo kojoj vrsti softvera, od sustavnog softvera vašeg uređaja, antivirusnog i VPN softvera, pa sve do aplikacijskog softvera, važno je instalirati najnovija ažuriranja (pazeći pritom da obavijest o ažuriranju dolazi od pouzdanog i sigurnog izvora). Ta softverska ažuriranja možda se čine beznačajnima i ljudi ih lako mogu ignorirati, ali vrlo često sadrže ključne sigurnosne zakrpe, bez kojih vaš uređaj i komunikacije mogu biti nezaštićeni protiv napada.