Uvjerljivo nijekanje u aplikacijama: Što je to i zašto je važno

Uvjerljivo nijekanje u aplikacijama: Što je to i zašto je važno

Uvjerljivo nijekanje znači da se postojanje skrivenih podataka ne može dokazati.


Uvjerljivo poricanje u enkripciji svojstvo je pohrane koje korisniku omogućuje otkrivanje jednog skupa podataka bez ostavljanja strukturnog artefakta koji dokazuje postojanje drugog skupa podataka. Tvrdnja mora navesti svoj model prijetnje: statična slika ispravno dopunjene šifrirane pohrane razlikuje se od živog, kompromitiranog uređaja, metapodataka usluge u oblaku ili kopija koje se čuvaju negdje drugdje. Ovo je više od značajke skrivanja. Ovisi o šifriranju, rasporedu, dopuni i operativnom dizajnu koji rade zajedno.

Ovaj vodič objašnjava kako uvjerljivo nijekanje u aplikacijama funkcionira, koja je razlika između pravog kriptografskog nijekanja i kozmetičkih mamac načina rada, stvarni scenariji u kojima je to važno i kako procjenjivati tvrdnje o nijekanju.

Što uvjerljivo nijekanje u šifriranju znači

U svakodnevnom jeziku, uvjerljivo poricanje znači da nešto možete vjerodostojno poreći. U kriptografiji pohrane korisni cilj je uži: ispitivač kriptirane pohrane ne bi trebao moći razlikovati skriveni sadržaj od neiskorištenog dopunjenog prostora unutar navedenog modela prijetnje. Nijedna aplikacija ne može proširiti to obećanje na već otvoreni trezor, snimljeni unos, vanjske kopije ili svaki oblik ugrožavanja uređaja.

Ovaj koncept nastao je u području šifriranja diska. TrueCrypt (i njegov nasljednik VeraCrypt) uveo je skriveni svezak: šifrirani svezak unutar drugog šifriranog sveska. Jedna lozinka otkriva vanjski svezak s nevinim sadržajem. Druga lozinka otkriva unutarnji skriveni svezak s osjetljivim datotekama. Forenzički stručnjak ne može utvrditi postoji li skriveni svezak jer je neiskorišteni prostor u vanjskom svesku ispunjen nasumičnim podacima nerazlučivim od šifriranih podataka.

Za aplikacije uvjerljivo nijekanje znači da različite vjerodajnice (lozinke, PIN-ovi, uzorci) otvaraju različite skupove podataka i ne postoje metapodaci, registar, konfiguracijska zastavica niti strukturalni artefakt koji bi otkrio postojanje dodatnih skupova podataka.

Pravo nijekanje vs. kozmetički mamac način rada

Ovo je ključna razlika koju većina aplikacija pogrešno rješava.

Kozmetički mamac način rada (nije pravo nijekanje)

Mnoge trezor aplikacije nude funkciju „mamca" ili „lažnog PIN-a". Postavite sekundarni PIN koji otvara zasebni prostor s drugim fotografijama. Problem: te aplikacije tipično pohranjuju booleovu zastavicu, zapis baze podataka ili konfiguracijsku datoteku koja kaže da mamac način rada postoji i konfiguriran je.

Forenzički stručnjak koji razumije aplikaciju pronaći će tu zastavicu. Pronalazak konfiguriranog mamac načina rada dokazuje da skriveni podaci postoje. Nijekanje je kozmetičko, funkcionira protiv površnog znatiželjnika, ali ne uspijeva pod forenzičkim ispitivanjem.

Znakovi kozmetičnog nijekanja:

  • Aplikacija ima preklopku „mamac način rada" u postavkama
  • Konfiguracijska datoteka pohranjuje je li mamac način rada uključen
  • Tablica baze podataka sadrži popis ID-ova trezora s indikatorima vrste (primarna/mamac)
  • Struktura pohrane aplikacije se mijenja kada je mamac način rada uključen
  • Deinstaliranje i reinstaliranje aplikacije otkriva drugačije ponašanje ako je mamac način rada bio konfiguriran

Pravo kriptografsko nijekanje

