Što učiniti ako siloviki dođu vašem domaćinu

Što učiniti ako siloviki dođu vašem domaćinukdpv - Reuters

Ako iznajmite server, onda nemate punu kontrolu nad njim. To znači da u svakom trenutku posebno educirane osobe mogu doći kod hostera i tražiti od Vas bilo koji Vaš podatak. A hoster će ih vratiti ako je zahtjev formaliziran prema zakonu.

Zaista ne želite da vaši zapisnici web poslužitelja ili korisnički podaci procure do bilo koga drugoga. Nemoguće je izgraditi idealnu obranu. Gotovo je nemoguće zaštititi se od hostera koji posjeduje hipervizor i pruža vam virtualni stroj. Ali možda će biti moguće malo smanjiti rizike. Šifriranje automobila za iznajmljivanje nije tako beskorisno kao što se čini na prvi pogled. U isto vrijeme, pogledajmo prijetnje ekstrakcije podataka s fizičkih poslužitelja.

Model prijetnje

U pravilu, hoster će nastojati zaštititi interese klijenta koliko god je to moguće zakonom. Ako se u pismu službenih tijela traže samo zapisnici pristupa, hoster neće dati ispise svih vaših virtualnih strojeva s bazama podataka. Barem ne bi trebalo. Ako traže sve podatke, hoster će kopirati virtualne diskove sa svim datotekama, a vi za to nećete znati.

Bez obzira na scenarij, vaš glavni cilj je učiniti napad previše teškim i skupim. Obično postoje tri glavne mogućnosti prijetnje.

Službenik

Najčešće se službenom uredu hostera šalje papirnati dopis sa zahtjevom za dostavom potrebnih podataka u skladu s relevantnim propisom. Ako je sve učinjeno ispravno, hoster službenim tijelima dostavlja potrebne logove pristupa i druge podatke. Obično traže samo da pošaljete potrebne podatke.

Povremeno, ako je prijeko potrebno, predstavnici agencija za provođenje zakona osobno dolaze u podatkovni centar. Na primjer, kada imate vlastiti namjenski poslužitelj i podatke s njega možete preuzeti samo fizički.

U svim zemljama, stjecanje pristupa privatnom vlasništvu, provođenje pretraga i drugih aktivnosti zahtijevaju dokaze da podaci mogu sadržavati važne informacije za istragu zločina. Osim toga, potreban je i nalog za pretragu sačinjen u skladu sa svim propisima. Mogu postojati nijanse povezane s osobitostima lokalnog zakonodavstva. Glavna stvar koju morate razumjeti je da ako je službeni put ispravan, predstavnici podatkovnog centra neće pustiti nikoga da prođe ulaz.

Štoviše, u većini zemalja ne možete jednostavno izvući opremu za trčanje. Na primjer, u Rusiji je do kraja 2018., prema članku 183. Zakona o kaznenom postupku Ruske Federacije, dijelu 3.1., bilo zajamčeno da se tijekom zapljene, zapljena elektroničkih medija za pohranu podataka provodi uz sudjelovanje specijalista. Na zahtjev zakonitog vlasnika oduzetih elektroničkih medija za pohranu podataka ili vlasnika podataka koji se na njima nalaze, stručnjak koji sudjeluje u oduzimanju, u nazočnosti svjedoka, kopira informacije s oduzetih elektroničkih medija za pohranu na druge elektroničke medije za pohranu.

Tada je, nažalost, ova točka uklonjena iz članka.

Tajno i neslužbeno

To je već područje djelovanja posebno obučenih drugova iz NSA, FBI, MI5 i ostalih troslovnih organizacija. Najčešće, zakonodavstvo zemalja daje izuzetno široke ovlasti za takve strukture. Štoviše, gotovo uvijek postoji zakonska zabrana bilo kakvog izravnog ili neizravnog otkrivanja same činjenice suradnje s takvim agencijama za provođenje zakona. Sličnih ima i u Rusiji pravne norme.

U slučaju takve prijetnje vašim podacima, oni će gotovo sigurno biti uklonjeni. Štoviše, osim jednostavnog oduzimanja, može se koristiti cijeli neslužbeni arsenal backdoora, zero-day ranjivosti, ekstrakcija podataka iz RAM-a vašeg virtualnog stroja i druge radosti. U tom slučaju domaćin će biti dužan pomoći stručnjacima za provođenje zakona koliko god je to moguće.

