Trường hợp sử dụng

Trang này chứa các trường hợp sử dụng phổ biến cho AVF.

Biên dịch biệt lập

Là một vùng bảo mật phần mềm, máy ảo (VM) được bảo vệ cung cấp một môi trường an toàn để biên dịch mã nhạy cảm về bảo mật. Môi trường này cho phép chuyển quá trình biên dịch bootclasspath và các tệp JAR của máy chủ hệ thống (do bản cập nhật APEX kích hoạt) từ quá trình khởi động sớm sang trước khi khởi động lại, đồng thời giảm đáng kể thời gian khởi động sau khi cập nhật APEX.

Quá trình triển khai nằm trong APEX com.android.compos. Thành phần này không bắt buộc và có thể được đưa vào bằng cách sử dụng tệp makefile.

Biên dịch biệt lập

Hình 1. Biên dịch các tệp JAR trong các bản cập nhật Mainline. Biên dịch các tệp JAR trong các bản cập nhật Mainline

Mục tiêu bảo mật là biên dịch trung thực dữ liệu đầu vào đã xác minh và tạo ra dữ liệu đầu ra biệt lập; Android với tư cách là một ứng dụng không đáng tin cậy không thể thay đổi dữ liệu đầu ra biên dịch theo bất kỳ cách nào khác ngoài việc khiến quá trình này không thành công (khi Android quay lại quá trình biên dịch thời gian khởi động).

Dịch vụ biên dịch trong VM chỉ tạo chữ ký nếu không có lỗi nào trong toàn bộ quá trình biên dịch. Android có thể truy xuất khoá công khai từ VM để xác minh chữ ký.

Khoá của VM được tạo từ hồ sơ DICE của VM, do các APEX và APK được gắn vào VM xác định, ngoài các tham số VM khác, chẳng hạn như khả năng gỡ lỗi.

Để xác định xem khoá công khai có phải từ một VM không mong muốn hay không, Android sẽ khởi động VM để xác định xem khoá có chính xác hay không. VM được khởi động khi khởi động sớm sau mỗi bản cập nhật APEX.

Với tính năng Xác minh quy trình khởi động của VM được bảo vệ, dịch vụ biên dịch chỉ chạy mã đã xác minh. Do đó, mã có thể xác định chỉ chấp nhận dữ liệu đầu vào đáp ứng một số điều kiện, ví dụ: chỉ chấp nhận tệp đầu vào khi tên và bản tóm tắt fs-verity được xác định trong danh sách cho phép.

Mọi API được hiển thị từ VM đều là bề mặt tấn công. Tất cả các tệp và tham số đầu vào đều được giả định là từ một ứng dụng không đáng tin cậy và phải được xác minh và kiểm tra kỹ trước khi xử lý.

Tính toàn vẹn của tệp đầu vào và đầu ra được VM xác minh, với các tệp được lưu trữ trên Android dưới dạng máy chủ tệp không đáng tin cậy, như sau:

  • Nội dung của tệp đầu vào phải được xác minh trước khi sử dụng bằng thuật toán fs-verity. Để tệp đầu vào có sẵn trong VM, hàm băm gốc của tệp đó phải được cung cấp trong một vùng chứa (APK) đóng góp vào hồ sơ DICE của VM. Với hàm băm gốc đáng tin cậy, kẻ tấn công không thể can thiệp vào dữ liệu đầu vào mà không bị phát hiện.
  • Tính toàn vẹn của tệp đầu ra phải được duy trì trong VM. Ngay cả khi tệp đầu ra được lưu trữ trên Android, trong quá trình tạo, tính toàn vẹn vẫn được duy trì với cùng định dạng cây fs-verity nhưng có thể được cập nhật linh động. Bạn có thể xác định tệp đầu ra cuối cùng bằng hàm băm gốc, được tách biệt trong VM. Dịch vụ trong VM bảo vệ các tệp đầu ra bằng chữ ký.

Môi trường phát triển Linux