Pravo nijekanje je arhitekturna osobina, ne preklopka funkcije. Šifrirano pohranište mora biti dizajnirano tako da:

  1. Alternativne vjerodajnice otkrivaju samo vlastiti skup podataka. Sustav ne drži zasebnu oznaku mamca koja identificira jednu vjerodajnicu kao kamuflažu. Nevažeće vjerodajnice mogu biti neuspješne, ali taj neuspjeh ne smije otkriti postoji li neotkriveni skup podataka.

  2. Ne postoji registar trezora. Aplikacija ne može izračunati koliko trezora postoji. Ne postoji broj, indeks niti popis ID-ova trezora. Forenzički stručnjak koji ispituje pohranu aplikacije pronalazi nediferencirani skup šifriranih podataka.

  3. Nikakve konfiguracijske zastavice ne otkrivaju skrivene trezore. Ne postoji booleova vrijednost, zapis baze podataka niti datoteka preferencija koja bi naznačavala postoje li dodatni trezori.

  4. Pohrana je ispunjena ispunjavajućim podacima. Ukupni iskorišteni kapacitet pohrane ne mijenja se prema broju trezora niti datoteka. Bez ispune stručnjak bi mogao procijeniti broj trezora iz ukupnog volumena šifriranih podataka u usporedbi s vidljivim sadržajem.

  5. Šifrirani podaci nerazlučivi su od nasumičnog šuma. Ne postoje granice datoteka, zaglavlja niti strukturalni markeri koji bi otkrivali gdje podaci jednog trezora završavaju i počinju podaci drugog.

Osobina Kozmetički mamac Pravo nijekanje
Zasebni podaci po vjerodajnici Da Da
Nema registra trezora Ne (baza podataka prati trezore) Da
Nema konfiguracijskih zastavica Ne (mamac preklopka je pohranjena) Da
Ispunjavajući podaci u pohrani Rijetko Da
Skriva alternativnu pohranu u statičnoj slici Ne Da, unutar navedenog modela prijetnji pohrane
Arhitektura vs. funkcija Preklopka funkcije Arhitekturna osobina

Stvarni scenariji u kojima je to važno

Uvjerljivo nijekanje nije teoretska stvar. Rješava dokumentirane, ponavljajuće stvarne situacije.

Granični prijelazi

Na graničnom prijelazu ispitivač može pregledati uređaj i zatražiti vjerodajnicu. Ako dizajn doista omogućuje poricanje na razini pohrane, jedna vjerodajnica može otkriti bezopasni skup podataka dok statičnoj slici nedostaje strukturni marker koji razlikuje skriveni sadržaj od podloge. Vaultaireov trenutačni raspored pohrane omogućuje ispitivaču s pristupom spremniku aplikacije da procijeni broj trezora, pa ne pruža to jamstvo.

Nasilje u obitelji i prisila u vezama

Osoba u nasilnoj vezi možda treba pohraniti dokaze (fotografije ozljeda, prijetnje, pravne dokumente) na uređaju koji agresor nadzire. Ako agresor zahtijeva pristup trezoru, korisnik može otvoriti trezor s neosjetljivim sadržajem. Bez pravog nijekanja „mamac način rada" zastavica u konfiguraciji aplikacije bi otkrila postojanje skrivenog sadržaja.

Krađa uređaja

Lopov s tehničkim vještinama mogao bi pokušati izvući podatke iz ukradenog telefona. Ispravno dopunjena pohrana s mogućnošću poricanja ima za cilj prikriti koliko skupova podataka zauzima pohranu, iako ukupna dodjela, stanje uređaja, sigurnosne kopije i operativni tragovi i dalje pripadaju modelu prijetnji. Vaultaire trenutno šifrira sadržaj, ali broj arena pohrane i dalje ograničava koliko trezora sadrži datoteke.

Pravna i novinarska zaštita

Novinari koji štite izvore, odvjetnici koji štite spise klijenata i aktivisti u autoritarnim režimima suočavaju se sa situacijama u kojima se sadržaj uređaja može iznuditi. Pravo nijekanje pruža uvjerljivu obranu protiv oduzimanja podataka.

