18:36
6/12/2010

Dziura w Androidzie 2.2

Odpowiednio spreparowana strona internetowa jest w stanie wykraść dowolny plik z karty SD w telefonie działającym pod kontrolą systemu Android.

Wykradanie danych w Androidzie

Znalazca błędu, Thomas Cannon tak opisuje “błędne” zachowanie Androida, które umożliwiło skuteczny atak:

  • Przeglądarka w Androidzie nie pyta użytkownika, czy i gdzie zapisać ściągany z internetu plik (np. payload.html od razu zostanie zapisany do /sdcard/download/payload.html)
  • Za pomocą odpowiednik instrukcji JavaScript jest możliwe zmuszenie przeglądarki do otwarcia tego pliku i wyświetlenia dowolnego innego pliku z karty SD.

W powyższym przypadku otwarty plik HTML działa w domenie lokalnej, więc Android odpali JavaScript bez pytania użytkownika. Oczywiście, kiedy JavaScript dostanie się do zawartości jakiegoś pliku, może przesłać jego zawartość do internetu.

Android Hacked

Jedynym minusem powyższej metody jest to, że atakujący musi dokładnie znać ścieżkę i nazwę pliku, który chce wykraść. Ale nie jest to wielki problem, bo programy zazwyczaj (niezależnie od telefonu) używają stałych ścieżek i nazw dla kluczowych plików, podobnie jest z nazewnictwem zdjęć z Androidowej aplikacji aparatu.

Błąd został przetestowany na Android 2.2HTC Desire. Zespół bezpieczeństwa Androida został poinformowany o błędzie i zapewnia, że patch zostanie wydany, ale dopiero po wypuszczeniu Gingerbread (Android 2.3), w jednym z jego pierwszych update’ów.

Jak się chronić?

Thomas zauważa, że nie wszystkie telefony otrzymają update systemu (Androida 2.3) ponieważ jest to często zależne od producenta telefonu lub sieci GSM (np. wiadomo już, że dla Motorola Milestone XT720 nie zostanie udostępnione nic powyżej Androida 2.1). Dlatego, warto samemu zwrócić uwagę na poniższe rzeczy:

  • Monitorować “notofication” pod kątem informacji o ściągnięciu podejrzanego pliku.
  • Można wyłączyć JS w przeglądarce (Settings -> Enable JavaScript)
  • Można użyć innej przeglądarki, np. Opera Mobile (ona pyta o zgodę przy zapisywaniu plików)

Google wspomina, że można także odmontować kartę SD (ale to wpłynie na użyteczność telefonu…)

Uwaga, powyższe kroki zabezpieczą Was przed pobraniem pliku za pomocą przeglądarki WWW, ale nie przed np. przesłaniem go na Wasz telefon przy pomocy e-maila…

Przeczytaj także:


Dowiedz się, jak zabezpieczyć swoje dane i pieniądze przed cyberprzestępcami. Wpadnij na nasz kultowy ~3 godzinny wykład pt. "Jak nie dać się zhackować?" i poznaj kilkadziesiąt praktycznych i przede wszystkim prostych do zastosowania porad, które skutecznie podniosą Twoje bezpieczeństwo i pomogą ochronić przed atakami Twoich najbliższych. Uczestnicy tego wykładu oceniają go na: 9,34/10!

Na ten wykład powinien przyjść każdy, kto korzysta z internetu na smartfonie lub komputerze, prywatnie albo służbowo. Wykład prowadzimy prostym językiem, wiec zrozumie go każdy, także osoby spoza branży IT. Dlatego na wykład możesz spokojnie przyjść ze swoimi rodzicami lub mniej technicznymih znajomych. W najbliższych tygodniach będziemy w poniższych miastach:

Zobacz pełen opis wykładu klikając tutaj lub kup bilet na wykład klikając tu.

21 komentarzy

