Miesiąc temu w sieci pojawiła się informacja o spostrzeżeniach Christophera Soghoiana, badacza w dziedzinie prywatności i bezpieczeństwa w sieci, dotyczące możliwego naruszania prywatności przez Dropboksa. Jeden z największych serwisów oferujących usługę dysku sieciowego zapewniał na swojej stronie internetowej, że dane składowane na serwerach są w pełni zaszyfrowane i nikt nie ma do nich dostępu, nikt nie może ich odczytać, podczas gdy okazało się, że wcale nie jest tak kolorowo, jak to opisywano.

DropBox stosuje metodę deduplikacji, tzn. nie dopuszcza możliwości składowania dwa razy tego samego pliku. Jeśli użytkownik będzie próbował wgrać na swój dysk sieciowy plik, który został już wcześniej wgrany przez innego użytkownika, plik „wgra” się w ułamku sekundy, a w rzeczywistości plik wgrany wcześniej przez kogoś innego zostanie przypisany do kolejnego użytkownika – tego, który właśnie próbował go wgrać. Metoda ta może być szeroko stosowana, ale w innej kategorii usług. Nikt nie ma nic przeciwko by tego typu technikę stosowały serwisy typu Tumblr czy Soup, ale DropBox skompromitował się poprzez stosowanie deduplikacji i jednoczesne utrzymywanie, że nikt poza użytkownikiem nie jest w stanie odczytać wgrywanych danych, chociażby z tego prostego powodu, że plik musi zostać odczytany (w rzeczywistości odczytuje się ich hasze) by mógł zostać podany deduplikacji, bo w przeciwnym razie skąd by wiedziano, że ten plik jest taki sam, jak obecnie znajdujący się już na serwerze?

Soghoian dowodzi, że na nic zdają się zapewnienia na stronie DropBoksa o szyfrowaniu kluczem AES-256, podczas gdy klucz składowany nie jest jedynie po stronie użytkownika, ale również serwera. Jeśli użytkownik chciałby żeby jego dane rzeczywiście były bezpieczne, musiałby sam szyfrować pliki przed wgraniem ich na serwer DropBoksa np. za pomocą truecrypt, co czyni usługę niewygodną.


Informacja ze strony DropBoksa – ile w tym prawdy?

DropBoksa można wytłumaczyć w ten sposób, że oferując od dwóch do bodajże ośmiu gigabajtów pojemności dysku za darmo, musi stosować techniki optymalizacyjne. Nie powinien jednak w takim przypadku kryć mechanizmów jakie stoją za usługą i nie powinien oszukiwać na swojej stronie. Po wykryciu sprawy przez Soghoiana i wystąpieniu prokuratora z Electronic Frontier Foundation do serwisu z tą sprawą, DropBox zaktualizował swoją stronę, gdzie poszczególne fragmenty zostały zmienione, np.

All files stored on Dropbox servers are encrypted (AES256) and are inaccessible without your account password.

All files stored on Dropbox servers are encrypted (AES 256).

Dropbox employees aren’t able to access user files, and when troubleshooting an account, they only have access to file metadata (filenames, file sizes, etc. not the file contents).

Dropbox employees are prohibited from viewing the content of files you store in your Dropboxaccount, and are only permitted to view file metadata (e.g., file names and locations).

Poza tym, DropBox zapewniał także, że również sam ruch z/do serwisu jest w pełni szyfrowany, ale okazało się, że w przypadku urządzeń mobilnych – nie zawsze.

Skoro zatem DropBox nie zapewnia pełnej ochorny danych, a takiej oczekujemy od dysku sieciowego, musimy udać się gdzie indziej. Tego typu funkcjonalność zapewniają SpiderOak, Wuala czy Tarsnap. Gdyby tego było mało, konta premium w dwóch pierwszych serwisach są tańsze niż te na DropBoksie. Jak widać, w przypadku oskarżonego zadziałał mechanizm poleceń za dodatkowe gigabajty, który spowodował taką popularyzację usługi.

