Zwiększanie bezpieczeństwa Androida: uniemożliwianie złośliwemu oprogramowaniu szpiegowania danych aplikacji
Czas czytania: 2 minuty
Bezpieczeństwo jest podstawą Androida. Współpracujemy z Tobą, aby zapewnić bezpieczeństwo platformy i chronić dane użytkowników, oferując zaawansowane narzędzia i funkcje zabezpieczeń, takie jak Menedżer danych logowania i FLAG_SECURE. Każda wersja Androida wprowadza ulepszenia wydajności i zabezpieczeń, a Android 16 umożliwia podjęcie prostych, ale istotnych działań, które wzmocnią ochronę Twojej aplikacji. Obejrzyj film lub czytaj dalej, aby dowiedzieć się więcej o naszych ulepszonych zabezpieczeniach interfejsów API ułatwień dostępu.
Ochrona aplikacji przed szpiegowaniem za pomocą jednej linii kodu
Zauważyliśmy, że nieuczciwe podmioty czasami próbują wykorzystywać funkcje interfejsu API ułatwień dostępu do odczytywania informacji poufnych, takich jak hasła i dane finansowe, bezpośrednio z ekranu oraz manipulowania urządzeniem użytkownika przez wstrzykiwanie dotknięć. Aby temu zapobiec, w Androidzie 16 wprowadziliśmy nową, skuteczną ochronę w postaci jednego wiersza kodu: accessibilityDataSensitive.
Flaga accessibilityDataSensitive umożliwia wyraźne oznaczenie widoku lub funkcji kompozycyjnej jako zawierających dane wrażliwe. Gdy ustawisz tę flagę na true w swojej aplikacji, zablokujesz dostęp potencjalnie złośliwym aplikacjom do poufnych danych widoku i uniemożliwisz im wykonywanie na nich interakcji. Działa to w ten sposób: każdej aplikacji, która prosi o uprawnienia do ułatwień dostępu, ale nie zadeklarowała wyraźnie, że jest narzędziem ułatwień dostępu (isAccessibilityTool=true), odmawia się dostępu do tego widoku.
Ta prosta, ale skuteczna zmiana pomaga zapobiegać kradzieży informacji i wykonywaniu nieautoryzowanych działań przez złośliwe oprogramowanie bez wpływu na wygodę użytkowników korzystających z prawidłowych narzędzi ułatwień dostępu. Uwaga: jeśli aplikacja nie jest narzędziem ułatwień dostępu, ale prosi o uprawnienia do ułatwień dostępu i ustawia wartość isAccessibilityTool=true, odrzucimy ją, a Google Play Protect zablokuje ją na urządzeniach użytkowników.
Automatyczne, zwiększone bezpieczeństwo ochrony setFilterTouchesWhenObscured
Zintegrowaliśmy już tę nową funkcję zabezpieczeń accessibilityDataSensitive z dotychczasową metodą setFilterTouchesWhenObscured.
Jeśli używasz już adnotacji setFilterTouchesWhenObscured(true) do ochrony aplikacji przed atakami typu tapjacking, Twoje widoki są automatycznie traktowane jako dane wrażliwe na potrzeby ułatwień dostępu. Ulepszając metodę setFilterTouchesWhenObscured za pomocą zabezpieczeń accessibilityDataSensitive, od razu zapewniamy wszystkim dodatkową warstwę ochrony bez dodatkowych działań.
Pierwsze kroki
Zalecamy używanie flagi setFilterTouchesWhenObscured lub accessibilityDataSensitive na wszystkich ekranach zawierających informacje poufne, w tym na stronach logowania, w procesach płatności i w widokach wyświetlających dane osobowe lub finansowe.
W przypadku Jetpack Compose
setFilterTouchesWhenObscured | accessibilityDataSensitive |
val composeView = LocalView.current DisposableEffect(Unit) { composeView.filterTouchesWhenObscured = true onDispose { composeView.filterTouchesWhenObscured = false } }
| Użyj modyfikatora BasicText { text = “Your password”,
modifier = Modifier.semantics {
sensitiveData = true }}
|
W przypadku aplikacji opartych na widokach
W układzie XML dodaj odpowiedni atrybut do widoku zawierającego informacje o charakterze kontrowersyjnym.
setFilterTouchesWhenObscured | accessibilityDataSensitive |
|
|
Możesz też ustawić właściwość programowo w języku Java lub Kotlin:
setFilterTouchesWhenObscured | accessibilityDataSensitive |
|
|
|
|
Więcej informacji o flagach accessibilityDataSensitive i setFilterTouchesWhenObscured znajdziesz w przewodniku na temat przechwytywania kliknięć.
Współpraca z deweloperami w celu zapewnienia bezpieczeństwa użytkownikom
Współpracowaliśmy z deweloperami na wczesnym etapie, aby mieć pewność, że ta funkcja spełnia rzeczywiste potrzeby i płynnie integruje się z Twoim procesem pracy.
„Zawsze priorytetowo traktowaliśmy ochronę wrażliwych danych finansowych naszych klientów, co wymagało od nas zbudowania własnej warstwy ochrony przed złośliwym oprogramowaniem opartym na ułatwieniach dostępu. Revolut zdecydowanie popiera wprowadzenie tego nowego, oficjalnego interfejsu API na Androida, ponieważ pozwala nam stopniowo odchodzić od naszego niestandardowego kodu na rzecz solidnej, jednoliniowej ochrony platformy”.
- Vladimir Kozhevnikov, inżynier Androida w Revolut
Możesz odegrać kluczową rolę w ochronie użytkowników przed złośliwymi atakami wykorzystującymi ułatwienia dostępu, wdrażając te funkcje. Zachęcamy wszystkich deweloperów do zintegrowania tych funkcji z aplikacjami, aby zwiększyć bezpieczeństwo użytkowników.
Razem możemy stworzyć bezpieczniejsze i bardziej wiarygodne środowisko dla wszystkich.
-
Wiadomości o usługachUczynienie z Google Play jak najbezpieczniejszej i najbardziej godnej zaufania usługi. Dziś ogłaszamy nowy zestaw aktualizacji zasad i funkcję przenoszenia konta, które zwiększą prywatność użytkowników i ochronią Twoją firmę przed oszustwami.
Bennet Manuel • Czas czytania: 3 minuty -
Wiadomości o usługachFilarem ekosystemu Androida jest nasze wspólne zobowiązanie do budowania zaufania użytkowników. Wraz z rozwojem urządzeń mobilnych zmienia się nasze podejście do ochrony informacji poufnych.
Robert Clifford • Czas czytania: 3 minuty -
Wiadomości o usługachZ przyjemnością ogłaszamy stabilną wersję bibliotek AndroidX Security State 1.1.0 i Security State Provider 1.0.0.
Maunik Shah, Alec Garcia, Joseph Yong • Czas czytania: 4 minuty
Otrzymuj co tydzień najnowsze informacje o tworzeniu aplikacji na Androida na swoją skrzynkę odbiorczą.