Dodaj komentarz
  1. Ciekawa metoda, ale i tak większość znajomych którzy mają Androida korzystają z Opery, więc raczej nie przetestuje ;)

  2. troche stare … dziura jest nie tylko w wersji 2.2 ale rowniez we wczesniejszych. Nie zostanie rowniez naprawiona w 2.3. Rozwiazaniem jest przegladarka – np Opera ktora zawsze pyta gdzie zapisac plik

  3. “Jedynym minusem powyższej metody jest to, że atakujący musi dokładnie znać ścieżkę i nazwę pliku” – ja bym to plusem nazwała ;]

    Ja się tym błędem nie przejmuję. A Opery Mini nie trawię. Wolę jej desktopową wersję.

  4. żeby wyłączyć JS trzeba ustawić wartość disable ;)

  5. Mnie to juz poprostu wku%^@$! Dziury są we wszystkich wersjach 1.5, 1.6, 2.1, 2.2. Google tego nie łata a jak już łata to HTC, Samsung itd. się nie poczuwają by aktualizować soft. Wyszedł telefon z 1.6 to żadnego upgrade nie planują, a że dziurawy jak IE? Trudno…

  6. I tu widzimy największą wadę Androida – brak pewnego wsparcia. iOS jest aktualizowany przez rok, dwa. Sprzęt na androidzie nie ma zapewnionych żadnych aktualizacji, jesteśmy zdani na łaskę lub niełaskę operatora.

  7. @Rocik:
    A nie producenta telefonu?

  8. @Rocik: nie wypowiem się na temat wad iPhonów i innych iPodobnych ;-) Ale przepraszam bardzo, brak wsparcia? Odkąd mam telefon (a niedługo minie pół roku) miałam już trzy aktualizacje oprogramowania. Nie wspomnę o aktualizacjach darmowych aplikacji, które są niemalże codziennie. A operator ma tu tyle do powiedzenia, że jeśli telefon jest zbrandowany, aktualizacja może być nieco później, niż ma to miejsce w przypadku innych telefonów.

  9. @Aleksandra
    a to ci ciekawe. bo z reguly brandowane telefony maja szybciej aktualizacja od niebrandowanych.
    secundo – aktualizacje poszczegolnych modeli zalaza tylko od widzimisie producenta. takie htc czesc modeli olalo /magic/, podobnie jak i wspomniana w newsie motorola.

  10. Przecież to jest kurna Linuks… Dlaczego nie można tam zrobić normalnego systemu aktualizacji?… :/

  11. @Aleksandra – niestety nie masz do końca racji… Mam telefon Samsunga, jeden z ‘flagowych’ jakie wyszły z Androidem. I co ? Samsung olał mnie jako klienta, nie oferując aktualizacji powyżej wersji 1.6. Zwyczajnie zostawił klientów samych sobie, a jeśli chcą mieć nowszą wersję systemu, to muszą kupić kolejny model telefonu…
    Jedynie dzięki społeczności użytkowników i projektu GAOSP mam dostęp do wersji ‘beta’ Androida 2.2

    Dobrze, że w końcu Google wzięło sprawę w swoje ręce i aktualizacje będą dostepne niezależnie od producenta telefonu czy operatora. Szkoda tylko, że dopiero teraz…

  12. @Dave: święte słowa. Lud chce telefonu z normalnym linuxem i narzędziami gnu! Jeeej, jakie to by było piękne:))))

  13. @uczony_w_pismie:
    taki telefon istnieje
    http://wiki.openmoko.org/wiki/Main_Page
    tylko że nie nadaje się za bardzo dla ludu bo, lud chce facebook’a i gadu-gadu

  14. uczony_w_pismie: Istnieje taki. http://wiki.openmoko.org/ I to _jest_ piękne :) http://www.dropbox.com/gallery/7926454/1/openmoko?h=0216b9

    • adiblol: korzystałeś z tego? To telefon, który jako jedyny nie ma w domyślnej konfiguracji możliwości wykonywania połączeń, trzeba dokompilować ;)

  15. @Piotr Konieczny: nie wiem jak @adiblol ale ja korzystam bo to zwyczajny telefon.
    A że Debiana mozna uruchomić to tylko 1 z jego plusów.

  16. @Piotr Konieczny: nie trzeba kompilować, wystarczy wgrać obraz lepszego distro.
    Obecnie używam SHR, niestety nie ma pakietów .deb tylko .ipk więc np. VLC nie zainstaluję. Ale za to perfekcyjnie działa dzwonienie.
    Debian mi nie pasował ze względu na brak udogodnień “mobile”, ale przyjdzie czas gdy połączę oba systemy ;)

  17. Aleksandra: „A Opery Mini nie trawię.”

    Ja używam Opery Mobile. Działa płynniej niż wbudowana webkitowa, zwłaszcza po aktualizacji do 2.2, gdzie ta webkitowa zaczęła wręcz z opóźnieniem reagować na przewijanie strony.

  18. Proste – root i jeszcze raz root. Wtedy nie ma problemu z aktualizacją np Magica do wyższych wersji. Oczywiście, jeśli w wyższych wersjach dziura zostanie załatana ;) Poważnie – rootujcie swoje androidy, nie zdawajcie się na łaskę producentów :)

  19. […] dziury znajdziecie w tekście pt. dziura w Androidzie. Łata na powyższy błąd ciągle nie jest dostępna — a nawet jeśli będzie, to proces jej […]

  20. a nie wiecie przypadkiem, czy Dolphin Browser HD jest w tym zakresie bezpieczny? jest 3x chudszy od Opery :/

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: