Android 5.0: Dane lepiej chronione nowym systemem szyfrowania

W ciągu kilku ostatnich tygodni byliśmy świadkami zamieszania, jakie wywołało pewne oświadczenie firmy Apple i Google. Chodzi o to, że wszystko, co użytkownicy przechowują w najnowszych wersjach systemów operacyjnych iOS

W ciągu kilku ostatnich tygodni byliśmy świadkami zamieszania, jakie wywołało pewne oświadczenie firmy Apple i Google. Chodzi o to, że wszystko, co użytkownicy przechowują w najnowszych wersjach systemów operacyjnych iOS i Android, jest zaszyfrowane. A mówiąc ściślej: firmy te nie mają możliwości odszyfrowania lokalnie przechowywanych informacji.

Szyfrowanie domyślne

Organy ścigania nie są zbytnio szczęśliwe z takiego obrotu sprawy. Oznacza to bowiem, że nawet posiadając nakaz, nie będą mogły zmusić użytkowników do odszyfrowania lokalnie przechowywanych danych. Z tego powodu kręciły się wokół swoich władz oraz próbowały przestraszyć opinię publiczną, opowiadając popularne historyjki o pedofilach i terrorystach. Dyrektor FBI stwierdził nawet, że szyfrowanie jest złe i niebezpieczne.

Tymczasem zwolennicy prywatności i bezpieczeństwa chwalą nowy sposób szyfrowania dysków, które z pewnością sprawi, że dane mobilnych klientów będą naprawdę bezpieczne.

Ktoś może stwierdzić, że decyzje te są nieprzemyślane; dla kogoś innego są one oczywistą reakcją na sytuację, w której rząd zbyt łatwo może gromadzić informacje, mając równocześnie zbyt mały nadzór prokuratury lub nawet całkowitą dowolność w działaniu.

Wcześniej w tym miesiącu pisaliśmy o nowym domyślnie włączonym szyfrowaniu firmy Apple, temat ten jest szerzej opisany na stronach związanych z organami ścigania. A teraz czas poznać techniczne aspekty domyślnego szyfrowania, które Google zachwala w swoim najnowszym Androidzie Lollipop (ang. lizak), znanego tez jako Android 5.0 czy Android L (ponieważ L jest zarówno rzymskim odpowiednikiem 50, jak i pierwszą literą słowa Lollipop).

Krótka historia szyfrowania w Androidzie

Jak przypomniał Nikołaj Elenkow z Android Explorations, użytkownicy Androida mogą włączyć szyfrowanie całego dysku (FDE), począwszy od wersji 3.0 Androida (znanego także jako Honeycomb – ang. plaster miodu). Oferowane wtedy szyfrowanie pozostało w dużej mierze niezmienione do momentu, aż Google postanowił wzmocnić je w Androidzie 4.4. Wspomniany system kryptograficzny znów zostanie wzmocniony w Androidzie L, ale – co ważniejsze – po raz pierwszy zostanie w nim także włączone szyfrowanie domyślne.

Pierwotny sposób szyfrowania zastosowany przez Google’a w Androidzie był pozornie całkiem bezpieczny. Jednak zaimplementowanie go w oprogramowaniu, jak często bywa w takich przypadkach, wykazało jego słabe punkty. W szczególności należy tu wspomnieć o kwestii bezpieczeństwa tego schematu szyfrowania, które prawie całkowicie zależy od stopnia skomplikowania hasła szyfrowania dysku i jego czułości na ataki siłowe.

„Jeśli zaszyfrowany klucz główny jest wystarczająco długi i skomplikowany, złamanie go może zająć lata” – wyjaśnia Elenkow. „Jednak, ponieważ Android ponownie zdecydował się na PIN blokujący ekran lub hasło (o długości maksymalnej 16 znaków), w praktyce większość ludzi chętniej wybierze stosunkowo krótkie hasło lub hasło szyfrowania dysku o niskiej entropii”.

