Android kết hợp các tính năng bảo mật hàng đầu trong ngành và hợp tác với các nhà phát triển cũng như người triển khai thiết bị để giữ cho nền tảng và hệ sinh thái Android được an toàn. Một mô hình bảo mật mạnh mẽ là điều cần thiết để tạo ra một hệ sinh thái ứng dụng và thiết bị mạnh mẽ được xây dựng trên và xung quanh nền tảng Android và được hỗ trợ bởi các dịch vụ đám mây. Kết quả là, trong toàn bộ vòng đời phát triển của mình, Android đã phải tuân theo một chương trình bảo mật nghiêm ngặt.
Android được thiết kế để mở. Các ứng dụng Android sử dụng phần cứng và phần mềm tiên tiến cũng như dữ liệu cục bộ và dữ liệu được cung cấp, được cung cấp thông qua nền tảng để mang lại sự đổi mới và giá trị cho người tiêu dùng. Để hiện thực hóa giá trị đó, nền tảng cung cấp môi trường ứng dụng bảo vệ tính bảo mật, tính toàn vẹn và tính khả dụng của người dùng, dữ liệu, ứng dụng, thiết bị và mạng.
Việc bảo mật một nền tảng mở đòi hỏi kiến trúc bảo mật mạnh mẽ và các chương trình bảo mật nghiêm ngặt. Android được thiết kế với bảo mật nhiều lớp, đủ linh hoạt để hỗ trợ nền tảng mở trong khi vẫn bảo vệ tất cả người dùng nền tảng này. Để biết thông tin về cách báo cáo sự cố bảo mật và quy trình cập nhật, hãy xem Tài nguyên và cập nhật bảo mật .
Android được thiết kế cho các nhà phát triển. Kiểm soát bảo mật được thiết kế để giảm bớt gánh nặng cho các nhà phát triển. Các nhà phát triển am hiểu về bảo mật có thể dễ dàng làm việc và dựa vào các biện pháp kiểm soát bảo mật linh hoạt. Các nhà phát triển ít quen thuộc với vấn đề bảo mật sẽ được bảo vệ bằng các cài đặt mặc định an toàn.
Ngoài việc cung cấp nền tảng ổn định để xây dựng, Android còn cung cấp hỗ trợ bổ sung cho các nhà phát triển theo một số cách. Nhóm bảo mật Android tìm kiếm các lỗ hổng tiềm ẩn trong ứng dụng và đề xuất cách khắc phục các sự cố đó. Đối với các thiết bị có Google Play, Dịch vụ Play cung cấp các bản cập nhật bảo mật cho các thư viện phần mềm quan trọng, chẳng hạn như OpenSSL, được dùng để bảo mật thông tin liên lạc trong ứng dụng. Bảo mật Android đã phát hành một công cụ để kiểm tra SSL ( nogotofail ) giúp các nhà phát triển tìm ra các vấn đề bảo mật tiềm ẩn trên bất kỳ nền tảng nào họ đang phát triển.
Android cũng tận dụng sự hỗ trợ phần cứng cơ bản để bảo mật. Ví dụ: công nghệ ARM TrustZone được sử dụng để cung cấp khả năng lưu trữ an toàn cho các khóa mật mã cũng như chứng thực tính toàn vẹn khởi động. [DICE](https://pigweed.googlesource.com/open-dice/+/refs/heads/main/docs/android.md) được dùng để đo lường chương trình cơ sở được tải trước khi khởi động Android. Điều này cho phép xác minh từ xa rằng chương trình cơ sở không bị ảnh hưởng bởi các lỗ hổng nghiêm trọng, đã biết mà có thể bị khai thác để gây hại cho cả nhà phát triển và người dùng.
Bạn có thể tìm thêm thông tin dành cho nhà phát triển ứng dụng Android trên dev.android.com .
Android được thiết kế cho người dùng. Người dùng được cung cấp khả năng hiển thị các quyền mà mỗi ứng dụng yêu cầu và kiểm soát các quyền đó. Thiết kế này bao gồm kỳ vọng rằng những kẻ tấn công sẽ cố gắng thực hiện các cuộc tấn công thông thường, chẳng hạn như các cuộc tấn công kỹ thuật xã hội để thuyết phục người dùng thiết bị cài đặt phần mềm độc hại và các cuộc tấn công vào ứng dụng của bên thứ ba trên Android. Android được thiết kế để vừa giảm xác suất xảy ra các cuộc tấn công này, vừa hạn chế đáng kể tác động của cuộc tấn công trong trường hợp nó thành công. Bảo mật Android tiếp tục phát triển sau khi thiết bị đến tay người dùng. Android làm việc với các đối tác và công chúng để cung cấp bản vá cho mọi thiết bị Android đang tiếp tục nhận được bản cập nhật bảo mật.
Bạn có thể tìm thêm thông tin dành cho người dùng cuối trong trung tâm trợ giúp Nexus , trung tâm trợ giúp Pixel hoặc trung tâm trợ giúp của nhà sản xuất thiết bị của bạn.
Trang này trình bày các mục tiêu của chương trình bảo mật Android, mô tả các nguyên tắc cơ bản của kiến trúc bảo mật Android và trả lời các câu hỏi thích hợp nhất cho kiến trúc sư hệ thống và nhà phân tích bảo mật. Nó tập trung vào các tính năng bảo mật của nền tảng cốt lõi của Android và không thảo luận về các vấn đề bảo mật dành riêng cho các ứng dụng cụ thể, chẳng hạn như các vấn đề liên quan đến trình duyệt hoặc ứng dụng SMS.
Lý lịch
Android cung cấp nền tảng nguồn mở và môi trường ứng dụng cho thiết bị di động.
Các phần và trang bên dưới mô tả các tính năng bảo mật của nền tảng Android. Hình 1 minh họa các thành phần bảo mật và những điều cần cân nhắc ở các cấp độ khác nhau của ngăn xếp phần mềm Android. Mỗi thành phần giả định rằng các thành phần bên dưới được bảo mật đúng cách. Ngoại trừ một lượng nhỏ mã hệ điều hành Android chạy dưới quyền root, tất cả mã phía trên nhân Linux đều bị hạn chế bởi Hộp cát ứng dụng.
Các khối xây dựng nền tảng Android chính là:
- Phần cứng thiết bị: Android chạy trên nhiều cấu hình phần cứng bao gồm điện thoại di động, máy tính bảng, đồng hồ, ô tô, TV thông minh, hộp trò chơi OTT và hộp giải mã tín hiệu. Android không phụ thuộc vào bộ xử lý nhưng nó tận dụng một số khả năng bảo mật dành riêng cho phần cứng như ARM eXecute-Never.
- Hệ điều hành Android: Hệ điều hành cốt lõi được xây dựng dựa trên nhân Linux. Tất cả tài nguyên của thiết bị, như chức năng camera, dữ liệu GPS, chức năng Bluetooth, chức năng điện thoại và kết nối mạng đều được truy cập thông qua hệ điều hành.
- Thời gian chạy ứng dụng Android: Các ứng dụng Android thường được viết bằng ngôn ngữ lập trình Java và chạy trong thời gian chạy Android (ART). Tuy nhiên, nhiều ứng dụng, bao gồm các dịch vụ và ứng dụng cốt lõi của Android, là ứng dụng gốc hoặc bao gồm các thư viện gốc. Cả ART và ứng dụng gốc đều chạy trong cùng một môi trường bảo mật, có trong Hộp cát ứng dụng. Các ứng dụng có một phần chuyên dụng của hệ thống tệp để chúng có thể ghi dữ liệu riêng tư, bao gồm cơ sở dữ liệu và tệp thô.
Ứng dụng Android mở rộng hệ điều hành Android cốt lõi. Có hai nguồn chính cho ứng dụng:
- Ứng dụng được cài đặt sẵn: Android bao gồm một tập hợp các ứng dụng được cài đặt sẵn bao gồm điện thoại, email, lịch, trình duyệt web và danh bạ. Những chức năng này giống như các ứng dụng của người dùng và chúng cung cấp các chức năng chính của thiết bị mà các ứng dụng khác có thể truy cập được. Các ứng dụng được cài đặt sẵn có thể là một phần của nền tảng Android nguồn mở hoặc chúng có thể được nhà sản xuất thiết bị phát triển cho một thiết bị cụ thể.
- Ứng dụng do người dùng cài đặt: Android cung cấp môi trường phát triển mở hỗ trợ mọi ứng dụng của bên thứ ba. Google Play cung cấp cho người dùng hàng trăm nghìn ứng dụng.
Dịch vụ bảo mật của Google
Google cung cấp một tập hợp các dịch vụ dựa trên đám mây có sẵn cho các thiết bị Android tương thích với Dịch vụ di động của Google . Mặc dù các dịch vụ này không phải là một phần của Dự án mã nguồn mở Android (AOSP) nhưng chúng được đưa vào nhiều thiết bị Android. Để biết thêm thông tin về một số dịch vụ này, hãy xem Đánh giá năm 2018 của Bảo mật Android.
Các dịch vụ bảo mật chính của Google là:
- Google Play: Google Play là tập hợp các dịch vụ cho phép người dùng khám phá, cài đặt và mua ứng dụng từ thiết bị Android hoặc web của họ. Google Play giúp nhà phát triển dễ dàng tiếp cận người dùng Android và khách hàng tiềm năng. Google Play cũng cung cấp dịch vụ đánh giá của cộng đồng, xác minh giấy phép ứng dụng, quét bảo mật ứng dụng và các dịch vụ bảo mật khác.
- Bản cập nhật Android: Dịch vụ cập nhật Android cung cấp các tính năng mới và bản cập nhật bảo mật cho các thiết bị Android được chọn, bao gồm các bản cập nhật qua web hoặc qua mạng (OTA).
- Dịch vụ ứng dụng: Các khung cho phép ứng dụng Android sử dụng các khả năng của đám mây như ( sao lưu ) dữ liệu và cài đặt ứng dụng cũng như nhắn tin từ đám mây đến thiết bị ( C2DM ) để nhắn tin đẩy.
- Xác minh ứng dụng: Cảnh báo hoặc tự động chặn cài đặt ứng dụng có hại và liên tục quét ứng dụng trên thiết bị, cảnh báo hoặc xóa ứng dụng có hại .
- SafetyNet: Hệ thống phát hiện xâm nhập đảm bảo quyền riêng tư nhằm hỗ trợ Google theo dõi, giảm thiểu các mối đe dọa bảo mật đã biết và xác định các mối đe dọa bảo mật mới.
- Chứng thực SafetyNet: API của bên thứ ba để xác định xem thiết bị có tương thích với CTS hay không. Chứng thực cũng có thể xác định ứng dụng Android đang giao tiếp với máy chủ ứng dụng.
- Trình Quản Lý Thiết Bị Android: Ứng dụng web và ứng dụng Android để xác định vị trí thiết bị bị mất hoặc bị đánh cắp.
Tổng quan về chương trình bảo mật
Các thành phần chính của Chương trình bảo mật Android bao gồm:
- Đánh giá thiết kế: Quy trình bảo mật Android bắt đầu sớm trong vòng đời phát triển bằng việc tạo ra mô hình và thiết kế bảo mật phong phú và có thể định cấu hình. Mỗi tính năng chính của nền tảng đều được các nguồn lực kỹ thuật và bảo mật xem xét, với các biện pháp kiểm soát bảo mật phù hợp được tích hợp vào kiến trúc của hệ thống.
- Kiểm tra thâm nhập và đánh giá mã: Trong quá trình phát triển nền tảng, các thành phần nguồn mở và do Android tạo ra phải được đánh giá bảo mật chặt chẽ. Những đánh giá này được thực hiện bởi Nhóm bảo mật Android, nhóm Kỹ thuật bảo mật thông tin của Google và các nhà tư vấn bảo mật độc lập. Mục tiêu của những đánh giá này là xác định rõ các điểm yếu và lỗ hổng có thể xảy ra trước khi phát hành chính và mô phỏng các loại phân tích được thực hiện bởi các chuyên gia bảo mật bên ngoài khi phát hành.
- Đánh giá nguồn mở và cộng đồng: AOSP cho phép bất kỳ bên quan tâm nào đánh giá bảo mật rộng rãi. Android cũng sử dụng các công nghệ nguồn mở đã trải qua quá trình đánh giá bảo mật bên ngoài quan trọng, chẳng hạn như nhân Linux. Google Play cung cấp một diễn đàn để người dùng và công ty cung cấp thông tin về các ứng dụng cụ thể trực tiếp cho người dùng.
- Ứng phó sự cố: Ngay cả với những biện pháp phòng ngừa này, các vấn đề bảo mật vẫn có thể xảy ra sau khi vận chuyển, đó là lý do tại sao dự án Android đã tạo ra một quy trình ứng phó bảo mật toàn diện. Các thành viên nhóm bảo mật Android toàn thời gian giám sát cộng đồng bảo mật chung và dành riêng cho Android để thảo luận về các lỗ hổng tiềm ẩn và xem xét các lỗi bảo mật được lưu trên cơ sở dữ liệu lỗi của Android. Sau khi phát hiện ra các vấn đề chính đáng, nhóm Android có quy trình phản hồi cho phép giảm thiểu nhanh chóng các lỗ hổng nhằm đảm bảo giảm thiểu rủi ro tiềm ẩn cho tất cả người dùng Android. Những phản hồi được đám mây hỗ trợ này có thể bao gồm cập nhật nền tảng Android (bản cập nhật AOSP), xóa ứng dụng khỏi Google Play và xóa ứng dụng khỏi các thiết bị trong trường.
- Cập nhật bảo mật hàng tháng: Nhóm bảo mật Android cung cấp các bản cập nhật hàng tháng cho các thiết bị Google Android và tất cả các đối tác sản xuất thiết bị của chúng tôi.
Kiến trúc bảo mật nền tảng
Android mong muốn trở thành hệ điều hành an toàn và hữu dụng nhất dành cho nền tảng di động bằng cách tái sử dụng các biện pháp kiểm soát bảo mật hệ điều hành truyền thống để:
- Bảo vệ ứng dụng và dữ liệu người dùng
- Bảo vệ tài nguyên hệ thống (bao gồm cả mạng)
- Cung cấp cách ly ứng dụng khỏi hệ thống, các ứng dụng khác và khỏi người dùng
Để đạt được những mục tiêu này, Android cung cấp các tính năng bảo mật chính sau:
- Bảo mật mạnh mẽ ở cấp độ hệ điều hành thông qua nhân Linux
- Hộp cát ứng dụng bắt buộc cho tất cả ứng dụng
- Giao tiếp liên tiến trình an toàn
- Ký ứng dụng
- Quyền do ứng dụng xác định và do người dùng cấp