Zaszyfrowany dysk, odblokowany komputer. Granice VeraCrypt
Po zamontowaniu woluminu VeraCrypt aplikacja może otworzyć zapisany na nim dokument. Musi dostać jego czytelną treść, inaczej nie pozwoliłaby ci pracować. W tym miejscu kończy się częste wyobrażenie, że napis „zaszyfrowane” opisuje ochronę pliku w każdej sytuacji.
To analiza granic ochrony na podstawie dokumentacji, nie raport z przeprowadzonego ataku na pamięć. Opisane niżej sytuacje są przykładami. Ustawienia woluminu omawiałem osobno w poradniku VeraCrypt.
Skradziony nośnik i otwarta sesja
Rozważ dwa przypadki. W pierwszym ktoś zabiera wyłączony komputer z prawidłowo zaszyfrowanym dyskiem systemowym, nie zna hasła i nie ma innej kopii danych. W drugim siada przy otwartym komputerze, na którym dokument już wyświetla się w edytorze. Ten sam algorytm szyfrowania nie daje w obu sytuacjach tej samej ochrony.
W drugiej nie trzeba zaczynać od łamania szyfru. Dane zostały udostępnione w działającej sesji. Dlatego przy ocenie zabezpieczeń zaczynam od pytania, w jakim stanie zostaje komputer i przed czyim dostępem ma chronić. Sama długość hasła nie opisuje tego problemu.
Blokada ekranu ogranicza zwykły dostęp do interfejsu, ale nie jest tym samym co odmontowanie woluminu. Nie należy traktować tych czynności zamiennie. Przy odejściu od urządzenia ważne jest też, czy pozostawione programy nadal korzystają z otwartych danych.
Co zostaje w pamięci
Dokumentacja VeraCrypt wyraźnie oddziela szyfrowanie dysku od danych przetwarzanych w RAM. Edytor może utrzymywać własny bufor dokumentu. Odmontowanie woluminu nie daje gwarancji usunięcia wszystkich takich kopii z pamięci programów.
Jest tu istotny szczegół: VeraCrypt ma opcję ochrony kluczy i buforowanych haseł w RAM, opisaną dla nowszych wersji. Nie należy na tej podstawie obiecywać szyfrowania całej pamięci wszystkich aplikacji. To inny zakres ochrony.
Nie podaję jednej liczby sekund, po której pamięć staje się bezpieczna. Zależy to od sprzętu, systemu i sytuacji, a taki licznik dawałby fałszywą pewność. Przy ryzyku fizycznego przejęcia działającego komputera samo zamknięcie okna z dokumentem jest zbyt słabym opisem zabezpieczenia.
Kontener nie obejmuje automatycznie systemu
Plik wewnątrz kontenera może trafić do programu działającego na niezaszyfrowanym systemie. Wtedy trzeba sprawdzić, gdzie ten program zapisuje kopie robocze i jakie mechanizmy systemu utrwalają stan pamięci. Zamknięty kontener nie cofa zapisów wykonanych poza nim.
Dokumentacja hibernacji opisuje właśnie taką granicę. Gdy plik hibernacji znajduje się na partycji objętej szyfrowaniem systemowym VeraCrypt, zapis podlega temu szyfrowaniu. Sam zaszyfrowany kontener nie zapewnia tego plikowi hibernacji na innej, niezaszyfrowanej partycji. Nie jest to argument przeciw kontenerom, tylko przeciw przypisywaniu im ochrony całego komputera.
Zainfekowany system czyta razem z tobą
VeraCrypt ostrzega, że złośliwe oprogramowanie może przechwycić hasło lub dane dostępne w działającym systemie. Jeśli pracujesz na przejętym komputerze, dłuższe hasło do woluminu nie usuwa tego problemu. Podajesz je w środowisku, któremu nie można już ufać.
W praktyce rozdzieliłbym więc zabezpieczenie nośnika od oceny stanu systemu. Szyfrowanie ma sens także wtedy, gdy nie rozwiązuje wszystkich zagrożeń. Trzeba jedynie wiedzieć, czego od niego oczekujemy. Przy utracie wyłączonego dysku stawia zupełnie inną przeszkodę niż wtedy, gdy programy w otwartej sesji mają już dostęp do plików.
Jeżeli dokument ma przestać być dostępny, sprawdź, które aplikacje go otworzyły i czy wolumin nadal jest zamontowany. Zielony komunikat o szyfrowaniu nie odpowie na te pytania za ciebie.
Źródła
- VeraCrypt: wymagania i środki ostrożności
- VeraCrypt: niezaszyfrowane dane w RAM
- VeraCrypt: plik hibernacji
- VeraCrypt: złośliwe oprogramowanie
Zdjęcie ilustracyjne: Samsung Memory / Unsplash. Fotografia nie potwierdza szyfrowania pokazanego nośnika; tekst nie jest sponsorowany.
Jak pracuję ze źródłami i poprawiam błędy. Znalazłeś błąd? Podaj fragment i źródło.