Co robicie, kiedy sprzedajcie komuś telefon? Oczywiście w pierwszej kolejność na pewno kasujecie swoje dane, aby nowy właściciel nic z nich nie skorzystał. Mamy przynajmniej taką nadzieję, że to robicie. A jak to robicie? Większość przywraca telefon do ustawień fabrycznych i liczy na cud dnia następnego. Dlaczego…
Badacze z Uniwersytetu Cambridge zrobili mały test. Sprawdzili jaki procent telefonów, ma źle usuwane dane przed sprzedażą. Wyniki były co najmniej zastanawiające, bo ok. 60% urządzeń ma poważny problem z rzetelnym skasowaniem danych w momencie, gdy zażąda tego użytkownik. Wszystko przez pamięci flash, w których sprawa ze skasowaniem danych nie jest wcale taka prosta. To nie jest zwykła pamięć dyskowa, w której system umieszcza coś i na nasze życzenie nadpisuje dane.
Wszystko przez tą pamięć
Zacznijmy może od tego, że pamięci flash są takimi, które niestety są dużo bardziej podatne na zużycie. Taka sytuacja, czy chcemy, czy nie wymusza inną architekturę pamięci, aby mogły funkcjonować lepiej. Ma ona także dość ważną ograniczoną ilość cyklu związanych z odczytem i zapisem. System, który ma władzę nad tymi procesami musi doprowadzić do zminimalizowania obciążenia dla bloków. Co to oznacza? Nic dobrego dla nas. Operacja modyfikacji przez coś takiego może oznaczać tylko jego zapisanie w zupełnie nowej kopii, ale w innej lokalizacji.
Tak działa niestety algorytm optymalizacji. To oczywiście jeszcze nie wszystko. Sprawę utrudnia jeszcze sam Android, który jak wiemy to genialnych systemów nie należy i tutaj też na swój sposób daje plamę. System ten w kolejnych etapach korzystał z różnorodnych systemów plików, o czym pewnie mało kto wie.
- yaffs2 – do wersji 2.2.x,
- ext4 – od wersji 2.3.x.
Yaffs to pierwszy system zaprojektowany specjalnie pod napędy NAND. Kiedy weszła jego pierwsza wersja pracował na stronach o rozmiarze 512 bajtów. Pozwalało to starszym modelów pamięci flash na 2-3 cykle przepisywania zapisów awarii na stronie. Wersja druga była już inna. Pozwalała na strony jednokrotnego zapisu. Używała też systemu korzystającego z wielu różnych rodzajów pamięci z jego geometrii. Pozwalał też przede wszystkim na pewien poziom bezpośredniej kontroli nad obsługą pamięci. Telefony od wersji 2.3.x mają już zaimplementowane pamięci eMMC. Co to za pamięć i skąd problemy? Ma ona wbudowany system udostępniający takie funkcjonalności jak zapis i odczyt. Jednakże problemem jest to, że sama określa kiedy i gdzie to się stanie. Dane można kasować, nic nie stoi na przeszkodzie, jednakże architektura, która jest tam zaaplikowana powoduje nie małe problemy.
Kasowanie danych
Całe badanie przeprowadzili, jak wspomnieliśmy wyżej naukowcy z Cambridge. To oni sprawdzali, jak dane są kasowane i czy są w ogóle. W tym badania postawiono na możliwość odczytu po kasowaniu logicznym. Chodzi o to, aby sprawdzić, czy dane da się odzyskać za pomocą standardowych procedur odczytu z użyciem przewidzianych do tego interfejsów. Naukowcy z Cambridge kupili aż dwadzieścia sześć używanych telefonów z systemem Android. Oczywiście, na każdym z nim próbowali odzyskać dane.
- /data,
- /scard,
- pamięć zewnętrzna
To trzy katalogi, które interesowały naukowców. Pierwszy katalog to taki, gdzie aplikacje przechowują swoje dane. Drugi to wirtualna karta pamięci przeznaczona na multimedia. A jeżeli chodzi o trzeci, to wszyscy wiedzą, czym jest pamięć zewnętrzna, a dokładnie to zewnętrzna karta pamięci. Oczywiście, zaczynając od początku dane zostały nadpisane, żeby nie było, a następnie przywrócili telefony do ustawień fabrycznych. Były na to dwa sposoby o oba wykorzystali: przywracanie z systemu i Recovery. Następnie oczywiście próbowali odzyskać dane. Tak, jak przypuszczano urządzenia ze starymi Androidami 2.2.x, czyli z systemem yaffs2 poradziły sobie z czyszczeniem katalogu /data. Nowe telefony nie miały tak łatwo i pięknie. Androidy w wersji 2.3.x nie czyściły katalogu całkowicie. Co najsmutniejsze, niby powinno być to rozwiązane, a tu lol. Telefony z systemem 4.0.x także miały z tym problem i aż 60% nie poradziło sobie z zadaniem. Problem stała się aktualizacja systemu operacyjnego. Nowe wersje Anrdoida dostarczane był wraz z nowymi sterownikami dla pamięci flash. Okazuje się, że mimo upgrade do 4.0.x korzystały one z procedur z 2.3.x. A co z najnowszymi systemami? Telefony, które miały od początku 4.0.x lub 4.1.x były podobnie narażone, bo niektórzy producenci zapominali o aktualizacji sterowników.
Jak sobie z tym poradzić?
Niestety naukowcy byli w stanie odczytać dane z nieprawidłowo skasowanych urządzeń i o w 80%. Co może zdobyć nowy posiadacz telefonu w taki sposób:
- pocztę i kontakty,
- wiadomości SMS i MMS,
- wiadomości komunikatorów IM,
- zapisane hasła do sieci WiFi,
- zapisane pliki multimedialne.
Nasuwa się oczywiście dość standardowe pytanie w tym momencie. Czy możemy coś z tym zrobić? Propozycji jest kilka. Należy oczywiście osobno sformatować zewnętrzną kartę pamięć. Wykorzystać do tego oba tryby: z poziomu systemu operacyjnego oraz trybu Recovery. Możecie też po przywróceniu danych do ustawień fabrycznych wgrać apkę, która nadpisze partycje. Warto także zrootować telefon i wykonać proces nadpisywania na poziomie systemu. Nie są to jednak rozwiązania, które na pewno zadziałają. Są to sposoby wręcz dziecinne. Najlepszym rozwiązaniem jest szyfrowanie danych w telefonie. Najlepiej to zrobić już na początku używania telefonu. Oczywiście, w tym przypadku musicie wymyślić lepsze hasło niż PIN składający się z czterech znaków. Jednakże jakieś rozwiązanie jest. Ja osobiście jednak wolę telefonów nie sprzedawać. Zawsze te, których już nie używam idą na cmentarzysko telefonów, czyli do pudełka i na strych, albo zabierają jakiś moi rodzice. Ci raczej nie odzyskają z niego danych.