Što Vaultaire implementira danas

Vaultaire implementira pristup odvojen uzorcima i normalno sučelje bez vidljivog popisa trezora. Ta svojstva pomažu tijekom uobičajene upotrebe aplikacije, ali ne ispunjavaju sve zahtjeve na gornjem popisu za uvjerljivo poricanje.

Konfigurirani uzorci otvaraju zasebne šifrirane trezore. PBKDF2 izvodi ključ trezora iz uzorka i soli za cijeli uređaj. Konfigurirani ključ provjerava autentičnost svog šifriranog indeksa i odmotava nasumični glavni ključ. Nekonfigurirani uzorak prikazuje prazno stanje umjesto poruke "netočan uzorak".

Lokalni format i dalje omogućuje procjenu broja trezora. Vaultaire pohranjuje jednu korijensku datoteku vault_index_<locator>.bin po trezoru, u skupu od 64 ili više s datotekama pokrića. Stranice i arene pohrane svih trezora dijele jednu mapu s nasumičnim nazivima. Nazivi ne otkrivaju uzorak, naziv trezora ni kojem trezoru datoteka pripada, ali netko s pristupom spremniku aplikacije i dalje može procijeniti koliko trezora sadrži datoteke, jer broj arena ograničava taj broj. AES-GCM provjera autentičnosti također pruža izvanmrežni test za kandidatske ključeve trezora.

Lokalna pohrana nije stalne veličine. Sadržaj datoteke i metapodaci su kriptirani, a dijelovi sigurnosne kopije u oblaku koriste dopunjavanje veličine i lažne zapise. Korijenske datoteke nalaze se u skupu s datotekama pokrića, a arene pokrića drže broj arena unutar raspona, ali broj arena, broj stranica kataloga, vremena datoteka i ukupna pohrana i dalje otkrivaju strukturu.

Postoji stanje oporavka i prisile. Vaultaire čuva informacije o oporavku u bazi podataka Keychain šifriranoj AES-GCM-om. Način prisile briše indekse, stranice i arene pohrane ostalih trezora na ovom uređaju (obično uklanjanje datoteka, bez prepisivanja), briše podatke za oporavak i izolira taj uređaj od sinkronizacije. Ne briše sigurnosne kopije u oblaku ni kopije na ravnopravnim uređajima, a vrijeme dovršetka ovisi o obavljenom lokalnom poslu.

Vaultaire stoga pruža segmentaciju sučelja i šifriranu pohranu, a ne informacijsko-teorijski dokaz da dodatni trezor ne postoji. Format pohrane objavljen u verziji 1.0.17 skriva koje datoteke pripadaju kojem trezoru, ali broj arena i dalje daje izvanmrežnoj snimci spremnika aplikacije gornju granicu broja trezora.

Kako procjenjivati tvrdnje o nijekanju

Ako aplikacija tvrdi da ima uvjerljivo nijekanje, pitajte:

  1. Ima li aplikacija preklopku „mamac način rada"? Ako da, radi se o kozmetici. Forenzički stručnjak će pronaći preklopku.
  2. Ima li aplikacija popis trezora ili bazu podataka? Ako da, postojanje trezora se može dokazati.
  3. Mogu li se nagađanja provjeriti izvan mreže? Autentificirani šifrirani tekst može potvrditi valjanost ključa kandidata bez zasebnog raspršivanja lozinke. Pitajte što ograničava troškove pogađanja i nudi li raspored pohrane jeftiniji otisak ključa.
  4. Mijenja li se korištenje pohrane s brojem trezora? Ako da, analiza diska može procijeniti broj trezora.
  5. Može li aplikacija izračunati trezore? Ako aplikacija može prikazati popis vaših trezora, taj popis postoji na uređaju i može se pronaći.

Često postavljana pitanja

Je li uvjerljivo nijekanje legalno?

