Šifriranje diska u Linuxu. Korištenje Cryptomatora za šifriranje diska u oblaku u Linuxu Hardverski, firmverski i softverski zahtjevi

Postoji mnogo razloga za šifriranje podataka na tvrdom disku, ali cijena za sigurnost podataka bit će smanjenje brzine sistema. Svrha ovog članka je uporediti performanse pri radu s diskom šifriranim na različite načine.

Da bi razlika bila dramatičnija, odabrali smo ne supermoderan automobil, već prosječan automobil. Običan mehanički hard disk od 500 GB, dual-core AMD na 2,2 GHz, 4 giga RAM-a, 64-bitni Windows 7 SP 1. Tokom testa neće biti pokretani antivirusi ili drugi programi, tako da ništa ne može uticati na rezultate.

Odabrao sam CrystalDiskMark za procjenu performansi. Što se tiče alata za šifrovanje koje sam testirao, zaustavio sam se na sledećoj listi: BitLocker, TrueCrypt, VeraCrypt, CipherShed, Symantec Endpoint Encryption i CyberSafe Top Secret.

BitLocker

Ovo je standardna mogućnost šifriranja diska ugrađena u Microsoft Windows. Mnogi ljudi ga jednostavno koriste bez instaliranja programa trećih strana. Zaista, zašto, ako je sve već u sistemu? S jedne strane, to je tačno. S druge strane, šifra je zatvorena i nema sigurnosti da nije sadržavala backdoor za FBI i druge zainteresirane strane.

Šifriranje diska se provodi pomoću AES algoritma s dužinom ključa od 128 ili 256 bita. Ključ se može uskladištiti u modulu pouzdane platforme, na samom računaru ili na fleš disku.

Ako se koristi TPM, onda kada se računar pokrene, ključ se može dobiti odmah od njega ili nakon autentifikacije. Možete se prijaviti pomoću ključa na fleš disku ili unosom PIN koda sa tastature. Kombinacije ovih metoda daju mnogo opcija za ograničavanje pristupa: jednostavno TPM, TPM i USB, TPM i PIN ili sva tri odjednom.

BitLocker ima dvije neosporne prednosti: prvo, njime se može kontrolisati grupne politike; Drugo, šifrira volumene, a ne fizičke diskove. Ovo vam omogućava da šifrirate niz više diskova, nešto što neki drugi alati za šifriranje ne mogu učiniti. BitLocker takođe podržava GUID particionu tabelu (GPT), čime se ne može pohvaliti čak ni najnaprednija Trucrypt fork VeraCrypt. Da biste šifrirali sistemski GPT disk pomoću njega, prvo ćete ga morati pretvoriti u MBR format. Ovo nije potrebno za BitLocker.

Općenito, postoji samo jedan nedostatak - zatvoren izvor. Ako čuvate tajne od ljudi u svom domaćinstvu, BitLocker je savršen. Ako vam je disk pun dokumenata od nacionalnog značaja, bolje je pronaći nešto drugo.

Da li je moguće dešifrovati BitLocker i TrueCrypt

Ako pitate Google, pronaći će zanimljiv program pod nazivom Elcomsoft Forensic Disk Decryptor, pogodan za dešifriranje BitLocker, TrueCrypt i PGP diskova. U okviru ovog članka, neću ga testirati, ali ću podijeliti svoje utiske o još jednom uslužnom programu iz Elcomsofta, odnosno Advanced EFS Data Recovery. Savršeno je dešifrirao EFS foldere, ali pod uslovom da korisnička lozinka nije postavljena. Ako postavite lozinku na čak 1234, program je bio nemoćan. U svakom slučaju, nisam mogao da dešifrujem šifrovani EFS folder koji pripada korisniku sa lozinkom 111. Mislim da će ista situacija biti i sa Forensic Disk Decryptor proizvodom.

TrueCrypt

Ovo je legendarni program za šifriranje diska koji je ukinut 2012. godine. Priča koja se dogodila TrueCrypt-u još uvijek je obavijena mrakom i niko zapravo ne zna zašto je programer odlučio odbiti podršku za svoju zamisao.

Postoje samo zrnca informacija koje nam ne dozvoljavaju da sastavimo zagonetku. Tako je 2013. godine počelo prikupljanje sredstava da se sprovede nezavisna revizija TrueCrypt-a. Razlog su bile informacije dobijene od Edwarda Snowdena o namjernom slabljenju TrueCrypt alata za šifriranje. Za reviziju je prikupljeno preko 60 hiljada dolara. Početkom aprila 2015. godine posao je završen, ali nisu identifikovane ozbiljne greške, ranjivosti ili drugi značajni nedostaci u arhitekturi aplikacije.

Čim je revizija završena, TrueCrypt se ponovo našao u centru skandala. Stručnjaci ESET-a objavili su izvještaj da ruska verzija TrueCrypt 7.1a, preuzeta sa truecrypt.ru, sadrži zlonamjerni softver. Štaviše, sama stranica truecrypt.ru korištena je kao komandni centar - s nje su se komande slale na zaražene računare. Općenito, budite oprezni i ne preuzimajte programe nigdje.

Prednosti TrueCrypt-a uključuju otvoreni izvor, čiju pouzdanost sada podržava nezavisna revizija, i podršku za dinamičke Windows volumene. Nedostaci: program se više ne razvija, a programeri nisu imali vremena da implementiraju UEFI/GPT podršku. Ali ako je cilj šifriranje jednog nesistemskog diska, onda to nije važno.

Za razliku od BitLockera, koji podržava samo AES, TrueCrypt također uključuje Serpent i Twofish. Za generiranje ključeva za šifriranje, soli i ključa zaglavlja, program vam omogućava da odaberete jednu od tri funkcije heširanja: HMAC-RIPEMD-160, HMAC-Whirlpool, HMAC-SHA-512. Međutim, o TrueCryptu je već dosta napisano, pa nećemo ponavljati.

VeraCrypt

Najnapredniji TrueCrypt klon. Ima svoj format, iako ima mogućnost rada u TrueCrypt modu, koji podržava šifrirane i virtuelne diskove u TrueCrypt formatu. Za razliku od CipherShed-a, VeraCrypt se može instalirati na isti računar u isto vrijeme kada i TrueCrypt.

INFO

Nakon povlačenja, TrueCrypt je ostavio bogato nasljeđe: ima mnogo forkova, počevši od VeraCrypt, CipherShed i DiskCryptor.

TrueCrypt koristi 1000 iteracija za generiranje ključa koji će šifrirati sistemsku particiju, dok VeraCrypt koristi 327,661 iteraciju. Za standardne (nesistemske) particije, VeraCrypt koristi 655.331 iteraciju za RIPEMD-160 hash funkciju i 500.000 iteracija za SHA-2 i Whirlpool. Ovo čini šifrovane particije znatno otpornijima na napade grube sile, ali i značajno smanjuje performanse rada sa takvom particijom. Koliko je značajno, saznaćemo uskoro.

Među prednostima VeraCrypt-a je njegov otvoreni izvorni kod, kao i sopstveni i sigurniji format virtuelnih i šifrovanih diskova u odnosu na TrueCrypt. Nedostaci su isti kao u slučaju progenitora - nedostatak UEFI/GPT podrške. Još uvijek je nemoguće šifrirati sistemski GPT disk, ali programeri tvrde da rade na ovom problemu i takva enkripcija će uskoro biti dostupna. Ali na tome rade već dvije godine (od 2014.), a kada će biti izdanje s GPT podrškom i hoće li ga uopće biti, još nije poznato.

CipherShed

Još jedan TrueCrypt klon. Za razliku od VeraCrypt-a, koristi izvorni TrueCrypt format, tako da možete očekivati ​​da će njegove performanse biti bliske onima koje ima TrueCrypt.

Prednosti i nedostaci su i dalje isti, iako nedostacima možete dodati nemogućnost TrueCrypt instalacije i CipherShed na istom računaru. Štaviše, ako pokušate da instalirate CipherShed na mašinu na kojoj je već instaliran TrueCrypt, instalater nudi uklanjanje prethodnog programa, ali ne uspeva da se nosi sa zadatkom.

Symantec Endpoint Encryption

Symantec je 2010. godine kupio prava na program PGPdisk. Rezultat su bili proizvodi kao što su PGP Desktop i, kasnije, Endpoint Encryption. To je upravo ono što ćemo razmotriti. Program je, naravno, vlasnički, izvori su zatvoreni, a jedna licenca košta 64 eura. Ali postoji podrška za GPT, ali samo počevši od Windows 8.

Drugim riječima, ako vam je potrebna GPT podrška i želite šifrirati sistemska particija, morat ćete birati između dva vlasnička rješenja: BitLocker i Endpoint Encryption. Malo je vjerovatno, naravno, da će kućni korisnik instalirati Endpoint Encryption. Problem je u tome što ovo zahteva Symantec Drive Encryption, za koji je potreban agent i Symantec Endpoint Encryption (SEE) server za upravljanje za instalaciju, a server takođe želi da instalira IIS 6.0. Nije li to puno dobrih stvari za jedan program za šifriranje diska? Prošli smo kroz sve ovo samo da bismo izmjerili učinak.

Trenutak istine

Dakle, idemo na zabavni dio, odnosno testiranje. Prvi korak je provjeriti performanse diska bez šifriranja. Naša “žrtva” će biti particija tvrdog diska od 28 GB (obična, ne SSD), formatirana kao NTFS.

Otvorite CrystalDiskMark, odaberite broj prolaza, veličinu privremene datoteke (koristit ćemo 1 GB u svim testovima) i sam disk. Vrijedi napomenuti da broj prolaza praktički nema utjecaja na rezultate. Prvi screenshot prikazuje rezultate mjerenja performansi diska bez šifriranja s brojem prolaza 5, drugi - s brojem prolaza 3. Kao što vidite, rezultati su gotovo identični, pa ćemo se fokusirati na tri prolaza.


CrystalDiskMark rezultate treba tumačiti na sljedeći način:

  • Seq Q32T1 - sekvencijalno upisivanje / sekvencijalno čitanje test, broj redova - 32, niti - 1;
  • 4K Q32T1 - test nasumičnog pisanja/nasumičnog čitanja (veličina bloka 4 KB, broj redova - 32, niti - 1);
  • Seq - test sekvencijalnog pisanja/uzastopnog čitanja;
  • 4K - test nasumičnog pisanja/nasumičnog čitanja (veličina bloka 4 KB);

Počnimo sa BitLockerom. Bilo je potrebno 19 minuta za šifrovanje particije od 28 GB.

Nastavak članka dostupan je samo pretplatnicima

Opcija 1. Pretplatite se na Hacker da pročitate sve članke na sajtu

Pretplata će vam omogućiti da čitate SVE plaćene materijale na stranici, uključujući i ovaj članak, u navedenom periodu. Prihvatamo plaćanja bankovnim karticama, elektronskim novcem i transfere sa računa mobilnog operatera.

Zahtjevi za privatnost i sigurnost računara u potpunosti su određeni prirodom podataka koji se na njemu pohranjuju. Jedno je ako vam kompjuter služi kao stanica za zabavu i na njemu nema ništa osim nekoliko igračaka i tate sa fotografijama vaše omiljene mačke, a sasvim druga stvar ako na hard disku postoje podaci koji su poslovna tajna, potencijalno od interesa za konkurente.

Prva “linija odbrane” je lozinka za prijavu, koja se traži svaki put kada uključite računar.


Sljedeći nivo zaštite su prava pristupa na nivou sistema datoteka. Korisnik koji nema privilegije dozvole će dobiti grešku kada pokuša pristupiti datotekama.


