Objavljeno:

Obnavljanje šifriranih podatkov v sistemu Ubuntu

Operacijski sistem Ubuntu Linux omogoča dva načina šifriranja podatkov na disku.

Prvi način je šifriranje celotnega sistema oz. celotnega diska s pomočjo aplikacije Cryptsetup. Gre za tim. LUKS (Linux Unified Key Setup) šifrirane diske. V tem primeru so šifrirani vsi podatki na disku, razen majhnega zagonskega razdelka. Ko računalnik prižgemo, je potrebno najprej vpisati šifrirno geslo, šele nato se operacijski sistem sploh naloži. V tem primeru so šifrirani vsi podatki na disku (razen podatkov na zagonskem (/boot) razdelku, torej tudi vse nameščene aplikacije in vsi uporabniški podatki. Šifriran je tudi tim. izmenjalni razdelek (ang. swap partition). Ko računalnik ugasnemo ali odklopimo trdi disk, so vsi ti podatki brez gesla nedostopni.

Drugi način pa je šifriranje uporabniških podatkov vsakega uporabnika posebej z njegovim prijavnim geslom. Ubuntu v ta namen uporablja vgrajen kriptografski datotečni sistem eCryptfs, ki omogoča vzpostavitev šifriranih domačih imenikov uporabnikov.

Sistem deluje tako, da se najprej ustvari naključen 128-bitni ključ, ki ga potem “zavije” z uporabnikovim geslom za prijavo. Podatki so šifrirani s tem naključnim ključem, uporabnikovo geslo pa ob prijavi uporabnika v sistem ta šifrirni ključ samodejno odklene. Zato uporabniku za dostop do šifriranih datotek ni potrebno vnašati nobenega gesla – ko se prijavi v sistem, so njegovi sicer šifrirani podatki zanj normalno dostopni. Brez gesla pa niso dostopni niti upravitelju sistema.

Seveda lahko v Linuxu uporabljamo obe rešitvi hkrati. Na ta način računalnik zaščitimo pred zunanjimi napadalci ter tudi pred neupravičenimi vpogledi v uporabniške podatke s strani obstoječih (legitimnih) uporabnikov sistema.

Problem pa nastopi, ko zaradi kakršnegakoli razloga sistema ni več mogoče zagnati, želimo pa si rešiti podatke na šifriranem disku. Kako to storimo bo tema tokratnega prispevka.

Prvi korak – zagon živega sistema

Za začetek pomemben podatek – za obnavljanje podatkov seveda potrebujemo gesla. V prispevku bo prikazano samo kako šifrirane nosilce podatkov ustrezno priklopimo.

Ker bomo sistem zagnali iz živega USB nosilca, najprej in spletne strani Ubuntu prenesemo ISO sliko Ubuntu namestitve in jo s programom _Ustvarjalnik zagonskih disko_v zapišemo na USB ključek. Računalnik nato zaženemo iz USB ključka.

Nato priključimo zunanji disk na katerega bomo naredili varnostno kopijo podatkov (smiselno je, da je le-ta tudi šifriran).

Priklop zunanjega šifriranega nosilca podatkov.

Priklop zunanjega šifriranega nosilca podatkov.

Če je disk formatiran za drugega uporabnika (in ga torej v živem sistemu kot navaden “ubuntu” uporabnik ne moremo videti, aplikacijo za pregledovanje datotek Nautilus zaženemo z administratorskimi privilegiji. To storimo z ukazom:

sudo nautilus

Drugi korak – priklop LUKS šifriranega diska

V drugem koraku nato priključimo LUKS šifriran disk na katerem se nahajajo podatki, do katerih želimo dostopati.

Vnos gesla za odklep LUKS šifriranega diska.

Vnos gesla za odklep LUKS šifriranega diska.

Po vnosu pravilnega gesla se odpre pregledovalnik Nautilus v katerem lahko pregledujemo vsebino odklenjenega diska.

Odklenjen LUKS disk.

Odklenjen LUKS disk.

S tem so podatki iz odklenjenega diska postali dostopni. Uporabniški podatki se nahajajo v (pod)mapi home, vsak uporabnik pa ima v tej mapi svojo podmapo. Če želimo skopirati tudi nastavitvene oz. skrite datoteke in mape (njihova imena se začnejo s piko, npr. .Skype, .mozilla, itd.), v Nautilusu s pritiskom na Ctrl-H vključimo prikaz skritih map in datotek. V primeru težav s pravicami Nautilus zaženemo z administratorskimi pravicami.

Tretji korak – priklop eCryptFS šifrirani uporabniških map

V naslednjem koraku pa moramo odkleniti še podatke uporabnikov, ki uporabljajo šifriranje domačih imenikov z eCryptFS. Domači imeniki teh uporabnikov so namreč prazni (dokler jih ne odklenemo) oziroma vsebujejo samo naslednje datoteke:

Access-your-Private-Data.desktop
.ecryptfs
README.txt
.cache
.Private

Same šifrirane datoteke se nahajajo v imeniku /home/.ecryptfs (vsak uporabnik ima nato svoj podimenik).

Te datoteke odklenemo z ukazom:

sudo ecryptfs-recover-private
eCryptFS odklepanje.

eCryptFS odklepanje.

Ukaz poišče vse eCryptFS zaklenjene podatke (to traja kar precej časa)., nato pa nas vpraša za geslo (če ga ne vemo, lahko vpišemo žeton, ki se ustvari ob ustvarjanju uporabnika), nato pa se podatki odklenejo.

eCryptFS odklepanje je bilo uspešno.

eCryptFS odklepanje je bilo uspešno.

Če je odklepanje uspešno, aplikacija izpiše začasno lokacijo odklenjenih datotek (v  našem primeru /tmp/ecryptfs.5oGJHShL). Datoteke nato lahko pogledamo z Nautilusom.

 

Kaj pa, če gesel nimamo? V tem primeru pa – vso srečo s kriptoanalizo. Napad z grobo silo zna trajati nekaj tisočletij…

Kategorije: Digitalna forenzika, Informacijska tehnologija, Odprta koda
Ključne besede: eCryptFS, LUKS, šifriranje