Korištenje šifriranja s uvjerljivim nijekanjem je legalno u većini demokratskih zemalja. Ne postoji zakon koji zabranjuje imati šifrirane podatke na uređaju čije se postojanje ne može dokazati. U nekim jurisdikcijama tijela mogu zahtijevati otkrivanje ključeva šifriranja (npr. UK prema RIPA zakonu ili Australija prema zakonu Assistance and Access Act). Pravno pitanje može li se provoditi otkrivanje ključa za podatke čije se postojanje ne može dokazati ostaje otvoreno i još se razvija.

Mogu li forenzički alati otkriti uvjerljivo nijekanje?

Ispitivač koji dobije Vaultaireov spremnik aplikacije može otkriti šifriranu pohranu. Korijenske datoteke vault_index_*.bin nalaze se u skupu od 64 ili više s datotekama pokrića, a stranice i arene pohrane svih trezora dijele jednu mapu s nasumičnim nazivima. Nazivi datoteka ne pokazuju kojem trezoru datoteka pripada, ali broj arena ograničava koliko trezora sadrži datoteke, pa ispitivač i dalje može procijeniti koliko trezora imate. Datoteke ne otkrivaju nazive trezora ili sadržaj otvorenog teksta. Sadašnji dizajn stoga skriva trezore od normalne navigacije, a ne od svake forenzičke inspekcije pohrane.

Funkcionira li uvjerljivo nijekanje protiv odlučnog državnog aktera?

AES-256-GCM pruža snažnu granicu enkripcije sadržaja kada su ključevi, nonce i implementacija ispravni. To ne čini Vaultaireov trenutni raspored pohrane poricljivim pred ispitivačem na razini države: ispitivač i dalje može procijeniti broj lokalnih trezora, a kompromitiranje uređaja u radu može ciljati uzorke, ključeve, preglede ili izvoze dok je trezor otvoren. Trenutna značajka odvaja ono što različiti uzorci otvaraju u sučelju; ne obećava da odlučan ispitivač ne može dokazati postojanje dodatnih lokalnih indeksa.

Koja je razlika između uvjerljivog nijekanja i skrivenih trezora?

Skriveni trezori su trezori koji nisu vidljivi u uobičajenom sučelju aplikacije. Snažno kriptografsko poricanje zasebno je svojstvo da se skriveni podaci ne mogu razlikovati od neiskorištene dopunjene pohrane. Vaultaire trenutno nudi prvo svojstvo. Njegov trenutačni format pohrane i dalje omogućuje ispitivaču s pristupom spremniku aplikacije da procijeni broj trezora, pa ne pruža drugo.

Može li se uvjerljivo nijekanje koristiti s cloud sigurnosnim kopijama?

Vaultaire zapisuje kriptirane sigurnosne kopije manifesta i dopunjene kriptirane dijelove datoteka u korisnikovu privatnu CloudKit bazu podataka. Nasumični nazivi podatkovnih zapisa, popunjavanje dijelova od 10 MB i lažni zapisi smanjuju izravno otkrivanje sadržaja. Broj zapisa, ukupni volumen, vrijeme i obrasci ažuriranja ostaju vidljivi metapodaci usluge, tako da sigurnosna kopija u oblaku ne stvara pohranu konstantne veličine s informacijsko-teorijskim poricanjem.

Zaključak

Snažno poricanje pohrane ima za cilj spriječiti ispitivača da razlikuje skrivene podatke od dopunjenog slobodnog prostora u statičkoj šifriranoj pohrani. Većina aplikacija koje tvrde da imaju ovu značajku nudi kozmetičke načine rada s vidljivim konfiguracijskim zastavicama. Ispunjavanje jače definicije zahtijeva precizan model prijetnji, nebrojivi registar trezora, neotkrivajuće konfiguracijske zastavice, stabilnu dopunu i šifrirane zapise koji ne otkrivaju koji su utori stvarni.

Vaultaire koristi konfigurirane uzorke za odvajanje šifriranih trezora i čuva nazive i sadržaj trezora izvan zaključanog sučelja. Trenutačni raspored pohrane i dalje omogućuje da pregled spremnika aplikacije procijeni broj trezora. Tretirajte to kao prikrivanje na razini sučelja potpomognuto autentificiranom enkripcijom, a ne kao dokaz da ne postoji dodatni trezor.