Beskrupulozan zaposlenik

Nisu svi ljudi jednako dobri. Netko od administratora podatkovnog centra može odlučiti dodatno zaraditi i prodati vaše podatke. Daljnji razvoj događaja ovisi o njegovim ovlastima i pristupu. Najviše smeta što administrator s pristupom virtualizacijskoj konzoli ima potpunu kontrolu nad vašim strojevima. Uvijek možete napraviti snimku zajedno sa svim sadržajem RAM-a i onda to polako proučavati.

VDS

Dakle, imate virtualni stroj koji vam je dao hoster. Kako možete primijeniti šifriranje da biste se zaštitili? Zapravo, praktički ništa. Štoviše, čak i tuđi namjenski poslužitelj može završiti kao virtualni stroj u koji su umetnuti potrebni uređaji.

Ako zadatak udaljenog sustava nije samo pohranjivanje podataka, već i izvođenje nekih izračuna, tada bi jedina opcija za rad s nepouzdanim strojem bila implementacija homomorfna enkripcija. U ovom slučaju, sustav će izvršiti izračune bez mogućnosti razumijevanja što točno radi. Nažalost, režijski troškovi za implementaciju takve enkripcije su toliko visoki da je njihova praktična upotreba trenutno ograničena na vrlo uske zadatke.

Osim toga, u trenutku kada virtualni stroj radi i izvodi neke radnje, svi šifrirani volumeni su u dostupnom stanju, inače OS jednostavno neće moći raditi s njima. To znači da s pristupom virtualizacijskoj konzoli uvijek možete napraviti snimku operativnog stroja i izdvojiti sve ključeve iz RAM-a.

Mnogi proizvođači pokušali su organizirati hardversku enkripciju RAM-a tako da čak ni hoster nema pristup tim podacima. Na primjer, tehnologija Intel Software Guard Extensions, koja organizira područja u virtualnom adresnom prostoru koja su zaštićena od čitanja i pisanja izvan ovog područja pomoću drugih procesa, uključujući jezgru operativnog sustava. Nažalost, nećete moći u potpunosti vjerovati ovim tehnologijama jer ćete biti ograničeni na svoj virtualni stroj. Osim toga, već postoje gotovi primjeri uspješan napad za ovu tehnologiju. Ipak, šifriranje virtualnih strojeva nije besmisleno kao što se čini.

Šifriramo podatke na VDS-u

Dopustite mi da odmah napomenem da sve što radimo u nastavku ne predstavlja potpunu zaštitu. Hipervizor će vam omogućiti da napravite potrebne kopije bez zaustavljanja usluge i bez da to primijetite.

  • Ako hoster na zahtjev prenese "hladnu" sliku vašeg virtualnog stroja, tada ste relativno sigurni. Ovo je najčešći scenarij.
  • Ako vam hoster da punu snimku stroja koji radi, onda je sve prilično loše. Svi podaci bit će ugrađeni u sustav u jasnom obliku. Osim toga, moći će se preturati po RAM-u u potrazi za privatnim ključevima i sličnim podacima.

Prema zadanim postavkama, ako ste implementirali OS iz vanilla slike, hoster nema root pristup. Uvijek možete montirati medij sa slikom za spašavanje i promijeniti root lozinku chrootavanjem okruženja virtualnog stroja. Ali to će zahtijevati ponovno pokretanje, što će se primijetiti. Osim toga, sve montirane šifrirane particije bit će zatvorene.

Međutim, ako implementacija virtualnog stroja ne dolazi iz vanilla slike, već iz unaprijed pripremljene, tada hoster često može dodati privilegirani račun za pomoć u hitnim situacijama kod klijenta. Na primjer, za promjenu zaboravljene root lozinke.

Čak ni u slučaju cjelovite snimke, nije sve tako tužno. Napadač neće primiti šifrirane datoteke ako ste ih montirali s udaljenog datotečnog sustava drugog računala. Da, u teoriji, možete odabrati RAM dump i iz njega izdvojiti ključeve za šifriranje. Ali u praksi to nije baš trivijalno i vrlo je malo vjerojatno da će proces ići dalje od jednostavnog prijenosa datoteka.

