Android P, kolejna główna wersja Androida, nałoży ograniczenia na bezczynne aplikacje działające w tle, które żądają dostępu do aparatu. Jest to dobrodziejstwo dla prywatności, ponieważ oznacza, że aplikacje nie mogą robić Ci zdjęć bez Twojej wiedzy!
Android P, kolejna główna wersja Androida, może minąć kilka tygodni od oficjalnego odsłonięcia i chociaż jest podstawowe funkcje dostępne dla użytkownika są nam jeszcze nieznane, odkrywamy wiele ciekawostek dzięki otwartemu kodowi źródłowemu Androida. Wiemy, że pozwoli to przewoźnikom ukryj siłę sygnału I zdefiniuj sposób ich wyświetlania na pasku stanuna przykład i odkryliśmy dowody na to, że Google może uniemożliwić programistom dostęp do nich nieudokumentowane i ukryte interfejsy API. Bloomberga informowaliśmy na początku tego miesiąca, że pojawi się następna wersja Androida obsługuje telefony z „wieloma ekranami” i „składanymi wyświetlaczami”, znaleźliśmy także oznaki wskazujące, że aktualizacja będzie obsługiwać a funkcja nagrywania rozmów telefonicznych.
Na tym jednak nie kończą się ulepszenia Androida P. Według projektu Android Open Source (AOSP) popełniać po połączeniu 19 stycznia nowe zestawy reguł w systemie Android P zapobiegną dostępowi do aparatu bezczynnym aplikacjom działającym w tle. Dzięki temu złośliwe aplikacje działające w tle, gdy ekran jest wyłączony, nie będą mogły robić potencjalnie kompromitujących zdjęć Ciebie lub Twoich bliskich w celu szantażu.
Co się zmieni w Androidzie P?
Zmiana reguły dotyczy identyfikatorów UID aplikacji (identyfikatorów użytkowników), czyli identyfikatorów przydzielanych przez Androida każdej aplikacji podczas instalacji. Są one unikalne dla każdej aplikacji i nie ulegają zmianie — dopóki aplikacja jest zainstalowana na telefonie lub tablecie, zachowuje ten sam identyfikator aplikacji.
W systemie Android P, gdy usługa aparatu wykryje, że UID jest „bezczynny”, czyli gdy urządzenie jest w stanie bezczynności Drzemać stan i dostęp aplikacji działających w tle do procesora i usług intensywnie korzystających z sieci jest ograniczony — system Android wygeneruje błąd i zamknie dostęp do kamery. Kolejne żądania kamery z nieaktywnego UID natychmiastowo wygenerują błąd.
Opiera się na zmianach w usługach kamer, które rozpoczęły się w systemie Android 6.0 Marshmallow. W Lollipop i starszych wersjach Androida dostęp do aparatu przyznawano aplikacjom na zasadzie „kto pierwszy, ten lepszy”. Jednak w przypadku Marshmallow usługa aparatu zdecydowanie faworyzuje aplikacje z działaniami widocznymi na pierwszym planie i widocznymi dla użytkownika. To trochę jak szybka kolejka w wesołym miasteczku: aplikacje o wysokim priorytecie oczekujące na dostęp do kamery wyprzedzają aplikacje o niskim priorytecie.
Dlaczego to ma znaczenie?
Ograniczenia dostępu do kamery w aplikacji działającej w tle już dawno minęły. W 2014 roku programista Androida Szymon Sidor opublikował wpis na blogu wyjaśniając, w jaki sposób aplikacje mogą potajemnie robić zdjęcia i nagrywać filmy, sprytnie manipulując uprawnieniami aparatu w systemie Android. Zmniejszając wizjer aplikacji aparatu do 1 piksela, co czyniło go praktycznie niewidocznym, pan Sidor mógł uzyskać dostęp do Nexusa 5 kamerę bez powiadamiania użytkowników o aktywności aplikacji – nawet gdy aplikacja działała w tle, a ekran telefonu był wyłączony.
Z Android Pograniczenia dotyczące kamery działającej w tle, byłyby szkodliwe aplikacje, takie jak ta opisana w poście na blogu pana Sidora łatwiejsze do wykrycia, ponieważ takie złośliwe aplikacje musiałyby wdrożyć usługę na pierwszym planie, aby pozostać przy życiu, i dzięki Do Wymagania Androida Oreo, oznaczałoby to, że aplikacja musiałaby wyświetlić powiadomienie informujące, że aplikacja jest uruchomiona (oraz że aplikacja jest wyświetlana nad innymi aplikacjami). Jeśli taka aplikacja próbowałaby pozostać ukryta w tle, przestałaby działać, ponieważ nie miałaby dostępu do kamery w P.