Android vốn là hệ điều hành chính duy nhất không cho phép người dùng phát triển ứng dụng trên chính nền tảng đó. Với việc ra mắt môi trường phát triển Linux, chúng tôi mong muốn cung cấp một môi trường phát triển dựa trên Linux cho người dùng Android là nhà phát triển. Trong tương lai, chúng tôi dự định mở rộng nỗ lực để các đối tác có thể triển khai các trường hợp sử dụng VM cải tiến như chạy các ứng dụng giao diện người dùng đồ hoạ và thậm chí cả trò chơi.

Môi trường phát triển Linux có trên một số thiết bị và chạy trong một máy ảo không được bảo vệ.

Trường hợp sử dụng môi trường phát triển Linux

Hình 2. Trường hợp sử dụng môi trường phát triển Linux.

Quy trình cấp cao như sau:

  1. Để sử dụng môi trường phát triển Linux, hãy bật các tuỳ chọn cho nhà phát triển.
  2. Sau khi bạn bật các tuỳ chọn cho nhà phát triển, ứng dụng Terminal sẽ xuất hiện trên trình chạy trang chủ.
  3. Khởi chạy ứng dụng Terminal từ trình chạy trang chủ.
  4. Nếu cần, ứng dụng Terminal sẽ tải hình ảnh hệ điều hành xuống từ Play.
  5. Ứng dụng Terminal sử dụng Khung ảo hoá cho Android (AVF) để tạo máy ảo (VM).
  6. Sau đó, AVF chạy VM bằng hình ảnh hệ điều hành.
  7. Máy ảo khởi động hệ điều hành từ hình ảnh.
  8. Sau khi VM khởi động, WebView trong ứng dụng Terminal sẽ kết nối với một dịch vụ web trong máy ảo. Dịch vụ này cung cấp quyền truy cập vào thiết bị đầu cuối qua HTTP.
  9. Bạn tương tác với thiết bị đầu cuối bằng cách nhập các lệnh và xem dữ liệu đầu ra trong ứng dụng.

Các thành phần cấp cao của VM Linux như sau:

  • Ứng dụng Terminal: Một ứng dụng Android cung cấp giao diện thiết bị đầu cuối. Ứng dụng này sử dụng WebView để kết nối với một dịch vụ web đang chạy trong VM để tương tác. Ứng dụng này bị tắt theo mặc định. Hãy kích hoạt ứng dụng này trong phần Cài đặt cho nhà phát triển.
  • Khung ảo hoá cho Android (AVF): Hệ thống con hiện có của Android để tạo và quản lý VM. Hệ thống này yêu cầu sửa đổi tối thiểu để hỗ trợ hình ảnh hệ điều hành tuỳ chỉnh cho tính năng này.
  • máy ảo: Một VM mà AVF tạo ra. VM này lưu trữ dịch vụ thiết bị đầu cuối và AVF tạo dịch vụ này dành riêng cho chức năng của ứng dụng Terminal.
  • Hình ảnh hệ điều hành: Hình ảnh hệ điều hành dựa trên Debian đã được sửa đổi một chút từ Debian thượng nguồn. Ứng dụng Terminal tải hình ảnh này xuống từ một máy chủ Google bên ngoài. Hình ảnh này đóng vai trò là nền tảng cho hoạt động của VM.
  • Tác nhân khách: Phần mềm mới trong VM. Phần mềm này báo cáo trạng thái của hệ điều hành cho AVF và cung cấp quyền kiểm soát máy ảo.
  • ttyd: Phần mềm nguồn mở chạy trong VM triển khai tính năng mô phỏng thiết bị đầu cuối qua HTTP. WebView của ứng dụng Terminal kết nối với phần mềm này.
  • Trình quản lý chia sẻ kết nối Internet: Một hệ thống con hiện có của Android. Hệ thống này cung cấp quyền truy cập mạng cho máy ảo bằng cách chia sẻ kết nối Internet của VM với thiết bị chạy Android.

An toàn về nội dung trên thiết bị