Po co jednak pełna ochrona danych? Pierwsza sprawa, że dane mają dla niektórych firm kluczowe znaczenie i możliwość ich odczytania przez osoby trzecie to realne zagrożenie dla prowadzonego biznesu. Druga sprawa dotyczy pośrednio bezpieczeństwa użytkownika – np. w przypadku piractwa. O ile wgrywając istniejący już na serwerze plik, nie jesteśmy w stanie dowiedzieć się, kto wgrał go przed nami, o tyle organizacje antypirackie mogą skorzystać z tej metody, wgrywając pirackie materiały na DropBoksa, a w przypadku stwierdzenia natychmiastowego przypisania pliku, wysłać zgłoszenie o przekazanie danych na temat użytkowników, którzy wgrali ten sam plik lub po prostu zgłosić to na policję, która dokona rewizji serwerów i wyszuka wygenerowanego hasha pliku w bazie danych plików użytkowników. Patrząc na sytuację opisywaną wczoraj, możnaby się czegoś takiego spodziewać.

DropBox został zatem oskarżony przez Christophera Soghoiana, który znalazł tę lukę w bezpieczeństwie. Wystosował on pismo do Federal Trade Commission by nakazała serwisowi sprecyzować działanie swojej usługi, poinformować swoich użytkowników o konsekwencjach, jakie mogą wynikać z deduplikacji oraz wypłacić odszkodowanie użytkownikom kont typu Pro za niespełnione obietnice.

Spodobał Ci się tekst? Poleć znajomym:

iStore

