Apple ponad tysiąckrotnie osłabiło siłę szyfrowania lokalnych kopii bezpieczeńtwa w iOS10

dodał 24 września 2016 o 09:36 w kategorii Krypto, Mobilne  z tagami:
Apple ponad tysiąckrotnie osłabiło siłę szyfrowania lokalnych kopii bezpieczeńtwa w iOS10

Apple w ostatnich latach położyło dużych nacisk na bezpieczeństwo danych swoich klientów. Dlaczego zatem w iOS 10 wprowadziło mechanizm osłabiający siłę szyfrowania lokalnych kopii bezpieczeństwa o ok. 2500 razy?

Użytkownicy telefonów Apple mogą wykonywać lokalne kopie bezpieczeństwa swoich danych za pomocą aplikacji iTunes. Za czasów iOS 9 hasło umożliwiające dostęp do tych kopii było zabezpieczone z użyciem dość bezpiecznego algorytmu, znacznie spowalniającego próby jego odgadnięcia. W iOS 10 wprowadzono jednak dodatkowy algorytm, który okazał się być wielokrotnie słabszy. Apple przyznało się już do błędu i zapowiada wypuszczenie aktualizacji która ma go naprawić.

Elcomsoft czyli rosyjscy eksperci w sprawach haseł

Nazwa firmy Elcomsoft powinna być znana wszystkim, którzy lata temu borykali się z problemem plików PDF zabezpieczonych hasłem. To własnie Elcomsoft odkrywał i publikował pierwsze narzędzia hasła te pokonujące w mgnieniu oka. W kolejnych latach rozszerzał listę swoich narzędzi, pokazując fatalny poziom zabezpieczeń kryptograficznych w produktach wielu firm, w tym także Microsoftu. Wraz z popularyzacją urządzeń mobilnych zajął się także szyfrowaniem tam stosowanym, a wkrótce został jednym z ważniejszych dostawców oprogramowania umożliwiającego analizę śledczą telefonów i kopii bezpieczeństwa ich danych. Przy okazji od czasu do czasu inżynierowie firmy natrafiają na różne perełki – a ta odkryta niedawno jest jedną z najciekawszych.

Po co PBKDF2, dodajmy SHA256!

Analizując kod iOS 10 by zaktualizować swoje oprogramowanie umożliwiające próby odgadnięcia hasła tworzonych przez ten system kopii bezpieczeństwa inżynierowie Elcomsoftu natrafili na kuriozalną sytuację. W iOS9 lokalna kopia bezpieczeństwa przechowywana na komputerze użytkownika szyfrowana była z użyciem klucza, który był tworzony w oparciu o hasło użytkownika i funkcję PBKDF2 z 10 tysiącami cykli. Używając procesora Intel i5 można było atakować tę funkcję z prędkością ok. 2400 prób na sekundę. W iOS 10 badacze odkryli, ze choć funkcja PBKDF2 nadal używana jest do stworzenia skrótu hasła użytkownika, to równolegle do niej zaimplementowano drugą funkcję skrótu, która tworzy drugi, równorzędny skrót hasła. Problem jednak polega na tym, ze ta druga funkcja do SHA256 z jedną iteracją – co oznacza, ze na identycznym procesorze można ją atakować z prędkością ok. 6 milionów prób na sekundę. Oznacza to wielokrotne ułatwienie ataku na hasła użytkownika stosowane do zabezpieczenia lokalnej kopii bezpieczeństwa.

ios

Warto także zauważyć, że Elcomsoft wcześniej już zaimplementował atak na skrót pochodzący z funkcji PBKDF2 dla kart graficznych, osiągając ok. 150 tysięcy prób na sekundę. Atak na SHA256 nie ma na razie implementacji GPU, ale i tak jest 40 razy szybszy od najlepszego znanego ataku na PBKDF2.

Nieciekawe skutki odkrycia

Problem z bezpieczeństwem lokalnej kopii danych jest tym większy, że jej pozyskanie jest praktycznie jedynym sposobem na uzyskanie dostępu do haseł użytkownika czy danych kart kredytowych zapisanych w Keychainie. Nawet jailbreak na telefonie nie pomoże dostać się do zawartych w nim danych – dopiero wykonanie kopii na lokalnym komputerze umożliwia dostęp do zapisanych haseł. W kopii bezpieczeństwa można znaleźć także wszystkie dane takie jak książka adresowa, spis połączeń, pliki multimedialne czy tokeny uwierzytelniające dające dostęp do poczty czy kont w sieciach społecznościowych. Co istotne, Elcomsoft informuje, że wykonanie kopii lokalnej można na telefonie wymusić nawet, jeśli jest on zablokowany – wystarczy mieć dostęp do komputera który został kiedyś powiązany z telefonem.

Czynnikiem ograniczającym ryzyko kradzieży danych jest konieczność fizycznego dostępu do komputera użytkownika na którym znajduje się kopia bezpieczeństwa – najczęściej jest to możliwość zarezerwowana dla organów ścigania (które zapewne są ważnym klientem Elcomsoftu). Apple podkreśla także, że odkryta podatność nie dotyczy kopii bezpieczeństwa na serwerach iCloud. Dlaczego Apple zdecydowało się na tak znaczące osłabienie szyfrowania lokalnych kopii bezpieczeństwa? To pytanie niestety pozostaje bez odpowiedzi.