Sigurniji operativni sistemi (5. deo) — Subgraf
Autor: Petar Simović
U ovom delu bolje ćemo upoznati najnoviji operativni sistem koji unosi dosta noviteta u polju zaštite korisnika od raznih napada preko mreže i onih unutar sistema – takozvanih virusa. Radi se o distribuciji zasnovanoj na Debijanu koja nosi naziv Subgraf (eng. Subgraph). Subgraf se trudi da pruži što bezbedniji operativni sistem za svakodnevnu upotrebu prosečnog korisnika. Bezbednost operativnog sistema i svi propratni zaštitni mehanizmi i karakteristike, o kojima ćemo se upoznati u nastavku, minimalno opterećuju korisnika i suptilno su sakriveni čineći sistem veoma jednostavnim za korišćenje. Grafičko desktop okruženje je Gnom, pa na prvi pogled nećete ni primetiti da se radi o nekoj sigurnosnoj distribuciji.
Karakteristike
Glavna filozofija Subgrafa je povećanje troškova napada na korisnika ovog operativnog sistema kroz razne strategije odbrane. Nijedan sistem nije apsolutno siguran, a ukoliko napadač želi da napadne nekog korisnika to ima izvesnu cenu u vremenu, resursima i ljudstvu. Kada se radi o masovnom nadzoru i hakovanju od strane nekog napadača, ono se može učiniti dovoljno teškim i skupim za uspešno izvođenje kroz upotrebu odgovarajućeg softvera zaštite komunikacija i sistema. Sa tom idejom, Subraf implementira sledeće zaštitne mehanizme:
1. Deterministička kompilacija: obezbeđuje da se izvorni kod uvek kompajlira u isti izvršni kod. Ovo omogućeva da korisnici posle preuzimanja izvornog koda i kompajliranja mogu da uporede heš vrednosti svog kompajliranog programa sa onom vrednosti na sajtu Subgrafa i uvere se u autentičnost programa.
2. Grsecurity/Pax linuks jezgra: Sigurnosno unapređeno i ojačano linuks jezgro (eng. kernel), što u suštini podrazumeva zaštitu adresnog prostora i omogućava korisniku da definiše najniže privilegije koje neki ili svi programi mogu da imaju.
3. Izolovanje rizičnih aplikacija: podrazumeva da rizična aplikacija ima samo jedan određen izolovan pristup resursima poput fajl sistema, procesora ili memorije. Na taj način se smanjuje i ograničava potencijalna šteta koju virus ili napadač može napraviti ako zarazi neki program. Ovo je veoma korisno jer se većina virusa aktivira kliktanjem na neproverene linkove unutar veb pretraživača ili otvaranjem sumnjivih fajlova iz mejlova. Za potrebe izolovanja aplikacija (eng. sandbox) Subgraf je razvio svoj Oz sistem koji može programima da ograniči i izoluje pristup fajlovima, mreži, audio reprodukciji, sistemskim pozivima (seccomp) i interakcije između X11 programa (xpra). Više možete pročitati u njihovom priručniku, a Oz sistem, kao i sav Subgrafov softver je otvorenog koda i možete ga naći na githabu.
4. Subgraf Metaproksi i aplikacioni fajervol (eng. firewall): Subgraf sav odlazni saobraćaj rutira kroz Tor anonimnu mrežu, međutim nisu svi programi prilagođeni da komuniciraju sa soks proksijem (eng. socks proxy) koji koristi Tor mreža, pa se u takvim situacijama koriste programi poput torifaja (eng. Torify). Metaproksi ovo automatski radi za sve programe koji podrazumevano ne koriste Tor, a time se izbegava ručno konfigurisanje za svaki program kao u slučaju korišćenja torifaja. Za dodatnu anonimnost, za svaki program se uspostavlja odvojeno Tor mrežno kolo (eng. Tor circuit). Aplikacioni fajervol kontroliše koji program sme da pristupi mreži, a ukoliko neki program pokuša da pristupi mreži bez dozvole, fajervol će o tome odmah obavestiti korisnika koji može taj pristup privremeno ili stalno odobriti. Na ovaj način se pokušava postići da korisnik uvek ima uvid koji se program povezuje sa mrežom.
5. Obavezna enkripcija fajl sistema: Ukoliko se odlučite da instalirate Subgraf, šifrovanje diska tj. celog fajl sistema je obavezno za razliku od većine distribucija. Time se želi sprečiti pristup podacima ukoliko izgubite kompjuter.
6. Brisanje RAM memorije: Ovo nije novo i sa ovom funkcionalnošću smo se sretali i kod drugih sigurnosnih operativnih sistema (npr. Tejls). Brisanje RAM memorije pri gašenju računara je uvek dobro došlo jer sprečava izvlačenje podataka iz memorije neposredno posle gašenja računara (eng. cold boot attack).
7. Sigurniji sistem izvršavanja: Odnosi se na pisanje već postojećih aplikacija kao što su Subgraf mejl (eng. Subgraph Mail) mejl klijent, KojIM (eng. CoyIM) mesindžera i pomenutog Metaproksija u memorijski sigurnim višim jezicima Go i Java koji sprečavaju prekoračenje bafera i izbegavaju pokazivače na proizvoljne memorijske lokacije.
Više možete saznati na sajtu i Subgraf priručniku.
Instalacija
Da biste pokrenuli Subgraf, potrebni su vam najmanje dvojezgarni procesor (eng. Core2Duo, 64-bit) ili jači, dva gigabajta radne memorije (2GB RAM) i dvadeset gigabajta prostora na disku, kao što kažu kreatori sistema. Sliku sistema u ISO formatu možete preuzeti sa navedenog linka, a po preuzimanju slike sistema preuzmite i heš i digitalni potpis preuzete ISO slike kako biste proverili njenu autentičnost. Podrazumeva se da su svi preuzeti fajlovi u istom folderu.
gpg --recv-key --keyserver pgp.mit.edu B55E70A95AC79474504C30D0DA11364B4760E444
gpg --verify subgraph-os-alpha_2016-12-30_1.iso.sha256.sig subgraph-os-alpha_2016-12-30_1.iso.sha256
sha256sum -c subgraph-os-alpha_2016-12-30_1.iso.sha256
Treba napomenuti i to da Subgraf ne možete testirati koristeći VirtuelBoks (eng. VirtualBox), već morate koristiti Kvemu (eng. Qemu), ali standarndo narezivanje ISO slike na di-vi-di (eng. DVD) ili pravljenje butabilnog u-es-be (eng. USB) uređaja je podrazumevan način. Više možete saznati u navedenom priručniku.
Kada pokrenete Subgraf, imaćete opcije za pokretanje sistema bez instalacije tzv. lajv (eng. live), i instalaciju. Ukoliko se odlučite za lajv mod, zahtevi za RAM memorijom su duplo veći (4GB) jer se sistem kopira i koristi iz iste memorije ne koristeći disk.
Kada pokrenete lajv ili instalirate sistem, dočekaće vas lep plavi desktop sa natpisom „Subgraf”.
Kako biste koristili Tor pretraživač i druge programe bez problema, neophodno je da ažurirate sistem, a možda i restartujete ukoliko sistem nije lajv nego je instaliran. Potrebno je i dozvoliti odlazni saobraćaj, zbog fajervola, kako biste se povezali na Debijanove servere za ažuriranje softvera.
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade --auto-remove --purge
Programi
Programi koje dobijate uz sistem su Heks-čet (eng. Hexchat) IRC klijent, Tor pretraživač, Ajsdav/Tandrbrd (eng. Icedove/Thunderbird) mejl klijent, Onionšer (eng. OnionShare) za deljenje fajlova preko Tormreže, KojIm mesindžer, Ki-pas-iks (eng. KeePassX) za šifre, MAT za brisanje metapodataka, VLC plejer, Rikočet (eng. Ricochat) za ćaskanje unutar Tor mreže, kao i druge programe.
Sigurnost
Iako Subgraf ima dosta sigurnosnih barijera za razliku od običnog linuks sistema poput Debijana ili Fedore, rupe i nedostaci u ovom sistemu postoje. Osnovna mana je što nisu svi programi izolovani, već samo odabranih 22. Ovo ima potencijalno velike negativne posledice po ceo sistem, jer svaki od neizolovanih programa predstavlja način na koji napadač može da preuzme kontrolu nad celim sistemom. To znači da ako korisnik preuzme sa interneta neki zaraženi fajl i otvori ga neizolovanim programom, sva zaštita pada u vodu i ceo vaš sistem je zaražen. Ipak treba imati razumevanja i progledati kroz prste Subgrafu za sada jer je još uvek u alfa verziji razvoja. Ni drugi oprobani, detaljno testirani i sigurni operativni sistemi kao Tejls takođe nisu otporni na ovakvu vrstu napada jer i ne izoluju (eng. sandbox) programe jedne odrugih. Više o ovome, dubljoj sigurnosnoj analizi Subgrafa i primerima eksploita možete videti na ovom i ovom linku.