iStore

  • http://www.folk24.pl/sklep/ Wojciech Małota

    Co za bzdura… przecież to czy dwa pliki są identyczne porównuje się za pomocą haszy (funkcji skrótu), a te mogą być stworzone przed zaszyfrowaniem pliku i zapisaniem go na dysku serwera. Tak więc przy kolejnych uploadach tego samego pliku wcale nie trzeba mieć dostępu do oryginalnego pliku. Tak więc nie jest prawdą, że oprogramowanie DropBoxa musi znacz klucze szyfrujące aby stosować deduplikację.

    • Tomek

      Wojciech, jeśli masz dwa komputery podpięte pod jedno konto na Dropboksie, z jednego komputera wrzucasz poprzez deduplikację plik (dzieje się to w ułamku sekundy, porównywanie hashy pewnie, etc.). Włączasz drugi komputer i pytanie: w jaki sposób bez odszyfrowania pliku przesłanego kiedyś przez innego użytkownika ściągnie Ci się ten plik na dysk tego komputera?

    • http://blog.flexmaniak.pl Damian

      Kwestia tego gdzie jest generowany hash – czy na serwerze, czy przez aplikację Dropboxa u klienta.
      Druga kwestia to czy hash jest obliczany z nie- czy z za-szyfrowanego pliku, ale jeśli 2 takie same pliki na 2 różnych kontach są deduplikowane no to hash musi być obliczany przed szyfrowaniem.

      „… plik musi zostać odczytany (w rzeczywistości odczytuje się ich hasze) by mógł zostać podany deduplikacji, bo w przeciwnym razie skąd by wiedziano, że ten plik jest taki sam, jak obecnie znajdujący się już na serwerze”

      Nie musi, jeśli obliczymy hash przed zaszyforwaniem w aplikacji na komuterze użytkownika i prześlemy go z zaszyfrowanym plikiem, to nie musimy nic odczytywać.

  • P4trykx

    Ale przecież ta druga osoba, które wgrała już istniejący plik musi mieć do niego dostęp i jakoś go rozszyfrować. Więc serwer ma dostęp do rozszyfrowanej wersji pliku, który później wysyła do drugiego użytkownika,

    • http://www.folk24.pl/sklep/ Wojciech Małota

      No w sumie tak… mój błąd.

    • Damian

      Ale po co ma rozszyfrowywać, skoro może duplikować plik i po numerze wywołania przydzielać dostęp do danego użytkownika?

  • http://www.folk24.pl/sklep/ Wojciech Małota

    Bo właśnie o to chodzi w dedupliakcji, żeby nie duplikować pliku :)

  • http://www.facebook.com/tomek.sulkowski Tomek Sułkowski

    Warto by sprawdzać poprawną nazwę usługi, którą się opisuje. 2 sekundy by Ci to zajęło.

  • Michał

    Damian: Ale po co ma rozszyfrowywać, skoro może duplikować plik i po numerze wywołania przydzielać dostęp do danego użytkownika?

    Po to, że pliki na serwerze są szyfrowane i użytkownik X nie zna (zazwyczaj) klucza użytkownika Y – serwer musi go rozszyfrować, aby przekazać użytkownikowi Y to co już wgrał X.

  • br

    Szyfrowanie nie wyklucza deduplikacji. Mechanizm może działać np. tak, jak naszkicowałem poniżej.

    Dla każdego pliku zapisywanego w systemie obliczana jest wartość wybranej funkcji skrótu – hash. Hash służy jedynie do identyfikacji pliku. Następnie, na tej samej zasadzie, przy użyciu silnej funkcji jednokierunkowej (np. SHA-256) generowany jest klucz. Oznacza to, że klucz szyfrujący budowany jest na podstawie zawartości pliku. Ten klucz zna tylko ten, kto był w posiadaniu tego pliku. Nikt inny.

    Zatem osoby postronne (wliczając w to ludzi z Dropboxa) nie są w stanie oczytać danych użytkowników. Są jedynie w stanie przeprowadzić tzw. watermarking attack – tzn. mając dany plik, możliwe jest sprawdzenie czy jest on przechowywany przez wybranego użytkownika. Co więcej, jeśli Dropbox stosuje bardziej zaawansowane mechanizmy deduplikacji (działające na poziomie fragmentów plików), możliwe jest także nieco dokładniejsze poznanie struktury plików (np. wykrycie powtarzających się fragmentów). Jednak nawet w tej sytuacji odczytanie zawartości pliku pozostaje niemożliwe.

    Pozostaje pytanie, w jaki sposób, pozostałe komputery tego danego użytkownika mają uzyskać dostęp do wgranego pliku. Jednak to także nie jest problem – wystarczy, że hashe i klucze są przechowywane i synchronizowane przez Dropboxa w postaci zaszyfrowanej hasłem użytkownika. Te dane mają niewielki rozmiar i nie muszą podlegać deduplikacji.

    Podsumowując, sam fakt, że Dropbox wykonuje deduplikację między użytkownikami, nie wyklucza tego, że dane są przechowywane w postaci uniemożliwiającej ich odczytanie przez ludzi z Dropboxa.

  • http://www.facebook.com/krzysztof.dziadziak Krzysztof Dziądziak

    Mała aktualizacja i konsekwencje deduplikacji, wyliczania hashów, podejścia do watermatking attack i innych rzeczy związanych z bezpieczeństwem Dropboxa możecie znaleźć u mnie na blogu

    http://forwardfeed.pl/?s=dropbox

    W tej kwestii polecam Dropship — successor to torrents? [ENG], oraz
    Theoretical vulnerability of Dropbox – platform to quick exchange files

    • bachus

      Krzysztof Dziądziak: Mała aktualizacja i konsekwencje deduplikacji, wyliczania hashów, podejścia do watermatking attack i innych rzeczy związanych z bezpieczeństwem Dropboxa możecie znaleźć u mnie na bloguhttp://forwardfeed.pl/?s=dropboxW tej kwestii polecam Dropship — successor to torrents? [ENG], oraz
      Theoretical vulnerability of Dropbox – platform to quick exchange files

      Przeczytałem ‘Dropshit’. Też sobie nazwe wymyślili.

  • http://pokarm.blogspot.com/ pokarm

    „DropBox oskarżony o oszukanie użytkowników w kwestii prywatności” – ja bym raczej napisał, że „użytkownicy dropbox oszukiwali się w sprawie rzekomej prywatności” :)

  • Pingback: Mój MAC

  • Pingback: Dropbox Reader pokazuje kolejne problemy z bezpieczeństwem Dropboxa

  • Pingback: Błąd w Dropbox pozwalał zalogować się dowolnym hasłem, na dowolne konto.

  • Pingback: Dropbox wyjaśnia zmiany, jakie zaszły w warunkach korzystania z jego usługi (ToS)

  • Pingback: Dropbox wyceniany na prawie 6 miliardów – rośnij bańko, rośnij

  • Pingback: Bitcasa vs Dropbox – zapowiada się na techniczny nokaut?