Međutim, opisane metode imaju jedan izuzetno značajan nedostatak. Oboje rade na istom nivou operativni sistem a mogu se relativno lako zaobići ako imate malo vremena i fizički pristup računaru (na primjer, pokretanjem sa USB fleš diska, možete resetovati administrativnu lozinku ili promijeniti dozvole za fajlove). Potpuno povjerenje u sigurnost i povjerljivost podataka možete steći samo ako koristite dostignuća kriptografije i bezbedno ih koristite. U nastavku ćemo pogledati dvije metode takve zaštite.

Prva metoda koja se danas razmatra bit će Microsoftova ugrađena kripto zaštita. Šifrovanje, nazvano BitLocker, prvi put se pojavilo u operativnom sistemu Windows 8. Ne može se koristiti za zaštitu pojedinačne fascikle ili datoteke. To, posebno, dovodi do činjenice da je nemoguće šifrirati sistemski disk (sistem se neće moći pokrenuti), a također je nemoguće pohraniti važne podatke u sistemske biblioteke kao što su "Moji dokumenti" (podrazumevano nalaze se na sistemskoj particiji).
Da omogućite ugrađenu enkripciju, učinite sljedeće:

DiskCryptor

Drugi kriptografski uslužni program koji je danas pregledan je DiskCryptor, besplatno rješenje otvorenog koda. Da biste ga koristili, koristite sljedeća uputstva:

Nesumnjiva prednost ovog uslužnog programa u odnosu na BitLocker mehanizam je da se može koristiti na sistemima koji su objavljeni prije Windows 8 (podržan je čak i Windows XP, koji je ukinut). Ali DiskCryptor također ima nekoliko značajnih nedostataka:

  • ne postoje načini za vraćanje pristupa šifriranim informacijama (ako zaboravite lozinku, sigurno ćete izgubiti svoje podatke);
  • Podržano je samo otključavanje lozinkom; upotreba pametnih kartica ili biometrijskih senzora nije moguća;
  • Možda je najveći nedostatak korištenja DiskCryptor-a to što će napadač s administrativnim pristupom sistemu moći formatirati disk koristeći standardna sredstva. Da, on neće dobiti pristup podacima, ali ćete ih i vi izgubiti.

Da rezimiram, mogu reći da ako na vašem računalu ima instaliran OS počevši od Windows 8, onda je bolje koristiti ugrađenu funkcionalnost.

Ova dokumentacija je arhivirana i više se ne održava.

Razumevanje BitLocker šifrovanja diska

Namjena: Windows Server 2008, Windows Server 2008 R2, Windows Vista

BitLocker šifrovanje disk jedinice je funkcija zaštite podataka dostupna u Windows Server 2008 R2 i nekim izdanjima Windows 7. Integracija BitLocker-a u operativni sistem sprečava opasnost od krađe podataka ili ranjivosti tako što štiti od izgubljenih, ukradenih ili nepropisno stavljenih iz upotrebe računara.

Podaci na izgubljenom ili ukradenom računaru podložni su neovlašćenom pristupu, bilo putem hakerske alatke ili povezivanjem čvrstog diska računara sa drugim računarom. BitLocker šifrovanje pomaže u sprečavanju neovlašćenog pristupa vašim podacima, povećavajući zaštitu datoteka i sistema. BitLocker šifrovanje takođe pomaže da podaci ostanu nedostupni kada se računari zaštićeni BitLocker-om ponište ili ponovo koriste.

BitLocker enkripcija omogućava maksimalna zaštita kada se koristi sa Trusted Platform Module (TPM) verzijom 1.2. TPM je hardverska komponenta koju su njihovi proizvođači instalirali u mnogim modernim računarima. Radi zajedno sa BitLocker enkripcijom kako bi zaštitio korisničke podatke i osigurao da se računar ne mijenja dok je sistem isključen.

Na računarima bez instaliranog TPM 1.2, BitLocker šifrovanje se i dalje može koristiti za šifrovanje disk jedinice operativnog sistema. Windows sistemi. Ali ova implementacija bi zahtijevala od korisnika da ubaci USB ključ za pokretanje kako bi pokrenuo računar ili ga probudio iz stanja mirovanja i ne pruža provjeru integriteta sistema prije pokretanja koju pruža BitLocker TPM enkripcija.

Pored TPM-a, BitLocker enkripcija pruža mogućnost blokiranja normalnog procesa pokretanja dok korisnik ne unese lični identifikacioni broj (PIN) ili ubaci uređaj koji se može ukloniti, kao što je USB fleš disk, koji sadrži ključ za pokretanje. Ove dodatne sigurnosne mjere obezbjeđuju višefaktorsku autentifikaciju i osiguravaju da se računar neće pokrenuti ili probuditi dok se ne navede ispravan PIN ili ključ za pokretanje.

Provjera integriteta sistema

BitLocker enkripcija može koristiti modul pouzdane platforme za provjeru integriteta komponenti za pokretanje i podataka o konfiguraciji pokretanja. Ovo pomaže da se osigura da kada se koristi BitLocker enkripcija, šifrovana disk jedinica bude dostupna samo ako ove komponente nisu neovlašćene i ako je šifrovani disk instaliran na originalnom računaru.

