Lưu ý: Tôi làm việc trong nhóm bảo mật Ubuntu và đã giúp thiết kế câu chuyện giam cầm ứng dụng cho Ubuntu. Tôi sắp xếp lại các câu hỏi cho rõ ràng.
Q: "Các gói nhấp chuột sẽ an toàn hơn đối với dữ liệu người dùng và hệ thống hay nó sẽ giống nhau?"
Trả lời: Nói chung, các gói nhấp chuột an toàn hơn các cuộc tranh luận liên quan đến dữ liệu hệ thống và người dùng.
Các gói nhấp không bao gồm các tập lệnh bảo trì chạy bằng root khi cài đặt như các gói gỡ lỗi. Các gói nhấp chuột chỉ đơn giản là giải nén và sau đó các móc được cung cấp bởi hệ thống sẽ được sử dụng nếu khai báo bằng nhấp chuột. Ví dụ: nhấp chuột có thể tuyên bố sử dụng móc máy tính để bàn để tạo tệp máy tính để bàn hoặc móc AppArmor để tạo hồ sơ AppArmor cho ứng dụng. Vì bao bì deb có khái niệm về các tập lệnh bảo trì được thiết kế để cho phép tùy chỉnh rộng rãi phần mềm hoặc hệ thống, các gói deb chỉ nên được cài đặt từ một nguồn đáng tin cậy, ví dụ như một kho lưu trữ đã ký từ một bản phân phối như Ubuntu. Các gói nhấp có thể được cài đặt trực tiếp và bạn có thể chắc chắn chắc chắn rằng cài đặt gói sẽ không làm hỏng hệ thống của bạn. Tuy nhiên, đó chỉ là một phần của câu chuyện-- nếu bạn cài đặt gói nhấp chuột từ một nguồn không đáng tin cậy,
Sức mạnh thực sự của nhấp chuột là khi nó được sử dụng kết hợp với kho lưu trữ phần mềm với các chính sách mạnh mẽ. Ví dụ: bảo mật của gói nhấp được cài đặt từ Ubuntu App Store thường cao hơn so với một bản sửa lỗi được cài đặt từ kho lưu trữ đáng tin cậy. Điều này là do trong Ubuntu App Store, mô hình tin cậy là các ứng dụng được coi là không đáng tin cậy * và các chính sách và kiểm tra được đưa ra để đảm bảo rằng các gói nhấp chuột trong cửa hàng có một bảng kê khai bảo mật thích hợp và do đó chạy trong sự giam cầm rất nghiêm ngặt. Trái ngược với các gói gỡ lỗi trong kho lưu trữ Ubuntu - mô hình tin cậy là phần mềm và bao bì gỡ lỗi được coi là đáng tin cậy và nói chung phần mềm không chạy trong sự giam cầm (mặc dù có rất nhiều trường hợp ngoại lệ khi hồ sơ AppArmor được gửi cùng với phần mềm để bảo vệ chống lại lỗi bảo mật).
- Các gói đáng tin cậy cũng có thể được phân phối qua Ubuntu App Store. Mặc dù không phổ biến, chúng thường được Canonical phát triển và có thể hoặc không thể chạy dưới sự giam cầm.
Để trả lời các câu hỏi cụ thể của bạn:
Q: Nhấp chuột có dựa trên cùng hệ thống với deb không?
A: Định dạng gói cấp thấp cho nhấp chuột là deb. Tuy nhiên, bao bì nhấp chuột đơn giản hơn nhiều ở chỗ nó sử dụng bảng kê khai khai báo và móc nối thay vì các tệp đóng gói truyền thống và tập lệnh bảo trì.
H: AppArmor có thể cung cấp quyền truy cập đặc quyền vào các ứng dụng mà không cần tương tác của người dùng không?
Trả lời: AppArmor là root mạnh và có thể cho phép hoặc từ chối truy cập vào tài nguyên hệ thống (tệp, DBus, mạng, v.v.) dựa trên chính sách bảo mật đã xác định. Bản thân một gói nhấp chuột không bắt buộc phải gửi bản kê khai bảo mật AppArmor hoặc gửi bản kê khai bảo mật AppArmor 'an toàn'. Điều làm cho hệ thống an toàn là sự kết hợp giữa nhấp chuột và chính sách của cửa hàng cung cấp các gói nhấp chuột. Các gói nhấp được phân phối qua Ubuntu App Store sẽ sử dụng chính sách AppArmor rất hạn chế và không cho phép các hành động đặc quyền đằng sau hậu trường (ví dụ: một ứng dụng chạy theo chính sách này không thể thực thi các chương trình trên hệ thống phía sau hậu trường, truy cập tài khoản facebook của bạn , đánh cắp các phím gpg hoặc ssh của bạn, thao tác mạng, v.v.)
H: Người dùng có được nhắc nhở khi cài đặt để cấp quyền truy cập cho ứng dụng như trên Android không? (ví dụ: "ứng dụng này có thể quét / nhà của bạn và truy cập mạng")
Trả lời: Không. Một gói nhấp chuột có thể được cài đặt mà không cần sử dụng các công cụ lowlevel. Trên Ubuntu, các gói nhấp phải được cài đặt qua cửa hàng Ứng dụng Ubuntu (xem phần trên) và do các chính sách của cửa hàng Ứng dụng Ubuntu kết hợp với khả năng nhấp và hệ thống Ubuntu, không cần phải nhắc nhở cài đặt theo ngữ cảnh, không cần nhấp chuột. Ubuntu có thể làm điều này bởi vì các ứng dụng được cài đặt từ cửa hàng Ứng dụng Ubuntu chạy trong sự hạn chế hạn chế (nghĩa là chúng không thể làm điều xấu sau hậu trường) và khi một ứng dụng cần truy cập bổ sung, nó sẽ sử dụng API được kiểm soát có thể bao gồm nhắc nhở.
Trong trường hợp API đặc quyền, chúng tôi có khái niệm về người trợ giúp đáng tin cậy để người dùng sẽ có một dấu nhắc theo ngữ cảnh để cho phép hoặc từ chối quyền truy cập (với (bộ đệm) có thể thu hồi được để người dùng không hỏi mỗi lần). Ví dụ: nếu ứng dụng cần truy cập dịch vụ định vị (người trợ giúp đáng tin cậy), người dùng sẽ được nhắc cho phép truy cập tại thời điểm ứng dụng cố gắng sử dụng dịch vụ định vị, cung cấp ngữ cảnh để người dùng có thể tạo quyết định đã được thông báo. Điều tương tự sẽ xảy ra đối với ghi video và âm thanh. Thông thường, chúng tôi không cần phải có lời nhắc bảo mật và chúng tôi có thể cho phép truy cập dựa trên các tương tác do người dùng điều khiển với ứng dụng. Ví dụ: nếu một ứng dụng muốn tải lên một hình ảnh, sẽ có một hộp thoại để chọn hình ảnh. Đằng sau, vì ứng dụng không được phép truy cập thư mục ~ / Pictures, nó sẽ sử dụng API trung tâm nội dung sẽ khởi chạy bộ chọn tệp thư viện để người dùng chọn ảnh để tải lên. Trung tâm nội dung sau đó lấy hình ảnh từ thư viện và đưa nó cho ứng dụng. Theo cách này, không có hộp thoại bảo mật, chỉ có một tương tác tự nhiên cho người dùng, nhưng đằng sau hậu trường, có một quyết định tin tưởng ngụ ý.
H: Liên quan đến câu hỏi này: .apk và nhấp có ngôn ngữ tương tự liên quan đến chính sách và trải nghiệm người dùng không?
Trả lời: Không, không có yêu cầu cài đặt nào vì những lý do đã nêu ở trên. Các quyền của Android và quyền bảo mật cho các gói nhấp chuột như được xác định cho Ubuntu có một số điểm tương đồng, nhưng khác nhau và được triển khai khác nhau.
H: Cụ thể, với nhấp chuột, một ứng dụng có thể gửi tất cả dữ liệu riêng tư của tôi qua mạng mà tôi không biết hoặc sẽ bị giới hạn theo một cách nào đó để ngăn chặn điều này?
Trả lời: Nếu bạn cài đặt một nhấp chuột từ một nguồn không đáng tin cậy, vâng, nó có thể làm bất cứ điều gì. Nếu bạn cài đặt một lần nhấp từ Ubuntu App Store, không, một ứng dụng không thể gửi tất cả dữ liệu của bạn qua mạng vì nó không có quyền truy cập vào nó. Tất nhiên, một ứng dụng có thể xuất hiện để làm một việc và làm một việc khác vì vậy nếu người dùng cấp quyền truy cập vào dịch vụ định vị hoặc cấp cho ứng dụng quyền truy cập vào hình ảnh, thì ứng dụng có thể xấu với dữ liệu đó - nhưng đó là nơi xếp hạng / đánh giá và chính sách bảo mật của App Store có hiệu lực. Nếu một ứng dụng như thế này được báo cáo, nó sẽ được điều tra. Nếu thích hợp, ứng dụng sẽ bị xóa khỏi cửa hàng, ứng dụng sẽ bị xóa khỏi mọi thiết bị được cài đặt và quyền truy cập App Store của nhà phát triển sẽ bị thu hồi.
H: Có thể nói rằng các gói nhấp chuột an toàn hơn các cuộc tranh luận, nhưng ít mạnh mẽ hơn vì chúng bị hạn chế hơn?
A:Như có thể thấy từ trên, câu trả lời không đơn giản. Một nhấp chuột của chính nó có thể gửi phần mềm có thể làm bất cứ điều gì. Định dạng đóng gói nhấp chuột là mục đích chung có chủ đích và có thể được sử dụng theo bất kỳ số cách nào và hoàn toàn không cụ thể đối với Ubuntu. Đối với Ubuntu, sự kết hợp của các chính sách nhấp chuột, API API, AppArmor và App Store cung cấp một môi trường rất mạnh mẽ để các nhà phát triển cung cấp ứng dụng cho người dùng theo cách an toàn và dễ sử dụng cho mọi người. Tiện ích của chính các ứng dụng phụ thuộc vào các API được cung cấp cho các ứng dụng bởi hệ thống cơ bản. Bộ API ban đầu sẽ được cung cấp trên điện thoại giao hàng đầu tiên của Ubuntu sẽ cho phép các nhà phát triển tạo ra tất cả các loại ứng dụng thú vị và hữu ích bằng cách sử dụng API và SDK phong phú.