Tin tức về sản phẩm

Tăng cường bảo mật cho Android: Ngăn chặn phần mềm độc hại rình mò dữ liệu ứng dụng của bạn

Thời gian đọc: 2 phút

Bảo mật là nền tảng của Android. Chúng tôi hợp tác với bạn để giữ an toàn cho nền tảng và bảo vệ dữ liệu người dùng bằng cách cung cấp các công cụ và tính năng bảo mật mạnh mẽ, chẳng hạn như Trình quản lý thông tin xác thực và FLAG_SECURE. Mỗi bản phát hành Android đều mang đến những điểm cải tiến về hiệu suất và bảo mật. Với Android 16, bạn có thể thực hiện các bước đơn giản nhưng quan trọng để tăng cường khả năng phòng vệ của ứng dụng. Hãy xem video của chúng tôi hoặc tiếp tục đọc để tìm hiểu thêm về các biện pháp bảo vệ nâng cao cho API về khả năng tiếp cận.

 

 

Bảo vệ ứng dụng của bạn khỏi hành vi rình mò chỉ bằng một dòng mã

Chúng tôi nhận thấy rằng đôi khi, các đối tượng xấu cố gắng khai thác các tính năng của API về khả năng tiếp cận để đọc thông tin nhạy cảm (chẳng hạn như mật khẩu và thông tin tài chính) ngay trên màn hình, đồng thời thao túng thiết bị của người dùng bằng cách chèn thao tác chạm. Để chống lại điều này, Android 16 cung cấp một biện pháp phòng vệ mới, mạnh mẽ chỉ bằng một dòng mã: accessibilityDataSensitive.

Cờ accessibilityDataSensitive cho phép bạn đánh dấu rõ ràng một thành phần hiển thị hoặc composable là có chứa dữ liệu nhạy cảm. Khi đặt cờ này thành true trên ứng dụng, về cơ bản, bạn đang chặn các ứng dụng có khả năng gây hại truy cập vào dữ liệu nhạy cảm của chế độ xem hoặc thực hiện các hoạt động tương tác trên đó. Cơ chế hoạt động như sau: mọi ứng dụng yêu cầu quyền hỗ trợ tiếp cận mà không khai báo rõ ràng là công cụ hỗ trợ tiếp cận hợp lệ (isAccessibilityTool=true) đều bị từ chối quyền truy cập vào chế độ xem đó.

Thay đổi đơn giản nhưng hiệu quả này giúp ngăn chặn phần mềm độc hại đánh cắp thông tin và thực hiện các hành động trái phép mà không ảnh hưởng đến trải nghiệm của người dùng đối với các công cụ hỗ trợ tiếp cận hợp pháp. Lưu ý: Nếu một ứng dụng không phải là công cụ hỗ trợ tiếp cận nhưng yêu cầu quyền truy cập và đặt isAccessibilityTool=true, thì Play sẽ từ chối ứng dụng đó và Google Play Protect sẽ chặn ứng dụng đó trên thiết bị của người dùng. 

Tính năng bảo mật tự động, nâng cao để bảo vệ setFilterTouchesWhenObscured

Chúng tôi đã tích hợp chức năng bảo mật mới này của accessibilityDataSensitive vào phương thức setFilterTouchesWhenObscured hiện có. 

Nếu bạn đã sử dụng setFilterTouchesWhenObscured(true) để bảo vệ ứng dụng khỏi hành vi tấn công bằng cách lừa người dùng nhấn vào, thì các thành phần hiển thị của bạn sẽ tự động được coi là dữ liệu nhạy cảm cho mục đích hỗ trợ tiếp cận. Bằng cách cải tiến phương thức setFilterTouchesWhenObscured bằng các biện pháp bảo vệ của accessibilityDataSensitive, chúng tôi ngay lập tức cung cấp cho mọi người một lớp bảo vệ bổ sung mà không cần làm gì thêm.

image.png

Bắt đầu

Bạn nên sử dụng setFilterTouchesWhenObscured hoặc cờ accessibilityDataSensitive trên mọi màn hình chứa thông tin nhạy cảm, bao gồm cả trang đăng nhập, quy trình thanh toán và mọi chế độ xem hiển thị dữ liệu cá nhân hoặc dữ liệu tài chính.

Đối với Jetpack Compose

setFilterTouchesWhenObscuredaccessibilityDataSensitive

 

val composeView = LocalView.current DisposableEffect(Unit) { composeView.filterTouchesWhenObscured = true onDispose { composeView.filterTouchesWhenObscured = false } }

 

Sử dụng đối tượng sửa đổi semantics để áp dụng thuộc tính sensitiveData cho một thành phần kết hợp.

BasicText { text = “Your password”,

            modifier = Modifier.semantics {

                sensitiveData = true }}

 

 

Đối với ứng dụng dựa trên Khung hiển thị

Trong bố cục XML, hãy thêm thuộc tính liên quan vào thành phần hiển thị nhạy cảm.

setFilterTouchesWhenObscuredaccessibilityDataSensitive

 

<TextView android:filterTouchesWhenObscured="true" />

 

 

<TextView android:accessibilityDataSensitive="true" />

 

Ngoài ra, bạn có thể đặt thuộc tính theo phương thức lập trình trong Java hoặc Kotlin:

setFilterTouchesWhenObscuredaccessibilityDataSensitive

 

myView.filterTouchesWhenObscured = true;

 

 

myView.isAccessibilityDataSensitive = true;

 

 

myView.setFilterTouchesWhenObscured(true)

 

 

myView.setAccessibilityDataSensitive(true);

 

Đọc thêm về cờ accessibilityDataSensitive và setFilterTouchesWhenObscured trong Hướng dẫn về Tapjacking.

Hợp tác với nhà phát triển để đảm bảo an toàn cho người dùng

Chúng tôi đã hợp tác với các nhà phát triển từ sớm để đảm bảo tính năng này đáp ứng nhu cầu thực tế và tích hợp mượt mà vào quy trình làm việc của bạn.

image.png

"Chúng tôi luôn ưu tiên bảo vệ dữ liệu tài chính nhạy cảm của khách hàng. Điều này đòi hỏi chúng tôi phải xây dựng lớp bảo vệ riêng để chống lại phần mềm độc hại dựa trên tính năng hỗ trợ tiếp cận. Revolut rất ủng hộ việc ra mắt API Android mới và chính thức này, vì API này cho phép chúng tôi dần chuyển từ mã tuỳ chỉnh sang một cơ chế bảo vệ nền tảng mạnh mẽ, chỉ cần một dòng mã." 
– Vladimir Kozhevnikov, Kỹ sư Android tại Revolut

Bạn có thể đóng vai trò quan trọng trong việc bảo vệ người dùng khỏi các cuộc tấn công độc hại dựa trên tính năng hỗ trợ tiếp cận bằng cách sử dụng các tính năng này. Chúng tôi khuyến khích tất cả nhà phát triển tích hợp các tính năng này vào ứng dụng của họ để giúp bảo vệ người dùng. 

Cùng nhau, chúng ta có thể xây dựng một trải nghiệm an toàn và đáng tin cậy hơn cho mọi người.

Tác giả:
Tiếp tục đọc