Naručite auto

Što učiniti ako siloviki dođu vašem domaćinu

U svrhu našeg testiranja, uzeli smo jednostavan stroj dio za naručivanje servera. Ne trebamo puno resursa, pa ćemo uzeti opciju plaćanja stvarno potrošenih megaherca i prometa. Tek toliko da se poigrate.

Klasični dm-crypt za cijelu particiju nije uzeo maha. Prema zadanim postavkama, disk je dan u jednom komadu, s korijenom za cijelu particiju. Smanjivanje ext4 particije na root-mountiranoj je praktički zajamčena cigla umjesto datotečnog sustava. Pokušao sam) Tambura nije pomogla.

Stvaranje kripto spremnika

Stoga nećemo šifrirati cijelu particiju, već ćemo koristiti kripto spremnike datoteka, odnosno revidirani i pouzdani VeraCrypt. Za naše potrebe ovo je dovoljno. Prvo izvlačimo i instaliramo paket s CLI verzijom sa službene web stranice. Istovremeno možete provjeriti potpis.

wget https://launchpad.net/veracrypt/trunk/1.24-update4/+download/veracrypt-console-1.24-Update4-Ubuntu-18.04-amd64.deb
dpkg -i veracrypt-console-1.24-Update4-Ubuntu-18.04-amd64.deb

Sada ćemo kreirati sam spremnik negdje u našem domu kako bismo ga mogli montirati ručno nakon ponovnog pokretanja. U interaktivnoj opciji postavite veličinu spremnika, lozinku i algoritme šifriranja. Možete odabrati domoljubnu šifru Skakavac i hash funkciju Stribog.

veracrypt -t -c ~/my_super_secret

Sada instalirajmo nginx, montirajmo kontejner i napunimo ga tajnim podacima.

mkdir /var/www/html/images
veracrypt ~/my_super_secret /var/www/html/images/
wget https://upload.wikimedia.org/wikipedia/ru/2/24/Lenna.png

Malo ispravimo /var/www/html/index.nginx-debian.html da dobijemo željenu stranicu i možete je provjeriti.

Spojite i provjerite

Što učiniti ako siloviki dođu vašem domaćinu
Kontejner je montiran, podaci su dostupni i poslani.

Što učiniti ako siloviki dođu vašem domaćinu
I evo stroja nakon ponovnog pokretanja. Podaci su sigurno pohranjeni u ~/my_super_secret.

Ako vam stvarno treba i želite hardcore, onda možete šifrirati cijeli OS tako da kada ponovno pokrenete sustav zahtijeva povezivanje preko ssh-a i unos lozinke. To će također biti dovoljno u scenariju jednostavnog povlačenja „hladnih podataka“. Ovdje upute za korištenje dropbeara i šifriranje udaljenog diska. Iako je u slučaju VDS teško i suvišno.

Goli metal

Nije lako instalirati vlastiti poslužitelj u podatkovnom centru. Nečiji drugi namjenski može se pokazati kao virtualni stroj u koji se prenose svi uređaji. Ali nešto zanimljivo u smislu zaštite počinje kada imate priliku smjestiti svoj pouzdani fizički poslužitelj u podatkovni centar. Ovdje već možete u potpunosti koristiti tradicionalnu dm-crypt, VeraCrypt ili bilo koju drugu enkripciju po vašem izboru.

Morate razumjeti da ako se implementira potpuna enkripcija, poslužitelj se neće moći sam oporaviti nakon ponovnog pokretanja. Bit će potrebno podići vezu na lokalno IP-KVM, IPMI ili drugo slično sučelje. Nakon toga ručno upisujemo glavni ključ. Shema izgleda tako-tako u smislu kontinuiteta i tolerancije na pogreške, ali nema posebnih alternativa ako su podaci toliko vrijedni.

Što učiniti ako siloviki dođu vašem domaćinu
NCipher nShield F3 hardverski sigurnosni modul