An toàn về nội dung trên thiết bị là một giải pháp an toàn về nội dung bảo đảm quyền riêng tư do Nhóm An toàn về nội dung trên thiết bị tạo ra. Giải pháp này thực hiện việc phân loại an toàn về nội dung cho nhiều sản phẩm của Google trên các thiết bị 1P/3P và bảo vệ hơn 1 tỷ người dùng khỏi nội dung vi phạm mà không cần gửi dữ liệu người dùng trở lại máy chủ của Google. Giải pháp này được thiết kế để tuân thủ các nguyên tắc của Lõi điện toán riêng tư (PCC) nhằm xác minh quá trình giao tiếp minh bạch và bảo đảm quyền riêng tư giữa ứng dụng, máy ảo (VM) và ngăn chặn mọi hành vi xâm nhập dữ liệu người dùng. dữ liệu. Bạn có thể sử dụng giải pháp này cho những việc như bật tính năng phát hiện hành vi lạm dụng trên thiết bị, chẳng hạn như tính năng phát hiện mối đe doạ trực tiếp của Play Protect.

Trong trường hợp sử dụng này, hệ thống sẽ sử dụng các máy ảo được bảo vệ để chạy mô hình phân loại cho tính năng phát hiện mối đe doạ trực tiếp của Play Protect, từ đó giúp tăng cường đáng kể tính bảo mật của các mô hình và biện pháp bảo vệ. Điều này ngăn chặn quá trình thiết kế ngược và thao túng của kẻ tấn công, ngay cả trên các thiết bị đã root, bằng cách chỉ xác minh các lần chạy mã được phê duyệt và các hoạt động của mã đó bị ẩn khỏi các quy trình bên ngoài.

Các quy trình cấp cao như sau:

  1. Tính năng phát hiện mối đe doạ trực tiếp sẽ ping Dịch vụ điện toán riêng tư để khởi động VM. Dịch vụ điện toán riêng tư là một trung gian tập trung vào quyền riêng tư giữa PCC và máy chủ đám mây
  2. Dịch vụ điện toán riêng tư khởi động VM và lấy khoá công khai của VM
  3. Dịch vụ điện toán riêng tư chuyển quyền sở hữu VM cho tính năng phát hiện mối đe doạ trực tiếp của Play Protect
  4. Dịch vụ điện toán riêng tư gửi chứng thực và khoá công khai đến máy chủ
  5. Máy chủ xác minh chứng thực và mã hoá các biện pháp bảo vệ bằng khoá công khai của VM
  6. Sau đó, máy chủ sẽ gửi các biện pháp bảo vệ đã mã hoá trở lại thiết bị
  7. Sau đó, tính năng phát hiện mối đe doạ trực tiếp trên thiết bị có thể sử dụng biện pháp bảo vệ đã mã hoá trong VM. VM là thực thể duy nhất có khoá riêng tư có thể giải mã các biện pháp bảo vệ

Các thành phần cấp cao như sau:

  • Máy chủ: Mã hoá và cung cấp các biện pháp bảo vệ đã mã hoá cho VM
  • Dịch vụ điện toán riêng tư: Dùng để khởi động VM và làm trung gian cho quá trình giao tiếp với VM, đồng thời cho thấy tính minh bạch rằng không có dữ liệu người dùng nào đi qua Astrea đến máy chủ
  • Tính năng phát hiện mối đe doạ trực tiếp của Play Protect:
    • Chứa và sử dụng các bộ phân loại mô hình do tính năng An toàn về nội dung trên thiết bị cung cấp
    • Chấp nhận quyền sở hữu VM và giữ quyền sở hữu đó để sử dụng cho việc phân loại
    • Khởi động và dừng VM khi cần.

Nhà sản xuất thiết bị gốc

Nhà sản xuất thiết bị gốc có thể sử dụng AVF cho các trường hợp sử dụng tuỳ chỉnh. Ví dụ: OPPO sử dụng AVF để bật không gian điện toán riêng tư AI. Ứng dụng đầu tiên của không gian này cung cấp giải pháp kiểm soát rủi ro trên thiết bị cho các ứng dụng, chạy trong máy ảo. Hệ thống này chống lại các mối đe doạ từ các hoạt động bất hợp pháp, cung cấp biện pháp bảo vệ trước nhiều mối nguy hiểm.