BitLocker enkripcija pomaže da se osigura integritet procesa pokretanja radeći sljedeće:

  • Omogućite način za provjeru integriteta korijenske datoteke i datoteka koje se koriste u ranim fazama pokretanja i osigurajte da nema neprijateljskih promjena u tim datotekama koje bi mogli napraviti, na primjer, virusi sektora za pokretanje ili alati za uređivanje komponenti pokretanja.
  • Poboljšana zaštita od softverskih napada kada je računar van mreže. Bilo koji alternativni softver koji može pokrenuti sistem neće imati pristup ključevima za šifriranje diska operativnog sistema Windows.
  • Sistem se zaključava prilikom zamjene datoteke. Ako je bilo koja od praćenih datoteka zamijenjena, sistem se neće pokrenuti. Ovo će upozoriti korisnika na zamjenu jer sistem neće moći normalno da se pokrene. Ako je vaš sistem zaključan, BitLocker enkripcija osigurava jednostavan proces oporavka.

    Zahtjevi za hardver, firmver i softver

    Da biste koristili BitLocker, vaš računar mora ispuniti određene zahtjeve.

    • Da bi BitLocker koristio mogućnost provjere integriteta sistema koju pruža modul pouzdane platforme, verzija 1.2 modula mora biti instalirana na računaru. Ako nemate TPM instaliran na računaru, moraćete da pohranite ključ za pokretanje na prenosivom uređaju, kao što je USB fleš disk, kada omogućite BitLocker šifrovanje.
    • Računar sa TPM-om takođe mora imati BIOS koji ispunjava specifikacije Trusted Computing Group (TCG). BIOS kreira lanac povjerenja za radnje prije pokretanja operativnog sistema i mora uključiti podršku za statički root objekt mjerenja povjerenja definiran od strane TCG-a. Za računar bez TPM-a, BIOS ne mora biti usklađen sa TCG specifikacijama.
    • Sistemski BIOS (za računare sa ili bez TPM-a) mora podržavati klasu USB uređaja za masovno skladištenje, uključujući čitanje malih datoteka sa USB fleš memorijskog uređaja u okruženju pre pokretanja operativnog sistema. Za više informacija o USB-u pogledajte specifikacije uređaja za pohranu. USB uređaji i komande UFI uređaja za skladištenje na USB veb lokaciji (http://go.microsoft.com/fwlink/?LinkId=83120).
    • Čvrsti disk mora biti podijeljen na najmanje dva diska.
      • Disk sa operativnim sistemom (ili disk za pokretanje) sadrži operativni sistem i datoteke potrebne za njegovo pokretanje i mora biti formatiran sa NTFS sistemom datoteka.
      • Sistemska disk jedinica sadrži datoteke potrebne za pokretanje Windows-a nakon što BIOS pokrene platformu. BitLocker šifrovanje nije omogućeno za ovaj disk. Da bi BitLocker enkripcija funkcionirala, sistemska disk jedinica ne smije biti šifrirana, ne smije biti volumen operativnog sistema i mora biti formatirana kao datoteka NTFS sistem. Kapacitet sistemskog diska mora biti najmanje 1,5 gigabajta (GB).

    Instalacija i inicijalizacija

    BitLocker šifrovanje se instalira automatski kao deo instalacije operativnog sistema. Ali BitLocker šifrovanje nije dostupno dok se ne omogući pomoću čarobnjaka za podešavanje BitLockera, koji se može pokrenuti sa kontrolne table ili desnim klikom na disk u File Exploreru.

    U bilo kom trenutku nakon instaliranja i inicijalne konfiguracije operativnog sistema, administrator može da koristi čarobnjak za podešavanje BitLocker-a da bi pokrenuo BitLocker šifrovanje. Proces inicijalizacije sastoji se od dvije faze:

    1. Na računarima sa TPM-om, inicijalizirajte potonji koristeći čarobnjak za instalaciju TPM-a, komponentu kontrolne table BitLocker šifrovanje disk jedinice, ili izvršavanjem skripte dizajnirane da inicijalizira modul.
    2. Postavite BitLocker enkripciju. Sa kontrolne table otvorite čarobnjak za podešavanje BitLockera, koji vas vodi kroz proces podešavanja i daje vam mogućnost da konfigurišete dodatne postavke autentifikacije.

    Prilikom inicijalizacije BitLocker enkripcije, lokalni administrator bi također trebao kreirati lozinku za oporavak i ključ za oporavak. Bez lozinke za oporavak ili ključa za oporavak, svi podaci na šifrovanoj disk jedinici mogu biti nedostupni ako postoji problem sa disk jedinicom zaštićenom BitLockerom.

    Za detaljne informacije o konfigurisanju i primeni BitLocker šifrovanja, pogledajte vodič za Windows BitLocker šifrovanje disk jedinice (http://go.microsoft.com/fwlink/?LinkID=140225).

    Korporativna implementacija

    BitLocker šifrovanje može iskoristiti postojeću infrastrukturu domenskih usluga Active Directory (AD DS) organizacije za daljinsko skladištenje ključeva za oporavak. BitLocker enkripcija pruža čarobnjaka za konfiguraciju i upravljanje, kao i mogućnosti proširenja i upravljanja putem WMI interfejsa sa mogućnošću skriptiranja. Osim toga, BitLocker enkripcija pruža konzolu za oporavak ugrađenu u proces pokretanja kako bi se omogućilo korisniku ili osoblju za podršku da ponovo dobiju pristup zaključanom računaru.

    Za više informacija o pisanju skripti za BitLocker šifrovanje, pogledajte Win32_EncryptableVolume (http://go.microsoft.com/fwlink/?LinkId=85983).

    Stavljanje računara iz pogona i ponovna upotreba računara

    anotacija

    Suprotno uvriježenom mišljenju, DRAM memorija, koja se koristi u većini modernih računara, pohranjuje podatke čak i nakon što se napajanje isključi na nekoliko sekundi ili minuta, a to se dešava na sobnoj temperaturi, pa čak i ako se čip ukloni sa matične ploče. Ovo vrijeme je sasvim dovoljno za potpuno deponovanje ram memorija. Pokazaćemo da ovaj fenomen omogućava napadaču sa fizičkim pristupom sistemu da zaobiđe funkcije OS-a kako bi zaštitio podatke kriptografskog ključa. Pokazat ćemo kako se ponovno pokretanje može koristiti za uspješan napad na poznate sisteme šifriranja tvrdog diska bez korištenja bilo kakvog specijaliziranog hardvera ili materijala. Eksperimentalno ćemo odrediti stepen i vjerovatnoću zadržavanja preostale magnetizacije i pokazati da se jednostavnim tehnikama može značajno povećati vrijeme za koje se podaci mogu uzeti. Nove metode će također biti predložene za traženje kriptografskih ključeva u memorijskim dumpima i ispravljanje grešaka povezanih s gubitkom bitova. Također će biti riječi o nekoliko načina za smanjenje ovih rizika, ali ne znamo jednostavno rješenje.

    Uvod

    Većina stručnjaka pretpostavlja da se podaci iz RAM-a računara brišu gotovo trenutno nakon što se isključi napajanje, ili vjeruju da je preostale podatke izuzetno teško povratiti bez upotrebe posebne opreme. Pokazaćemo da su ove pretpostavke netačne. Konvencionalna DRAM memorija gubi podatke postepeno tokom nekoliko sekundi, čak i pri normalnim temperaturama, pa čak i ako se memorijski čip ukloni sa matične ploče, podaci će ostati u njoj nekoliko minuta ili čak sati, pod uslovom da je čip pohranjen na niskim temperaturama. Preostali podaci se mogu oporaviti jednostavnim metodama koje zahtijevaju kratkoročni fizički pristup računaru.

    Prikazaćemo niz napada koji će nam, koristeći efekte remanencije DRAM-a, omogućiti da povratimo ključeve za šifrovanje pohranjene u memoriji. Ovo predstavlja stvarnu prijetnju korisnicima laptopa koji se oslanjaju na sisteme za šifriranje tvrdog diska. Na kraju krajeva, ako napadač ukrade laptop dok je šifrovani disk povezan, moći će izvršiti jedan od naših napada kako bi pristupio sadržaju, čak i ako je sam laptop zaključan ili u stanju mirovanja. To ćemo pokazati uspješnim napadom na nekoliko popularnih sistema za šifriranje, kao što su BitLocker, TrueCrypt i FileVault. Ovi napadi bi također trebali biti uspješni protiv drugih sistema šifriranja.

    Iako smo svoje napore usmjerili na sisteme za šifriranje tvrdog diska, ako napadač ima fizički pristup računaru, svaka važna informacija pohranjena u RAM-u može postati meta napada. Vjerovatno je da su i mnogi drugi sigurnosni sistemi ranjivi. Na primjer, otkrili smo da Mac OS X ostavlja lozinke računa u memoriji, odakle smo ih mogli izdvojiti, a također smo izvršili napade kako bismo dobili privatne RSA ključeve Apache web servera.

    Dok su neki u zajednicama za informatičku sigurnost i fiziku poluprovodnika već bili svjesni efekta remanencije u DRAM-u, bilo je vrlo malo informacija o tome. Kao rezultat toga, mnogi koji dizajniraju, razvijaju ili koriste sigurnosne sisteme jednostavno nisu upoznati sa ovim fenomenom i koliko lako ga napadač može iskoristiti. Prema našim saznanjima, ovo je prvi detaljan rad koji ispituje posljedice ovih pojava za sigurnost informacija.

    Napadi na šifrovane diskove

    Šifriranje tvrdih diskova je dobro poznata metoda zaštite od krađe podataka. Mnogi vjeruju da će sistemi za enkripciju tvrdog diska zaštititi njihove podatke, čak i ako je napadač dobio fizički pristup računaru (u stvari, za to oni i služe, napomena urednika). Zakon države Kalifornije donesen 2002. godine zahtijeva prijavu mogućih otkrivanja ličnih podataka samo ako podaci nisu šifrirani, jer. Vjeruje se da je enkripcija podataka dovoljna mjera zaštite. Iako zakon ne opisuje nikakva konkretna tehnička rješenja, mnogi stručnjaci preporučuju korištenje sistema šifriranja za hard diskove ili particije, što će se smatrati dovoljnim mjerama zaštite. Rezultati našeg istraživanja pokazali su da je vjera u šifriranje diska neutemeljena. Nesposoban napadač može zaobići mnoge najčešće korišćene sisteme za šifrovanje ako je laptop sa podacima ukraden dok je uključen ili u režimu mirovanja. A podaci na laptopu se mogu čitati čak i ako se nalaze na šifriranom disku, tako da korištenje sistema za šifriranje tvrdog diska nije dovoljna mjera.

    Koristili smo nekoliko vrsta napada na dobro poznate sisteme za šifrovanje hard diskova. Najviše vremena je oduzelo instaliranje šifriranih diskova i provjeru ispravnosti otkrivenih ključeva za šifriranje. Dobijanje RAM slike i traženje ključeva trajalo je samo nekoliko minuta i bilo je potpuno automatizirano. Postoji razlog za vjerovanje da je većina sistema za šifriranje tvrdog diska podložna sličnim napadima.

    BitLocker

    BitLocker je sistem uključen u neke verzije OS-a Windows Vista. Funkcionira kao drajver koji radi između sistema datoteka i drajvera tvrdog diska, šifrirajući i dešifrirajući odabrane sektore na zahtjev. Ključevi koji se koriste za šifriranje ostaju u RAM-u sve dok je šifrirani disk šifriran.

    Za šifrovanje svakog sektora čvrstog diska, BitLocker koristi isti par ključeva kreiranih AES algoritmom: ključ za šifrovanje sektora i ključ za šifrovanje koji rade u režimu ulančavanja blokova šifrovanja (CBC). Ova dva ključa su zauzvrat šifrirana glavnim ključem. Za šifriranje sektora provodi se postupak binarno sabiranje otvoreni tekst sa ključem sesije generisanim šifrovanjem bajta pomaka sektora sa ključem za šifrovanje sektora. Rezultirajući podaci se zatim obrađuju pomoću dvije funkcije miješanja koje koriste algoritam Elephant koji je razvio Microsoft. Ove funkcije bez ključa se koriste za povećanje broja promjena svih bitova šifre i, shodno tome, povećavaju nesigurnost šifriranih podataka sektora. U posljednjoj fazi, podaci se šifriraju AES algoritmom u CBC modu, koristeći odgovarajući ključ za šifriranje. Vektor inicijalizacije je određen šifriranjem bajta pomaka sektora sa ključem za šifrovanje koji se koristi u CBC modu.

    Implementirali smo potpuno automatizirani demo napad pod nazivom BitUnlocker. Ovo koristi eksterni USB drajv sa operativnim sistemom Linux i modifikovani pokretački program zasnovan na SYSLINUX-u i FUSE drajver, koji vam omogućava da povežete diskove šifrovane BitLocker-om na Linux OS. Na probnom računaru sa operativnim sistemom Windows Vista, napajanje je isključeno, USB čvrsti disk je bio povezan i pokrenut sa njega. Nakon toga, BitUnlocker je automatski izbacio RAM na eksterni disk, koristio program keyfind za traženje mogućih ključeva, isprobao sve prikladne opcije (parovi ključa za šifriranje sektora i ključa CBC moda), i ako je uspio, povezao šifrirani disk. Čim je disk spojen, postalo je moguće raditi s njim kao i sa svakim drugim diskom. Na modernom laptopu sa 2 gigabajta RAM-a, proces je trajao oko 25 minuta.

    Važno je napomenuti da je ovaj napad postalo moguće izvesti bez obrnutog inženjeringa bilo kojeg softvera. U Microsoft dokumentaciji, BitLocker sistem je dovoljno opisan da se razume uloga ključa za šifrovanje sektora i ključa CBC režima i da kreirate sopstveni program koji implementira ceo proces.

    Glavna razlika između BitLocker-a i drugih programa u ovoj klasi je način na koji se ključevi pohranjuju kada je šifrirana disk jedinica isključena. Podrazumevano, u osnovnom režimu, BitLocker štiti glavni ključ samo pomoću TPM modula, koji postoji na mnogim modernim računarima. Ova metoda, koja se čini široko korišćenom, posebno je ranjiva na naš napad jer omogućava dobijanje ključeva za šifrovanje čak i ako je računar bio isključen duže vreme, jer kada se računar pokrene, ključevi se automatski učitavaju u RAM (prije prozora za prijavu) bez unošenja ikakvih podataka o autentifikaciji.

    Očigledno, stručnjaci Microsoft-a su upoznati s ovim problemom i stoga preporučuju konfiguriranje BitLockera u poboljšanom načinu rada, gdje su ključevi zaštićeni ne samo pomoću TPM-a, već i lozinkom ili ključem na vanjskom USB disku. Ali, čak i u ovom režimu, sistem je ranjiv ako napadač dobije fizički pristup računaru u trenutku kada on radi (može biti čak i zaključan ili u stanju mirovanja (stanja - jednostavno isključena ili hibernacija u ovom slučaju se smatraju nije podložna ovom napadu).

    FileVault

    Apple-ov FileVault sistem je djelimično istražen i reverzno projektovan. U Mac OS X 10.4, FileVault koristi 128-bitni AES ključ u CBC modu. Kada se unese korisnička lozinka, dešifruje se zaglavlje koje sadrži AES ključ i drugi ključ K2, koji se koristi za izračunavanje vektora inicijalizacije. Vektor inicijalizacije za Ith blok diska se izračunava kao HMAC-SHA1 K2(I).

    Koristili smo naš EFI RAM program za obradu slika da preuzmemo podatke sa Mac računara baziranog na Intelu sa priključenim FileVault šifrovanim diskom. Nakon toga, program keyfind je automatski pronašao FileVault AES ključeve bez grešaka.

    Bez vektora inicijalizacije, ali sa rezultujućim AES ključem, postaje moguće dešifrovati 4080 od 4096 bajtova svakog bloka diska (sve osim prvog AES bloka). Uvjerili smo se da je vektor inicijalizacije također u dumpu. Pod pretpostavkom da podaci još nisu oštećeni, napadač može odrediti vektor tako što će pokušati sve 160-bitne nizove u dumpu jedan po jedan i provjeriti mogu li formirati mogući otvoreni tekst kada se binarno doda dešifriranom prvom dijelu bloka. . Zajedno, korištenje programa kao što su vilefault, AES ključevi i vektor inicijalizacije omogućavaju vam da potpuno dešifrujete šifrirani disk.

    Istražujući FileVault, otkrili smo da Mac OS X 10.4 i 10.5 ostavljaju više kopija korisničke lozinke u memoriji, gdje su ranjivi na ovaj napad. Lozinke računečesto se koristi za zaštitu ključeva, koji se zauzvrat mogu koristiti za zaštitu šifri na FileVault šifriranim diskovima.

    TrueCrypt

    TrueCrypt je popularan sistem za šifrovanje otvorenog koda koji radi na Windows, MacOS i Linux. Podržava mnoge algoritme, uključujući AES, Serpent i Twofish. U verziji 4, svi algoritmi su radili u LRW modu; u trenutnoj 5. verziji koriste XTS mod. TrueCrypt pohranjuje ključ za šifriranje i podešava ključ u zaglavlju particije na svakom disku, koje je šifrirano različitim ključem izvedenim iz lozinke koju je unio korisnik.

    Testirali smo TrueCrypt 4.3a i 5.0a koji rade na Linuxu. Povezali smo disk, šifrirali ga 256-bitnim AES ključem, zatim isključili napajanje i koristili vlastiti softver za ispis memorije za pokretanje. U oba slučaja, keyfind je pronašao 256-bitni netaknuti ključ za šifriranje. Takođe, u slučaju TrueCrypt 5.0.a, keyfind je uspeo da povrati ključ za podešavanje XTS režima.

    Da biste dešifrirali diskove koje je kreirao TrueCrypt 4, morate podesiti ključ LRW moda. Otkrili smo da ga sistem pohranjuje u četiri riječi prije AES rasporeda ključeva. U našem deponiju, LRW ključ nije oštećen. (Ako bi došlo do grešaka, i dalje bismo mogli oporaviti ključ).

    Dm-crypt

    Linux kernel, počevši od verzije 2.6, uključuje ugrađenu podršku za dm-crypt, podsistem za šifrovanje diska. Dm-crypt koristi različite algoritme i modove, ali prema zadanim postavkama koristi 128-bitnu AES šifru u CBC modu sa IV-ovima generiranim ne na osnovu ključnih informacija.

    Testirali smo particiju koju je kreirao dm-crypt koristeći granu LUKS (Linux Unified Key Setup) uslužnog programa cryptsetup i kernela 2.6.20. Disk je šifriran korištenjem AES-a u CBC modu. Nakratko smo isključili napajanje i, koristeći modificirani PXE bootloader, napravili dump memorije. Program keyfind je otkrio ispravan 128-bitni AES ključ, koji je vraćen bez ikakvih grešaka. Nakon što se vrati, napadač može dešifrirati i montirati šifriranu particiju dm-crypt modifikujući uslužni program cryptsetup tako da prihvata ključeve u potrebnom formatu.

    Načini zaštite i njihova ograničenja

    Implementacija zaštite od napada na RAM nije trivijalna, jer korišteni kriptografski ključevi moraju biti negdje pohranjeni. Predlažemo da se usredotočite na uništavanje ili skrivanje ključeva prije nego što napadač dobije fizički pristup PC-u, sprječavanje pokretanja softvera za ispis RAM-a, fizičku zaštitu RAM čipova i smanjenje životnog vijeka RAM podataka kada je to moguće.

    Prepisivanje memorije

    Prije svega, trebali biste kad god je to moguće izbjegavati pohranjivanje ključeva u RAM. Morate prepisati ključne informacije kada se više ne koriste i spriječiti kopiranje podataka u datoteke stranica. Memorija se mora unaprijed očistiti pomoću OS alata ili dodatnih biblioteka. Naravno, ove mjere neće zaštititi ključeve koji se trenutno koriste, jer moraju biti pohranjeni u memoriji, kao što su ključevi koji se koriste za šifrirane diskove ili na sigurnim web serverima.

    Takođe, RAM se mora obrisati tokom procesa pokretanja. Neki računari se mogu konfigurisati da čiste RAM pri pokretanju pomoću alata za čišćenje. POST zahtjev(Samotestiranje pri uključivanju) prije učitavanja OS-a. Ako napadač ne može spriječiti izvršenje ovog zahtjeva, tada na ovom računaru neće moći napraviti memorijski dump sa važnim informacijama. Ali, on i dalje ima priliku da ukloni RAM čipove i ubaci ih u drugi PC sa BIOS postavkama koje su mu potrebne.

    Ograničavanje preuzimanja sa mreže ili sa prenosivih medija

    Mnogi od naših napada izvedeni su korištenjem preuzimanja preko mreže ili s prenosivih medija. Računar mora biti konfiguriran da zahtijeva administratorsku lozinku za pokretanje s ovih izvora. Ali treba napomenuti da čak i ako je sistem konfigurisan da se pokreće samo sa glavnog čvrstog diska, napadač može da promeni sam čvrsti disk, ili u mnogim slučajevima, resetuje NVRAM računara da bi se vratio na originalne BIOS postavke.

    Safe Sleep Mode

    Rezultati studije su pokazali da jednostavno zaključavanje radne površine računara (to jest, OS nastavlja da radi, ali da biste započeli interakciju sa njim morate da unesete lozinku) ne štiti sadržaj RAM-a. Režim hibernacije takođe nije efikasan ako je računar zaključan kada se vraća iz režima spavanja, pošto napadač može aktivirati povratak iz režima spavanja, zatim ponovo pokrenuti laptop i napraviti dump memorije. Režim hibernacije (sadržaj RAM-a se kopira na tvrdi disk) također neće pomoći, osim u slučajevima korištenja ključnih informacija na otuđenim medijima za vraćanje normalnog funkcionisanja.

    U većini sistema za šifrovanje hard diska, korisnici se mogu zaštititi isključivanjem računara. (Sistem Bitlocker u osnovnom režimu rada TPM modula ostaje ranjiv, pošto će se disk automatski povezati kada se računar uključi). Sadržaj memorije može postojati kratko vrijeme nakon prekida veze, pa se preporučuje da nadgledate svoju radnu stanicu još nekoliko minuta. Uprkos svojoj efikasnosti, ova mjera je izuzetno nezgodna zbog dugog vremena učitavanja radnih stanica.

    Prelazak u stanje mirovanja može se osigurati na sljedeće načine: zahtijevati lozinku ili drugu tajnu za „probuđenje“ radne stanice i šifrirati sadržaj memorije ključem izvedenim iz ove lozinke. Lozinka mora biti jaka, jer napadač može napraviti dump memorije, a zatim pokušati pogoditi lozinku grubom silom. Ako šifriranje cijele memorije nije moguće, morate šifrirati samo ona područja koja sadrže ključne informacije. Neki sistemi mogu biti konfigurisani da uđu u ovaj tip zaštićenog režima mirovanja, iako to obično nije podrazumevana postavka.

    Izbjegavanje predračunavanja

    Naše istraživanje je pokazalo da korištenje predračunanja za ubrzavanje kriptografskih operacija čini ključne informacije ranjivijim. Predkalkulacije rezultiraju suvišnim informacijama o ključnim podacima koji se pojavljuju u memoriji, što omogućava napadaču da povrati ključeve čak i ako postoje greške. Na primjer, kao što je opisano u Odjeljku 5, informacije o iterativnim ključevima AES i DES algoritama su izuzetno suvišne i korisne za napadača.

    Neprovođenje predračunavanja će smanjiti performanse jer će se potencijalno složeni proračuni morati ponoviti. Ali, na primjer, možete keširati unaprijed izračunate vrijednosti za određeni vremenski period i obrisati primljene podatke ako se ne koriste tokom ovog intervala. Ovaj pristup predstavlja kompromis između sigurnosti i performansi sistema.

    Ključno proširenje

    Drugi način za sprječavanje oporavka ključa je promjena ključnih informacija pohranjenih u memoriji na takav način da otežate oporavak ključa zbog raznih grešaka. O ovoj metodi se raspravljalo u teoriji, gdje je prikazana funkcija otporna na otkrivanje čiji ulazi ostaju skriveni čak i ako su otkriveni gotovo svi izlazi, slično kao operacija jednosmjernih funkcija.

    U praksi, zamislite da imamo 256-bitni AES ključ K koji trenutno nije u upotrebi, ali će nam biti potreban kasnije. Ne možemo ga prepisati, ali ga želimo učiniti otpornim na pokušaje oporavka. Jedan od načina da se to postigne je da se dodijeli veliko B-bitno područje podataka, popuni ga slučajnim podacima R, a zatim pohrani u memoriju rezultat sljedeće transformacije K+H(R) (binarno zbrajanje, napomena urednika), gdje je H je hash funkcija, kao što je SHA-256.

    Sada zamislite da je napajanje isključeno, to bi izazvalo promjenu d bitova u ovoj oblasti. Ako je heš funkcija jaka, prilikom pokušaja povratka ključa K, napadač može računati samo na to da će moći pogoditi koji su bitovi područja B promijenjeni od otprilike polovice koja se mogla promijeniti. Ako su d bitova promijenjeni, napadač će morati pretražiti područje veličine (B/2+d)/d da pronađe tačne vrijednosti R, a zatim povrati ključ K. Ako je područje B veliko, npr. pretraga može biti veoma duga, čak i ako je d relativno mali

    U teoriji, mogli bismo pohraniti sve ključeve na ovaj način, izračunavajući svaki ključ samo kada nam je potreban i brisanjem kada nam nije potreban. Tako, koristeći gornju metodu, možemo pohraniti ključeve u memoriju.

    Fizička zaštita

    Neki od naših napada su se oslanjali na fizički pristup memorijskim čipovima. Takvi napadi se mogu spriječiti fizičkom zaštitom memorije. Na primjer, memorijski moduli se nalaze u zatvorenom kućištu računara ili su zapečaćeni epoksidnim ljepilom kako bi se spriječili pokušaji njihovog uklanjanja ili pristupa. Također možete implementirati brisanje memorije kao odgovor na niske temperature ili pokušaje otvaranja kućišta. Ova metoda će zahtijevati ugradnju senzora sa nezavisnim sistemom napajanja. Mnoge od ovih metoda uključuju hardver otporan na neovlašteno korištenje (kao što je IBM 4758 koprocesor) i mogu uvelike povećati cijenu radne stanice. S druge strane, korištenje memorije zalemljene na matičnu ploču bit će mnogo jeftinije.

    Promjena arhitekture

    Možete promijeniti arhitekturu računara. Ovo je nemoguće za već korišćene računare, ali će vam omogućiti da obezbedite nove.

    Prvi pristup je dizajniranje DRAM modula tako da brže brišu sve podatke. Ovo može biti nezgodno jer je cilj brisanja podataka što je brže moguće u sukobu s drugim ciljem sprječavanja nestanka podataka između perioda osvježavanja memorije.

    Drugi pristup je dodavanje hardvera za skladištenje ključnih informacija koji garantovano briše sve informacije iz svog skladišta nakon pokretanja, ponovnog pokretanja i isključivanja. Na ovaj način ćemo imati sigurno mjesto za pohranjivanje više ključeva, iako će ranjivost povezana s njihovim preračunavanjem ostati.

    Drugi stručnjaci su predložili arhitekturu u kojoj bi sadržaj memorije bio trajno šifrovan. Ako, pored ovoga, implementiramo brisanje ključeva tokom ponovnog pokretanja i nestanka struje, onda će ovaj način pružiti dovoljnu zaštitu od napada koje smo opisali.

    Trusted Computing

    Hardver koji odgovara konceptu „pouzdanog računarstva“, na primer, u obliku TPM modula, već se koristi u nekim računarima. Iako korisna u zaštiti od nekih napada, u svom sadašnjem obliku takva oprema ne pomaže u sprječavanju napada koje opisujemo.

    Korišteni TPM moduli ne implementiraju potpunu enkripciju. Umjesto toga, oni promatraju proces pokretanja kako bi odlučili da li je sigurno učitati ključ u RAM ili ne. Ako softver treba da koristi ključ, tada se može implementirati sljedeća tehnologija: ključ, u upotrebljivom obliku, neće biti pohranjen u RAM-u sve dok proces pokretanja ne prođe kako se očekuje. Ali čim se ključ nađe u RAM-u, on odmah postaje meta naših napada. TPM-ovi mogu spriječiti učitavanje ključa u memoriju, ali ne sprječavaju njegovo čitanje iz memorije.

    zaključci

    Suprotno popularnom mišljenju, DRAM moduli pohranjuju podatke relativno dugo kada su onemogućeni. Naši eksperimenti su pokazali da ovaj fenomen omogućava čitavu klasu napada koji mogu dobiti osjetljive podatke, kao što su ključevi za šifriranje, iz RAM-a, uprkos pokušajima OS-a da zaštiti svoj sadržaj. Napadi koje smo opisali mogu se implementirati u praksi, a to dokazuju i naši primjeri napada na popularne sisteme šifriranja.

    Ali druge vrste softvera su također ranjive. Sistemi upravljanja digitalnim pravima (DRM) često koriste simetrične ključeve pohranjene u memoriji, a oni se također mogu dobiti pomoću opisanih metoda. Kao što smo pokazali, SSL-omogućeni web serveri su također ranjivi jer pohranjuju u memoriju privatni ključevi neophodno za kreiranje SSL sesija. Naše tehnike pretraživanja ključnih informacija vjerovatno će biti efikasne za pronalaženje lozinki, brojeva računa i svih drugih osjetljivih informacija pohranjenih u RAM-u.

    Čini se da ne postoji jednostavan način da se poprave pronađene ranjivosti. Promjena softvera najvjerovatnije neće biti efikasna; hardverske promjene će pomoći, ali će troškovi vremena i resursa biti visoki; Pouzdana računarska tehnologija u svom trenutnom obliku također je neefikasna jer ne može zaštititi ključeve koji se nalaze u memoriji.

    Po našem mišljenju, laptopovi koji su često uključeni i rade u režimima koji su ranjivi na ove napade su najpodložniji ovom riziku. Prisustvo takvih rizika pokazuje da šifriranje diska štiti važne podatke u manjoj mjeri nego što se uobičajeno vjeruje.

    Kao rezultat toga, možda ćete morati smatrati DRAM memoriju nepouzdanom komponentom modernog računara i izbjegavati obradu važnih povjerljivih informacija

Ovo je jedini pouzdan način zaštite informacija u uslovima kada je neovlašćenim osobama moguć fizički pristup računaru. Lozinka za pokretanje bilo kojeg operativnog sistema - Windows, Linux ili Mac OS - može vas samo spasiti od djece. Svaki stručnjak može zaobići zaštitu lozinkom za nekoliko minuta - otprilike isto toliko vremena je potrebno za umetanje fleš diska u računar i učitavanje operativnog sistema sa njega.

Ali šifrirane podatke je mnogo teže otvoriti. Ili čak nemoguće bez digitalnog ključa ili šifre. Naravno, postoje različiti algoritmi enkripcije i unutar ovih algoritama postoje različiti parametri- sve to utiče na otpornost na hakovanje. Kada koristite slabe algoritme ili ranjive parametre, možete dobiti pristup šifriranim datotekama i mapama. Ali općenito, možemo pretpostaviti da je šifriranje pouzdana zaštita podataka.

Najčešći način zaštite podataka je šifriranje datoteka. Na disku se kreira šifrovani folder i u njega se upisuju datoteke. Teoretski, ovo je pouzdano ako se koristi AES algoritam, ključevi su dugi. Ali ostaje neočigledna ranjivost podataka s ovom metodom šifriranja. Činjenica je da operativni sistem ostaje nezaštićen. A to daje napadaču mogućnost da instalira poseban program na sistem (keylogger, rootkit) koji će se pokrenuti kada se OS pokrene i prati radnje korisnika, a time će prije ili kasnije napadač dobiti lozinku ili ključ fajl za pristup. šifrovane fascikle i datoteke. Ili će moći da dobije ove podatke sam nakon što korisnik otvori šifrovani fajl.

To znači da istinski jaka zaštita podataka na disku uključuje šifriranje ne pojedinačnih datoteka i mapa, već cijele particije. Štoviše, za pouzdanu zaštitu potrebno je šifriranje cijelog diska. Ništa ne bi trebalo da ostane „na površini“. Ovaj članak će pružiti upute o tome kako stvoriti šifriranu sistemsku particiju i disk u Linux Ubuntu.

Šifrovani sistem datoteka u Linuxu je podržan na nivou kernela operativnog sistema. Odnosno, nema potrebe tražiti bilo kakve fensi kriptografske programe i, štoviše, korištenje šifriranih Linux particija je transparentno - korisnik ne mora znati ništa o enkripciji i ne mora ništa raditi da šifrira svoje datoteke i mape .

Da biste kreirali pouzdan šifrirani sistem za Linux, morate razumjeti koje dijelove ovog sistema treba zaštititi. Ima ih četiri:

  • Područje sistema - označeno kao root ili / .
  • Područje pokretanja - označeno kao /boot root u obliku fascikle.
  • Područje korisničkih podataka - označeno kao /Dom. Može se nalaziti na posebnoj particiji ili na particiji root u obliku fascikle.
  • Područje virtuelne memorije - označeno kao swap. Najčešće se nalazi na zasebnoj particiji, ali se može nalaziti i na particiji root kao fajl.

Sva ova područja moraju biti zaštićena.

U članku će se raspravljati o pojednostavljenoj konfiguraciji - swap I /boot na odvojenim sekcijama, i root I /Dom kombinovani na jednom delu. Ali za složenije slučajeve, tehnologija zaštite će biti ista.

Sa šifriranjem područja root, swap I /Dom nema poteškoća, ali sa zaštitom /boot Postoji problem. Činjenica je da iz ove oblasti pokretač sistema pokreće initrd i Linux kernel. Ako je ovo područje šifrirano, tada bootloader neće moći pokrenuti kernel i, shodno tome, pokretanje OS-a će biti nemoguće. Odnosno, šifriranje /boot nemoguće je, ali je isto tako nemoguće ostaviti otvorenu, jer će u tom slučaju biti moguće zamijeniti kernel drugim koji sadrži zlonamjerni kod koji će presresti lozinku za dešifriranje diska..

Rješenje je postavljanje sekcije /boot na prenosivom mediju, na fleš disku. Fleš disk će biti neka vrsta elektronskog ključa sistema. Bez toga, pokretanje operativnog sistema sa šifrovanog diska biće nemoguće. Odnosno, zaštita particije /boot izvršeno na fizičkom nivou - uklanjanjem sa računara.

Dakle, opća shema zaštite je sljedeća:

  • Sekcije root, swap I /Dom nalazi se na potpuno šifrovanom čvrstom disku.
  • Poglavlje /boot nalazi se na prenosivim medijima.

Šifrovana Ubuntu instalacija će se izvesti pomoću Ubuntu Live-a. Zašto živjeti? Uostalom, alternativna distribucija vam omogućava da učinite isto bez plesanja s tamburom, postoje opcije šifriranja u instalacijskom programu. Lično mi se ne sviđa što je Alternate isključivo instalacijska distribucija, ne može se koristiti ni na koji drugi način - ni za dijagnostiku ni za rad. Osim toga, Alternate instalater radi u konzoli, a to je nekako arhaično u 21. vijeku. Tako uživo.

Ovo uputstvo se odnosi na dva LTS izdanja 10.04 i 12.04, u oba slučaja sve se radi na isti način. Iako je u praksi testiran samo na ova dva izdanja, trebao bi raditi i na drugim.

Nakon preuzimanja na Live, trebat će vam internetska veza, jer Live izdanja nemaju lvm2 paket - morat ćete ga preuzeti i instalirati. Dakle, uputstva su korak po korak.

Instaliranje LVM-a

Uspostavite internet vezu. Zatim pokrenite dvije naredbe:

sudo apt-get update
sudo apt-get install lvm2

Možete unaprijed preuzeti, zapisati na fleš disk ili disk pakete libdevmapper-event, lvm2, watershed i zatim ih instalirati naredbom dpkg. Ali internet će i dalje biti potreban u završnoj fazi.

Priprema hard diska i fleš diska

Morate kreirati jednu praznu particiju na tvrdom disku koja nije particionirana u sistemu datoteka. Format diska može biti MS-DOS ili GPT - nije važno. Ovaj odjeljak će služiti kao kripto kontejner.

Takođe morate kreirati jednu particiju na fleš disku, ali sa sistem podataka Ext3.

Šifriranje sistemskog diska

Šifriranje cijele particije na tvrdom disku vrši se naredbom:

sudo cryptsetup --cipher aes-xts-plain --key-size 512 --verify-passphrase luksFormat /dev/sda1

Važna napomena.

Ova komanda će izdati zahtjev i za potvrdu potrebno je upisati riječ DA, upravo tako, velikim slovima. Ovaj zahtjev je napravljen kako bismo bili sigurni da je vaša tastatura omogućena. engleski jezik! Nakon toga, morat ćete dva puta unijeti pristupnu frazu. Ova fraza treba da bude duga i ne bi trebalo da sadrži znakove koji se često ponavljaju. U idealnom slučaju, ovo bi trebao biti nasumični skup slova i brojeva. Bolje je smisliti ovu frazu unaprijed, čak i prije početka rada na stvaranju sistema.

Kada unosite ključnu frazu, u terminalu se neće prikazati nikakvi znakovi, tako da morate pažljivo kucati. Ali fraza će biti zatražena dva puta, tako da ako napravite grešku, program će to prijaviti.

Nakon uspješnog kreiranja kripto kontejnera, za daljnji rad potrebno je povezati ovaj šifrirani disk:

sudo cryptsetup luksOpen /dev/sda1 kriptiran

Ova komanda će od vas zatražiti pristupnu frazu koja je unesena u prethodnoj naredbi.

Kreiranje šifriranih particija

Sljedeća faza je kreiranje šifriranih sekcija unutar LUKS kripto kontejnera. LVM mehanizam se koristi za kreiranje ovih particija.

sudo pvcreate /dev/mapper/crypted
sudo vgcreate ubuntu /dev/mapper/crypted
sudo lvcreate -L 2600M -n swap ubuntu
ssudo lvcreate -l 100% BESPLATNO -n root ubuntu
sudo mkswap /dev/mapper/ubuntu-swap
sudo mkfs.ext3 /dev/mapper/ubuntu-root

Bilješka.

Veličina swap particije bi trebala biti približno 30% veća od veličine RAM-a. Root particija je najmanje 5-7 gigabajta.

Instaliranje Ubuntua na šifrirani disk

Nakon kreiranja šifriranih particija, potrebno je pokrenuti instalater čija se prečica nalazi na radnoj površini. Instalacija je normalna, važno je samo da isključite fleš disk na koji će biti upisano /boot prije pokretanja instalatera i pravilno navesti particije za instalaciju.

Morate odgovoriti sa "Da" na ovaj zahtjev. Ovo je fleš disk na koji ćete morati da instalirate /boot particiju. Ovaj zahtjev će biti izdat ako zaboravite isključiti fleš disk prije pokretanja instalacionog programa.

I povežite sekcije ovako:

Šifrovane particije za Ubuntu instalacije ovo je /dev/mapper/ubunu-root, /dev/mapper/ubunu-swap. /boot particija na fleš disku (ovo je sdb1).

U prozoru za instalaciju, u koraku 8, morate kliknuti na dugme "Napredno" i uvjeriti se da će bootloader biti instaliran na fleš disk:

U Ubuntu 12.04, i particije i bootloader su u jednom prozoru:

Nakon toga, u prozoru koraka 8, potrebno je da kliknete na dugme „Instaliraj“ i sačekate da se instalacija završi. Kada se instalacija završi, instalater će od vas zatražiti da ponovo pokrenete računar. Ne možete ponovo pokrenuti! Morate ostati u Live Ubuntu. Činjenica je da u instaliranom HDD Ubuntu nema lvm2 paket, što znači da sistem neće moći da se pokrene sa čvrstog diska.

Instaliranje LVM-a na hard disk

Da biste instalirali lvm2 na svježe instalirani Ubuntu na vašem tvrdom disku, trebate pokrenuti sljedeće komande:

sudo mount /dev/mapper/ubuntu-root /mnt
sudo mount /dev/sdb1 /mnt/boot
sudo mount -o bind /dev /mnt/dev
sudo mount -t proc proc /mnt/proc
sudo mount -t sysfs sys /mnt/sys

sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
sudo chroot /mnt /bin/bash
echo "kriptirani UUID=$(ls -la /dev/disk/by-uuid | grep $(basename /dev/sda1) | cut -d " " -f 9) nema luks" >> /etc/crypttab
apt-dobi ažuriranje
apt-get install cryptsetup lvm2
Izlaz

Napomena 1. Umjesto toga u Ubuntu 12.04 rez -d " " -f 9 treba napisati rez -d " " -f 11! Osim toga, preporučujem da nakon naredbe echo ... /etc/crypttab pokrenete naredbu cat /etc/crypttab kako biste provjerili da li je linija ispravno napisana:

Napomena 2. Nakon pretposljednje naredbe pojavit će se poruke o grešci, možete ih zanemariti.

Sada možete ponovo pokrenuti računar i koristiti instalirani šifrovani Ubuntu. Naravno, u BIOS-u morate odrediti pokretanje sa fleš diska na kojem je instalirana /boot particija!

U Ubuntu instaliranom na ovaj način, čak možete koristiti i hibernacijski način, bez straha da će sadržaj memorije koja se isprati na disk postati dostupan napadaču.

Napomena 1

Važno je shvatiti da čak i uz takvu potpunu enkripciju, ranjivosti ostaju.

  • Prvo, ključnu frazu morate držati u tajnosti. Ako to zapišete na ljepljivu ceduljicu i zalijepite na monitor, nije dobro. Ako napadač primi pristupnu frazu, moći će otvoriti vaš šifrirani disk koristeći bilo koju Live Linux distribuciju.
  • Drugo, morate zaštititi USB fleš disk za pokretanje na fizičkom nivou. Ne ostavljajte je bez nadzora. Isključite računar - uklonite fleš disk i stavite ga na sigurno mesto.
  • Treće, ne bi trebalo da ga ostavljate bez nadzora. uključeno kompjuter. Kada je računar uključen, dostupni su i šifrovani disk i USB fleš disk za pokretanje.

Također morate razumjeti da je šifriranje zaštita za vrijeme kada je vaš računar isključen, a vi niste tu. Ali kada radite na računaru, i dalje je moguće da neko uđe u vaš računar. malware sa interneta. Takvi programi mogu „ukrasti“ vaše podatke dok koristite računar i internet.

Stoga je važno poduzeti opšte zaštitne mjere. Ne lutajte nigdje po internetu. Nemojte instalirati neprovjerene programe. Koristite zaštitni zid. A za ozbiljnije sigurnosne zahtjeve, morate koristiti tcb I SELinux.

Napomena 2

Napravite kopiju fleš disk za pokretanje, najlakši način je komandom dd. Zapišite ovu sliku na drugi fleš disk ili laserski disk. Kopija na drugi fleš disk je praktičnija jer, ako je potrebno, možete je odmah koristiti. Ali u svakom slučaju, ovaj primjerak, bez obzira na čemu se nalazi, morat će se pohraniti na sigurno mjesto. A nakon ažuriranja kernela ili pokretača, morat ćete ažurirati kopiju fleš diska.

Ivan Suhov, 2012

Prilikom pisanja ovog članka korištene su informacije iz publikacije u

TrueCrypt više nije podržan, ali dm-crypt i LUKS su odlične opcije otvorenog koda izvorni kod, koji vam omogućava da šifrirate i koristite šifrirane podatke.

Sigurnost podataka postala je jedna od najvećih briga među korisnicima interneta. Vijesti o krađi podataka sa web stranica postale su vrlo česte, ali zaštita vaših podataka nije samo odgovornost web stranica, postoji mnogo toga što mi kao krajnji korisnici možemo učiniti za vlastitu sigurnost. Na primjer, samo neki primjeri - koristite jake lozinke, šifrirajte tvrdi diskovi, koji se nalaze na našim računarima i koriste sigurne veze. Posebno je šifriranje tvrdog diska na dobar način sigurnost - ne samo da će vas zaštititi od bilo kakvih trojanaca koji pokušavaju ukrasti vaše podatke preko mreže, već i od fizičkih napada.

U maju ove godine, razvoj TrueCrypt-a, poznatog alata za šifrovanje diska otvorenog koda, zaustavio je razvoj. Kao što mnogi od vas znaju, bio je to jedan od vrlo pouzdanih alata dizajniranih za šifriranje diska. Tužno je vidjeti da alat ovog kalibra nestaje, ali tolika je veličina svijeta otvorenog koda da postoji nekoliko drugih alata otvorenog koda koji vam mogu pomoći da postignete sigurnost pomoću šifriranja diska koji također imaju puno opcija za konfiguraciju. Razmotrićemo dva od njih - dm-crypt i LUKS - kao alternative TrueCrypt-u za Linux platformu. Počnimo s kratkim pregledom dm-crypt, a zatim LUKS.

Ovo su osnovne informacije o uređaju koji koristi LUKS, naznačujući koja se enkripcija koristi, način šifriranja, algoritam heširanja i drugi kriptografski podaci.

Resursi

Korak 01: S obzirom na Dm-crypt

Naziv aplikacije dm-crypt je skraćenica za uređaj mapper-crypt. Kao što ime sugerira, temelji se na mapiranju uređaja, Linux kernel okviru dizajniranom za mapiranje blok uređaja na virtuelne blok uređaje višeg nivoa. Prilikom mapiranja uređaja možete koristiti nekoliko funkcija kernela, kao što su dm-cache (stvara hibridne volumene), dm-verity (dizajniran za provjeru integriteta bloka, dio Chrome OS-a) i također vrlo popularni Docker. Za kriptografske svrhe, dm-crypt koristi Linux kernel Crypto API framework.

Dakle, da rezimiramo, aplikacija dm-crypt je podsistem za šifrovanje na nivou kernela koji nudi transparentno šifrovanje diska: to znači da su datoteke dostupne odmah nakon montiranja diska - nema vidljivog kašnjenja krajnjem korisniku. Za šifriranje pomoću dm-crypt možete jednostavno navesti jednu od simetričnih šifri, način šifriranja, ključ (bilo koje važeće veličine), način IV generacije, a zatim kreirati novi blok uređaj u /dev. Sada će svako pisanje na ovaj uređaj biti šifrirano, a svako čitanje će biti dešifrirano. Možete montirati sistem datoteka na ovaj uređaj kao i obično, ili možete koristiti dm-crypt uređaj za kreiranje drugih dizajna, kao što su RAID ili LVM volumen. Tabela pretraživanja dm-crypt definirana je na sljedeći način:

Ovdje je početni sektor obično 0, veličina je veličina uređaja u sektorima, a ime cilja je ime koje želite dati šifriranom uređaju. Tabela mapiranja cilja sastoji se od sljedećih odjeljaka:

[<#opt_params> ]

Korak 02: S obzirom na LUKS

Kao što smo već vidjeli u prethodnom koraku, dm-crypt aplikacija može sama šifrirati/dešifrirati podatke. Ali ima nekoliko nedostataka - ako direktno koristite dm-crypt, neće kreirati metapodatke na disku, a to može biti ozbiljan problem ako želite osigurati kompatibilnost između različitih Linux distribucija. Osim toga, dm-crypt aplikacija ne podržava korištenje više ključeva, dok je u stvarnim situacijama vrlo važno koristiti više ključeva.

Iz tih razloga je rođena LUKS (Linux Unified Key Setup) tehnika. LUKS je Linux standard šifriranja tvrdi diskovi a standardizacija omogućava kompatibilnost između različitih distribucija. Podržana je i upotreba više ključeva i pristupnih fraza. Kao dio ove standardizacije, šifriranim podacima se dodaje LUKS zaglavlje i ovo zaglavlje sadrži sve informacije potrebne za konfiguraciju. Kada postoji takvo zaglavlje sa podacima, korisnici se lako mogu prebaciti na bilo koju drugu distribuciju. Projekt dm-crypt trenutno preporučuje korištenje LUKS-a kao preferiranog načina za konfiguriranje šifriranja diska. Pogledajmo kako instalirati uslužni program cryptsetup i kako ga koristiti za kreiranje volumena zasnovanih na LUKS-u.

Korak 03: Instalacija

Funkcionalnost nivoa kernela koja se koristi u dm-cryptu je već prisutna u svim Linux distribucije; potreban nam je samo interfejs za njih. Koristit ćemo uslužni program cryptsetup, pomoću kojeg možete kreirati volumene koristeći dm-crypt, LUKS standard, kao i dobru staru aplikaciju TrueCrypt. Da biste instalirali cryptsetup na Debian/Ubuntu distribucije, možete koristiti sljedeće naredbe:

$ sudo apt-get update $ sudo apt-get install cryptsetup

Prva komanda sinkronizira datoteke indeksa rakete sa sadržajem njihovih spremišta: prima informacije o najnovije verzije svi dostupni paketi. Druga komanda će preuzeti i instalirati cryptsetup paket na vaš računar. Ako koristite RHEL/Fedora/CentOS distribuciju, možete koristiti naredbu yum da instalirate uslužni program cryptsetup.

$ yum install cryptsetup-luks

Korak 04: Kreiranje ciljne datoteke

Sada kada je uslužni program cryptsetup uspješno instaliran, moramo kreirati ciljnu datoteku koja će pohraniti LUKS kontejner. Iako postoji mnogo načina za kreiranje takve datoteke, postoji niz uslova koji se moraju ispuniti prilikom kreiranja:

  • Datoteka se ne bi trebala sastojati od nekoliko dijelova koji se nalaze na različitim mjestima na disku, odnosno kada je kreirate, trebali biste odmah dodijeliti dovoljnu količinu memorije za nju.
  • Cijela datoteka mora biti popunjena nasumičnim podacima tako da niko ne može reći gdje će se nalaziti podaci koji se koriste za šifriranje.

Naredba dd nam može pomoći da kreiramo datoteku koja zadovoljava gore navedene uslove, iako će biti relativno spora. Samo ga koristite sa posebnom datotekom uređaja /dev/random specificiranom kao ulaz i ciljnom datotekom specificiranom kao izlaz. Primjer naredbe izgleda ovako:

$ dd if=/dev/random of=/home/nitish/basefile bs=1M count=128

Kao rezultat, datoteka pod nazivom basefile veličine 128 MB će biti kreirana u /home/nitish direktoriju. Međutim, imajte na umu da ova naredba može potrajati dosta vremena. veliko vrijeme; u sistemu koji je naš stručnjak koristio, to je trajalo sat vremena.

Korak 05: Kreirajte dm-crypt LUKS

Nakon što kreirate ciljnu datoteku, trebate kreirati LUKS particiju u toj datoteci. Ovaj odjeljak služi kao glavni sloj na kojem se gradi sva enkripcija podataka. Osim toga, zaglavlje ovog odjeljka (LUKS zaglavlje) sadrži sve informacije potrebne za kompatibilnost s drugim uređajima. Za kreiranje LUKS particije koristite naredbu cryptsetup:

$ cryptsetup -y luksFormat /home/nitish/basefile

Kada se slažete da će podaci unutar osnovnog fajla biti trajno izbrisani, unesite šifru, a zatim je potvrdite, LUKS particija će biti kreirana. Ovo možete provjeriti sljedećom naredbom datoteke:

$filebasefile

Imajte na umu da će se fraza koju ovdje unesete koristiti za dešifriranje podataka. Vrlo je važno ovo zapamtiti i čuvati na sigurnom mjestu, jer ako ga zaboravite, gotovo sigurno ćete izgubiti sve podatke na šifriranoj particiji.

Korak 06: Kreirajte i montirajte sistem datoteka

LUKS kontejner koji smo kreirali u prethodnom koraku sada je dostupan kao datoteka. U našem primjeru, ovo je /home/nitish/basefile. Uslužni program cryptsetup vam omogućava da otvorite LUKS kontejner kao nezavisni uređaj. Da biste to učinili, prvo mapirajte datoteku kontejnera na ime uređaja, a zatim montirajte uređaj. Komanda za prikaz izgleda ovako:

Nakon što uspješno unesete pristupnu frazu koju ste kreirali u prethodnom koraku, LUKS kontejner će biti mapiran na volume1. Ono što se zapravo dešava je da se datoteka otvara kao lokalni uređaj za povratnu petlju, tako da ostatak sistema sada može tretirati datoteku kao da je pravi uređaj.

Korak 07: Sistem datoteka - nastavak

LUKS kontejnerski fajl je sada dostupan na sistemu kao običan uređaj. Prije nego što ga možemo koristiti za normalne operacije, moramo ga formatirati i kreirati sistem datoteka na njemu. Možete koristiti bilo koji sistem datoteka koji je podržan na vašem sistemu. U mom primjeru koristili smo ext4 jer je to najnoviji sistem datoteka za Linux sisteme.

$ mkfs.ext4 -j /dev/mapper/volume1

Nakon što je uređaj uspješno formatiran, sljedeći korak je njegovo montiranje. Prvo treba da kreirate tačku montiranja, po mogućnosti na /mnt (na osnovu zdravog razuma).

$mkdir/mnt/files

Sada montirajmo:

Za unakrsnu provjeru koristite naredbu df –h - vidjet ćete uređaj "/dev/mapper/volume1" na kraju liste montiranih uređaja. Vidi se da LUKS header već zauzima nešto prostora u uređaju.

Zahvaljujući ovom koraku, sada možete koristiti LUKS uređaj sa ext4 sistemom datoteka. Samo koristite ovaj uređaj za pohranjivanje datoteka - sve što upišete na ovaj uređaj će biti šifrirano, a sve što pročitate s njega će biti dešifrirano i prikazano vam.

Korak 08: Korišćenje šifrovanog diska

Pratili smo nekoliko koraka da bismo postigli ovaj rezultat, a ako vam nije baš jasno kako sve to funkcionira, najvjerojatnije ćete se zbuniti šta trebate učiniti samo jednom (potrebno za instalaciju), a šta treba raditi redovno kada korištenjem enkripcije. Razmotrimo sljedeći scenario: Uspješno ste završili sve gore navedene korake, a zatim ugasili računar. Sljedećeg dana, kada pokrenete računar, ne možete pronaći montirani uređaj - gdje je nestao? Da biste sve ovo shvatili, morate imati na umu da nakon pokretanja sistema morate montirati LUKS kontejner, a prije zaustavljanja računara demontirati ga.

Da biste pristupili vašoj LUKS datoteci, uradite sljedeće svaki put kada uključite računar, a zatim sigurno zatvorite datoteku prije nego što isključite računar:

Otvorite LUKS datoteku (tj. /home/nitish/basefile) i unesite lozinku. Naredba izgleda ovako:

$ cryptsetup luksOpen /home/nitish/basefile volume1

Kada se datoteka otvori, montirajte je (ako se ne montira automatski):

$ mount /dev/mapper/volume1 /mnt/files

Sada možete koristiti montirani uređaj kao običan disk i čitati sa njega ili pisati podatke na njega.

Kada završite, isključite uređaj na sljedeći način:

$ umount /mnt/files

Nakon uspješnog demontaže, zatvorite LUKS datoteku:

$cryptsetup luksClose volume1

Korak 09: Backup

Većina gubitaka podataka pohranjenih u LUKS kontejneru nastaje zbog oštećenja LUKS zaglavlja ili utora za ključeve. Pored toga što čak i zbog slučajnog prepisivanja zaglavlja u memoriju, LUKS zaglavlja mogu biti oštećeni, u realnim uslovima moguć je i potpuni kvar hard diska. Najbolji način da se zaštitite od ovakvih problema backup. Pogledajmo koje su rezervne opcije dostupne.

Stvoriti rezervna kopija LUKS datoteku zaglavlja, navedite parametar luksHeaderBackup u naredbi:

$ sudo cryptsetup luksHeaderBackup /home/nitish/basefile --header-backup-file /home/nitish/backupfile

Ili, ako želite vratiti datoteku iz sigurnosne kopije, tada navedite parametar luksHeaderRestore u naredbi:

$ sudo cryptsetup luksHeaderRestore /home/nitish/basefile --header-backup-file /home/nitish/backupfile

Da biste provjerili LUKS datoteku zaglavlja i osigurali da datoteka s kojom imate posla odgovara stvarnom LUKS uređaju, možete koristiti isLuks parametar.

$ sudo cryptsetup -v isLuks /home/nitish/basefile

Već smo vidjeli kako napraviti sigurnosnu kopiju LUKS datoteka zaglavlja, ali sigurnosna kopija LUKS zaglavlja zapravo neće zaštititi od potpunog kvara diska, tako da ćete morati napraviti sigurnosnu kopiju cijele particije koristeći sljedeću cat komandu:

$ cat /home/nitish/basefile > basefile.img

Korak 10: Razne postavke

Postoji nekoliko drugih postavki koje mogu biti korisne kada koristite dm-crypt LUKS enkripciju. Pogledajmo ih.

Za dump LUKS zaglavlja, komanda cryptsetup ima opciju luksDump. Omogućit će vam da napravite snimak LUKS zaglavlja na uređaju koji koristite. Primjer naredbe izgleda ovako:

$ cryptsetup luksDump /home/nitish/basefile

Na početku ovog članka spomenuli smo da LUKS podržava više ključeva. Pogledajmo ovo sada u akciji dodavanjem novog utora za ključ ( Napomena prevodioca: utor za ključ - prostor za ključeve):

$ cryptsetup luksAddKey --Key-slot 1 /home/nitish/basefile

Ova komanda dodaje ključ u otvor ključa broj 1, ali tek nakon što unesete trenutnu lozinku (ključ u utoru ključa 0). Postoji ukupno osam slotova za ključeve, a podatke možete dešifrirati bilo kojim ključem. Ako izbacite zaglavlje nakon dodavanja drugog ključa, vidjet ćete da je drugi slot ključa zauzet.

Utore za ključeve možete ukloniti na sljedeći način:

$ cryptsetup luksRemoveKey /home/nitish/basefile

Ovo će ukloniti utor za ključ sa najvećim brojem utora. Pazite da ne izbrišete sve slotove, inače će vaši podaci biti zauvijek izgubljeni.


Ne razumijem Canonical. Čini se da smo 23. avgusta prošli zamrzavanje novih FeatureFreeze funkcija, a 30. avgusta smo prošli zamrzavanje izgled UserInterfaceFreeze. Šta zapravo vidimo? U instalateru Ubiquity sada ima mogućnost šifriranja cijelog sistema i u Unity Greeter dodaje mrežni indikator i funkciju mrežne prijave.

Šifriranje cijelog Ubuntua tokom instalacije.

Kao što možete vidjeti, Canonical je implementirao šifriranje diska u grafički instalater Ubiquity kako bi ojačao sigurnost Ubuntu 12.10 Quantal Quetzal. Takva funkcionalnost je ranije bila dostupna samo u Alternate CD-u, ali kao što znate, Canonical planira napustiti alternativne diskove.

Ako odaberete "Šifriranje nova instalacija Ubuntu za sigurnost“ („Šifrirajte novu Ubuntu instalaciju radi sigurnosti“), tada ćete u sljedećem koraku morati unijeti ključeve za šifriranje.

Postoji i opcija za prepisivanje praznog prostora na disku radi dodatne sigurnosti, ali to će produžiti proces instalacije.

Zapamtite da sve datoteke izvan Ubuntu instalacije nisu šifrirane! U budućnosti, novi diskovi i nove particije neće biti šifrirani prema zadanim postavkama i morate to zapamtiti.

I nemojte brkati šifriranje svih Ubuntu particija sa šifriranjem Home foldera!

Unity Greeter mreža i ekran dobrodošlice.

Došlo je do nekih manjih kozmetičkih promjena s Unity Greeterom. Prozor dobrodošlice postao je širi i bliži centru. Zaobljeni uglovi učinili su cjelokupni izgled vizualno mekšim. Font koji prikazuje korisničko ime je malo smanjen. Održavajući opšti stil, polje za unos lozinke je istaknuto suptilnom narandžastom bojom. Promijenjena je lista dostupnih sesija, umjesto “jednostavne liste” sada postoje “dugmad”.

Uz gore navedene promjene, programeri su dodali mrežni indikator.

Stoga, kada se prijavite, možete jednostavno onemogućiti mrežne veze ili pogledajte trenutni status mreže kako biste bili sigurni da je prijava na mrežu moguća.

Sudeći po službenim logovima promjena, spremamo se da u bliskoj budućnosti uvedemo mogućnosti mrežnog prijavljivanja na Unity Greeter.

Čarobna lampa je sada podrazumevano uključena.

Efekat oporavka prozora poznat kao Genie ili Magic Lamp je ranije bio dostupan u Compiz-u, ali u Ubuntu 12.10 će biti omogućen po defaultu.


Autor: Nitish Tiwari
Datum objave: 04. februar 2015
Prijevod: N. Romodanov
Datum prevoda: mart 2015

TrueCrypt više nije podržan, ali dm-crypt i LUKS su odlične opcije otvorenog koda za šifriranje i korištenje šifriranih podataka.

Sigurnost podataka postala je jedna od najvećih briga među korisnicima interneta. Vijesti o krađi podataka sa web stranica postale su vrlo česte, ali zaštita vaših podataka nije samo odgovornost web stranica, postoji mnogo toga što mi kao krajnji korisnici možemo učiniti za vlastitu sigurnost. Na primjer, samo neki primjeri koriste jake lozinke, šifriranje tvrdih diskova koji se nalaze na našim računalima i korištenje sigurnih veza. Konkretno, šifriranje vašeg tvrdog diska je dobar način da se osigura sigurnost – neće vas samo zaštititi od bilo kakvih trojanaca koji pokušavaju ukrasti vaše podatke preko mreže, već i od fizičkih napada.

U maju ove godine, razvoj TrueCrypt-a, poznatog alata za šifrovanje diska otvorenog koda, zaustavio je razvoj. Kao što mnogi od vas znaju, bio je to jedan od vrlo pouzdanih alata dizajniranih za šifriranje diska. Tužno je vidjeti da alat ovog kalibra nestaje, ali tolika je veličina svijeta otvorenog koda da postoji nekoliko drugih alata otvorenog koda koji vam mogu pomoći da postignete sigurnost pomoću šifriranja diska koji također imaju puno opcija za konfiguraciju. Razmotrićemo dva od njih - dm-crypt i LUKS - kao alternative TrueCrypt-u za Linux platformu. Počnimo s kratkim pregledom dm-crypt, a zatim LUKS.

Ovo su osnovne informacije o uređaju koji koristi LUKS, naznačujući koja se enkripcija koristi, način šifriranja, algoritam heširanja i drugi kriptografski podaci.

Resursi

Korak 01: S obzirom na Dm-crypt

Naziv aplikacije dm-crypt je skraćenica za uređaj mapper-crypt. Kao što ime sugerira, temelji se na mapiranju uređaja, Linux kernel okviru dizajniranom za mapiranje blok uređaja na virtuelne blok uređaje višeg nivoa. Prilikom mapiranja uređaja možete koristiti nekoliko funkcija kernela, kao što su dm-cache (stvara hibridne volumene), dm-verity (dizajniran za provjeru integriteta bloka, dio Chrome OS-a) i također vrlo popularni Docker. Za kriptografske svrhe, dm-crypt koristi Linux kernel Crypto API framework.

Dakle, da rezimiramo, aplikacija dm-crypt je podsistem za šifrovanje na nivou kernela koji nudi transparentno šifrovanje diska: to znači da su datoteke dostupne odmah nakon montiranja diska - nema vidljivog kašnjenja krajnjem korisniku. Za šifriranje pomoću dm-crypt možete jednostavno navesti jednu od simetričnih šifri, način šifriranja, ključ (bilo koje važeće veličine), način IV generacije, a zatim kreirati novi blok uređaj u /dev. Sada će svako pisanje na ovaj uređaj biti šifrirano, a svako čitanje će biti dešifrirano. Možete montirati sistem datoteka na ovaj uređaj kao i obično, ili možete koristiti dm-crypt uređaj za kreiranje drugih dizajna, kao što su RAID ili LVM volumen. Tabela pretraživanja dm-crypt definirana je na sljedeći način:

Ovdje je početni sektor obično 0, veličina je veličina uređaja u sektorima, a ime cilja je ime koje želite dati šifriranom uređaju. Tabela mapiranja cilja sastoji se od sljedećih odjeljaka:

[<#opt_params> ]

Korak 02: S obzirom na LUKS

Kao što smo već vidjeli u prethodnom koraku, dm-crypt aplikacija može sama šifrirati/dešifrirati podatke. Ali ima nekoliko nedostataka - ako direktno koristite dm-crypt, neće kreirati metapodatke na disku, a to može biti ozbiljan problem ako želite osigurati kompatibilnost između različitih Linux distribucija. Osim toga, dm-crypt aplikacija ne podržava korištenje više ključeva, dok je u stvarnim situacijama vrlo važno koristiti više ključeva.

Iz tih razloga je rođena LUKS (Linux Unified Key Setup) tehnika. LUKS je Linux standard za šifriranje tvrdog diska i standardizacija omogućava kompatibilnost između različitih distribucija. Podržana je i upotreba više ključeva i pristupnih fraza. Kao dio ove standardizacije, šifriranim podacima se dodaje LUKS zaglavlje i ovo zaglavlje sadrži sve informacije potrebne za konfiguraciju. Kada postoji takvo zaglavlje sa podacima, korisnici se lako mogu prebaciti na bilo koju drugu distribuciju. Projekt dm-crypt trenutno preporučuje korištenje LUKS-a kao preferiranog načina za konfiguriranje šifriranja diska. Pogledajmo kako instalirati uslužni program cryptsetup i kako ga koristiti za kreiranje volumena zasnovanih na LUKS-u.

Korak 03: Instalacija

Funkcionalnost na nivou kernela koja se koristi u dm-cryptu već je prisutna u svim Linux distribucijama; potreban nam je samo interfejs za njih. Koristit ćemo uslužni program cryptsetup, pomoću kojeg možete kreirati volumene koristeći dm-crypt, LUKS standard, kao i dobru staru aplikaciju TrueCrypt. Da biste instalirali cryptsetup na Debian/Ubuntu distribucije, možete koristiti sljedeće naredbe:

$ sudo apt-get update $ sudo apt-get install cryptsetup

Prva komanda sinhronizuje datoteke indeksa rakete sa sadržajem njihovih spremišta: dobija informacije o najnovijim verzijama svih dostupnih paketa. Druga komanda će preuzeti i instalirati cryptsetup paket na vaš računar. Ako koristite RHEL/Fedora/CentOS distribuciju, možete koristiti naredbu yum da instalirate uslužni program cryptsetup.

$ yum install cryptsetup-luks

Korak 04: Kreiranje ciljne datoteke

Sada kada je uslužni program cryptsetup uspješno instaliran, moramo kreirati ciljnu datoteku koja će pohraniti LUKS kontejner. Iako postoji mnogo načina za kreiranje takve datoteke, postoji niz uslova koji se moraju ispuniti prilikom kreiranja:

  • Datoteka se ne bi trebala sastojati od nekoliko dijelova koji se nalaze na različitim mjestima na disku, odnosno kada je kreirate, trebali biste odmah dodijeliti dovoljnu količinu memorije za nju.
  • Cijela datoteka mora biti popunjena nasumičnim podacima tako da niko ne može reći gdje će se nalaziti podaci koji se koriste za šifriranje.

Naredba dd nam može pomoći da kreiramo datoteku koja zadovoljava gore navedene uslove, iako će biti relativno spora. Samo ga koristite sa posebnom datotekom uređaja /dev/random specificiranom kao ulaz i ciljnom datotekom specificiranom kao izlaz. Primjer naredbe izgleda ovako:

$ dd if=/dev/random of=/home/nitish/basefile bs=1M count=128

Kao rezultat, datoteka pod nazivom basefile veličine 128 MB će biti kreirana u /home/nitish direktoriju. Međutim, imajte na umu da ova naredba može potrajati dosta vremena da se završi; u sistemu koji je naš stručnjak koristio, to je trajalo sat vremena.

Korak 05: Kreirajte dm-crypt LUKS

Nakon što kreirate ciljnu datoteku, trebate kreirati LUKS particiju u toj datoteci. Ovaj odjeljak služi kao glavni sloj na kojem se gradi sva enkripcija podataka. Osim toga, zaglavlje ovog odjeljka (LUKS zaglavlje) sadrži sve informacije potrebne za kompatibilnost s drugim uređajima. Za kreiranje LUKS particije koristite naredbu cryptsetup:

$ cryptsetup -y luksFormat /home/nitish/basefile

Kada se slažete da će podaci unutar osnovnog fajla biti trajno izbrisani, unesite šifru, a zatim je potvrdite, LUKS particija će biti kreirana. Ovo možete provjeriti sljedećom naredbom datoteke:

$filebasefile

Imajte na umu da će se fraza koju ovdje unesete koristiti za dešifriranje podataka. Vrlo je važno ovo zapamtiti i čuvati na sigurnom mjestu, jer ako ga zaboravite, gotovo sigurno ćete izgubiti sve podatke na šifriranoj particiji.

Korak 06: Kreirajte i montirajte sistem datoteka

LUKS kontejner koji smo kreirali u prethodnom koraku sada je dostupan kao datoteka. U našem primjeru, ovo je /home/nitish/basefile. Uslužni program cryptsetup vam omogućava da otvorite LUKS kontejner kao nezavisni uređaj. Da biste to učinili, prvo mapirajte datoteku kontejnera na ime uređaja, a zatim montirajte uređaj. Komanda za prikaz izgleda ovako:

Nakon što uspješno unesete pristupnu frazu koju ste kreirali u prethodnom koraku, LUKS kontejner će biti mapiran na volume1. Ono što se zapravo dešava je da se datoteka otvara kao lokalni uređaj za povratnu petlju, tako da ostatak sistema sada može tretirati datoteku kao da je pravi uređaj.

Korak 07: Sistem datoteka - nastavak

LUKS kontejnerski fajl je sada dostupan na sistemu kao običan uređaj. Prije nego što ga možemo koristiti za normalne operacije, moramo ga formatirati i kreirati sistem datoteka na njemu. Možete koristiti bilo koji sistem datoteka koji je podržan na vašem sistemu. U mom primjeru koristili smo ext4 jer je to najnoviji sistem datoteka za Linux sisteme.

$ mkfs.ext4 -j /dev/mapper/volume1

Nakon što je uređaj uspješno formatiran, sljedeći korak je njegovo montiranje. Prvo treba da kreirate tačku montiranja, po mogućnosti na /mnt (na osnovu zdravog razuma).

$mkdir/mnt/files

Sada montirajmo:

Za unakrsnu provjeru koristite naredbu df –h - vidjet ćete uređaj "/dev/mapper/volume1" na kraju liste montiranih uređaja. Vidi se da LUKS header već zauzima nešto prostora u uređaju.

Zahvaljujući ovom koraku, sada možete koristiti LUKS uređaj sa ext4 sistemom datoteka. Samo koristite ovaj uređaj za pohranjivanje datoteka - sve što upišete na ovaj uređaj će biti šifrirano, a sve što pročitate s njega će biti dešifrirano i prikazano vam.

Korak 08: Korišćenje šifrovanog diska

Pratili smo nekoliko koraka da bismo postigli ovaj rezultat, a ako vam nije baš jasno kako sve to funkcionira, najvjerojatnije ćete se zbuniti šta trebate učiniti samo jednom (potrebno za instalaciju), a šta treba raditi redovno kada korištenjem enkripcije. Razmotrimo sljedeći scenario: Uspješno ste završili sve gore navedene korake, a zatim ugasili računar. Sljedećeg dana, kada pokrenete računar, ne možete pronaći montirani uređaj - gdje je nestao? Da biste sve ovo shvatili, morate imati na umu da nakon pokretanja sistema morate montirati LUKS kontejner, a prije zaustavljanja računara demontirati ga.

Da biste pristupili vašoj LUKS datoteci, uradite sljedeće svaki put kada uključite računar, a zatim sigurno zatvorite datoteku prije nego što isključite računar:

Otvorite LUKS datoteku (tj. /home/nitish/basefile) i unesite lozinku. Naredba izgleda ovako:

$ cryptsetup luksOpen /home/nitish/basefile volume1

Kada se datoteka otvori, montirajte je (ako se ne montira automatski):

$ mount /dev/mapper/volume1 /mnt/files

Sada možete koristiti montirani uređaj kao običan disk i čitati sa njega ili pisati podatke na njega.

Kada završite, isključite uređaj na sljedeći način:

$ umount /mnt/files

Nakon uspješnog demontaže, zatvorite LUKS datoteku:

$cryptsetup luksClose volume1

Korak 09: Backup

Većina gubitaka podataka pohranjenih u LUKS kontejneru nastaje zbog oštećenja LUKS zaglavlja ili utora za ključeve. Pored toga što čak i zbog slučajnog prepisivanja zaglavlja u memoriju, LUKS zaglavlja mogu biti oštećeni, u realnim uslovima moguć je i potpuni kvar hard diska. Najbolji način da se zaštitite od takvih problema je da imate rezervne kopije. Pogledajmo koje su rezervne opcije dostupne.

Da biste kreirali sigurnosnu kopiju LUKS datoteke zaglavlja, navedite parametar luksHeaderBackup u naredbi:

$ sudo cryptsetup luksHeaderBackup /home/nitish/basefile --header-backup-file /home/nitish/backupfile

Ili, ako želite vratiti datoteku iz sigurnosne kopije, tada navedite parametar luksHeaderRestore u naredbi:

$ sudo cryptsetup luksHeaderRestore /home/nitish/basefile --header-backup-file /home/nitish/backupfile

Da biste provjerili LUKS datoteku zaglavlja i osigurali da datoteka s kojom imate posla odgovara stvarnom LUKS uređaju, možete koristiti isLuks parametar.

$ sudo cryptsetup -v isLuks /home/nitish/basefile

Već smo vidjeli kako napraviti sigurnosnu kopiju LUKS datoteka zaglavlja, ali sigurnosna kopija LUKS zaglavlja zapravo neće zaštititi od potpunog kvara diska, tako da ćete morati napraviti sigurnosnu kopiju cijele particije koristeći sljedeću cat komandu:

$ cat /home/nitish/basefile > basefile.img

Korak 10: Razne postavke

Postoji nekoliko drugih postavki koje mogu biti korisne kada koristite dm-crypt LUKS enkripciju. Pogledajmo ih.

Za dump LUKS zaglavlja, komanda cryptsetup ima opciju luksDump. Omogućit će vam da napravite snimak LUKS zaglavlja na uređaju koji koristite. Primjer naredbe izgleda ovako:

$ cryptsetup luksDump /home/nitish/basefile

Na početku ovog članka spomenuli smo da LUKS podržava više ključeva. Pogledajmo ovo sada u akciji dodavanjem novog utora za ključ ( Napomena prevodioca: utor za ključ - prostor za ključeve):

$ cryptsetup luksAddKey --Key-slot 1 /home/nitish/basefile

Ova komanda dodaje ključ u otvor ključa broj 1, ali tek nakon što unesete trenutnu lozinku (ključ u utoru ključa 0). Postoji ukupno osam slotova za ključeve, a podatke možete dešifrirati bilo kojim ključem. Ako izbacite zaglavlje nakon dodavanja drugog ključa, vidjet ćete da je drugi slot ključa zauzet.

Utore za ključeve možete ukloniti na sljedeći način:

$ cryptsetup luksRemoveKey /home/nitish/basefile

Ovo će ukloniti utor za ključ sa najvećim brojem utora. Pazite da ne izbrišete sve slotove, inače će vaši podaci biti zauvijek izgubljeni.

mob_info