Mekša opcija pretpostavlja da su podaci šifrirani, a ključ se nalazi izravno na samom poslužitelju u posebnom HSM-u (Hardware Security Module). U pravilu su to vrlo funkcionalni uređaji koji ne samo da pružaju hardversku kriptografiju, već imaju i mehanizme za otkrivanje fizičkih pokušaja hakiranja. Ako netko počne čeprkati po vašem poslužitelju kutnom brusilicom, HSM s neovisnim napajanjem će resetirati ključeve koje pohranjuje u svojoj memoriji. Napadač će dobiti šifrirano mljeveno meso. U tom se slučaju ponovno pokretanje može dogoditi automatski.

Uklanjanje ključeva puno je brža i humanija opcija od aktiviranja termitske bombe ili elektromagnetskog odvodnika. Za takve uređaje će vas jako dugo tući susjedi na stalku u podatkovnom centru. Štoviše, u slučaju korištenja TCG Opal 2 enkripcije na samom mediju, gotovo da nema dodatnih troškova. Sve se to događa transparentno za OS. Istina, u ovom slučaju morate vjerovati uvjetnom Samsungu i nadati se da ima pošteni AES256, a ne banalni XOR.

Istodobno, ne smijemo zaboraviti da sve nepotrebne luke moraju biti fizički onemogućene ili jednostavno ispunjene spojem. Inače, napadačima dajete priliku za izvršenje DMA napadi. Ako imate PCI Express ili Thunderbolt koji viri, uključujući USB s njegovom podrškom, ranjivi ste. Napadač će moći izvršiti napad preko ovih portova i dobiti izravan pristup memoriji pomoću ključeva.

U vrlo sofisticiranoj verziji, napadač će moći izvršiti napad hladnog pokretanja. Pritom jednostavno ulije dobru porciju tekućeg dušika u vaš server, grubo izvadi zamrznute memorijske stickove i iz njih izvadi dump sa svim ključevima. Često je za izvođenje napada dovoljan običan sprej za hlađenje i temperatura od oko -50 stupnjeva. Postoji i točnija opcija. Ako niste onemogućili učitavanje s vanjskih uređaja, tada će algoritam napadača biti još jednostavniji:

  1. Zamrznite memorijske kartice bez otvaranja kućišta
  2. Spojite svoj USB flash pogon za podizanje sustava
  3. Koristite posebne uslužne programe za uklanjanje podataka iz RAM-a koji su preživjeli ponovno pokretanje zbog zamrzavanja.

Podijelite i osvojite

U redu, imamo samo virtualne strojeve, ali želio bih nekako smanjiti rizike od curenja podataka.
Možete, u načelu, pokušati revidirati arhitekturu i distribuirati pohranjivanje i obradu podataka među različitim jurisdikcijama. Na primjer, frontend s ključevima za šifriranje je od hostera u Češkoj, a backend s šifriranim podacima je negdje u Rusiji. U slučaju standardnog pokušaja zapljene, vrlo je malo vjerojatno da će agencije za provođenje zakona to moći izvesti istovremeno u različitim jurisdikcijama. Osim toga, ovo nas djelomično osigurava od scenarija snimanja snimke.

Pa, ili možete razmotriti potpuno čistu opciju - end-to-end enkripciju. Naravno, ovo nadilazi opseg specifikacije i ne podrazumijeva izvođenje izračuna na strani udaljenog stroja. Međutim, ovo je sasvim prihvatljiva opcija kada je u pitanju pohrana i sinkronizacija podataka. Na primjer, ovo je vrlo prikladno implementirano u Nextcloudu. U isto vrijeme, sinkronizacija, verzija i druge dobrote na strani poslužitelja neće nestati.

Ukupno

Ne postoje savršeno sigurni sustavi. Cilj je jednostavno učiniti napad vrijednijim od potencijalnog dobitka.

Određeno smanjenje rizika pristupa podacima na virtualnom mjestu može se postići kombiniranjem enkripcije i odvojene pohrane s različitim hosterima.

Više ili manje pouzdana opcija je korištenje vlastitog hardverskog poslužitelja.

Ali domaćinu će se ipak morati vjerovati na ovaj ili onaj način. Cijela industrija počiva na tome.

Što učiniti ako siloviki dođu vašem domaćinu

Što učiniti ako siloviki dođu vašem domaćinu

Izvor: www.habr.com

Dodajte komentar