Innymi słowy: siła szyfrowania dysku na Androidzie była tak silna (lub słaba), jak Twoje hasło blokujące ekran. I w większości przypadków szyfrowanie jest na niskim poziomie, ponieważ ludzie są zbyt leniwi, aby ustawiać długie hasło.

Zastosowanie mechanizmu ograniczającego sprawiło, że ataki siłowe stały się niepraktyczne, ponieważ po wykorzystaniu określonej liczby prób zalogowania atakujący mógł zostać zablokowany. Oczywiście Elenkow obszedł tę ochronę. Jeśli chcecie szczegółowo dowiedzieć się, jak to zrobił, odszukajcie jego analizę, gdyż ja nie będę tu tego opisywać. Mówiąc w skrócie: istnieje taki atak siłowy, który może złamać słaby PIN lub hasło i odszyfrować zawartość przechowywaną na urządzeniach z Androidem.

Jak wiadomo, atak ten mógłby być znacznie trudniejszy do wykonania, jeśli hasło byłoby wystarczająco silne. Ale jeśli masz typowe hasło składające się z 4 do 6 znaków, ktoś może odszyfrować Twoje dane w kilka sekund.

BI8_Hp8CAAAPl0g

W wersji Androida 4.4 Google zastosował silniejszy system szyfrowania, chociaż wciąż opiera się on na PIN-ie lub haśle. A zatem nadal możliwe jest przeprowadzenie ataku siłowego i ostateczne złamanie słabego PIN-u i hasła, jednak w Android 4.4 będzie to raczej kwestia minut niż sekund.

Niektóre wersje Androida 4.4 pozwalały użytkownikom na tworzenie oddzielnego hasła do szyfrowania. W ten sposób bariera, którą trzeba było przekroczyć, była większa (użytkownicy z oddzielnym hasłem do szyfrowania byli chronieni podwójnie – poprzez blokadę ekranu i hasło do szyfrowania).

Pojawienie się Lizaka

„Poza umożliwieniem szyfrowania całego dysku zaraz po wyjęciu z pudełka Android L powinien zawierać ochronę sprzętową dla kluczy szyfrowania dysku, jak również sprzętowe przyspieszenie dostępu do szyfrowanego dysku”.

Takie ataki nie będą działały na Androida L. Nie wiadomo, dlaczego – jeszcze nie jest dostępny żaden kod źródłowy dla systemu operacyjnego. Dzięki swojej analizie Elenkow wywnioskował, że pochodzenie klucza deszyfrowania nie jest już całkowicie zależne tylko od hasła użytkownika, PIN-u lub hasła do blokowania ekranu. Wygląda na to, że deszyfrowanie w przyszłych odmianach Androida będzie tylko częściowo oparte na PIN-ie blokującym ekran lub haśle użytkownika.

Elenkow wierzy, że będzie jakiś drugi współczynnik wspierający uwierzytelnianie. Wcześniej klucz deszyfrowania pochodził od samego PIN-u lub hasła. Teraz klucz deszyfrowania jest dostarczany przez hasło lub PIN oraz jakieś wbudowane – może nawet sprzętowe – uwierzytelnianie. A zatem, atak siłowy na hasło wciąż może być możliwy, ale nie odszyfruje zaszyfrowanego dysku.

Za długie, nie przeczytałem

„Poza umożliwieniem szyfrowania całego dysku zaraz po wyjęciu z pudełka Android L powinien zawierać ochronę sprzętową dla kluczy szyfrowania dysku, jak również sprzętowe przyspieszenie dostępu do szyfrowanego dysku” – podsumowuje Elenkow. „Te dwie funkcje powinny sprawić, że szyfrowanie na Androidzie będzie bezpieczniejsze i znacznie szybsze”.

Innymi słowy, najbardziej popularny mobilny system operacyjny na świecie nareszcie stanie się bardziej bezpieczny.

 

Porady