[McAfee] Kiểm tra bảo mật trên thiết bị Android (phần 3)

[McAfee] Một trong những cách tốt nhất để phát triển các ứng dụng Android an toàn là tham gia thử nghiệm thâm nhập (bút), thực tế là cố gắng xâm nhập vào ứng dụng của bạn giống như kẻ tấn công có thể làm. Đây là bài thứ ba trong loạt bài viết về các ứng dụng Android thử nghiệm bút. Ở bài đầu tiên, chúng tôi thiết lập môi trường thử nghiệm và lưu lượng truy cập. Trong bài thứ hai, chúng tôi đã thảo luận về một số công cụ và kỹ thuật proxy. Bài viết này, chúng tôi sẽ xem xét việc xem lại tệp kê khai Android.

Mỗi tệp nhị phân Android được đóng gói với tệp Andoridmanifest.xml, cung cấp cho hệ thống các thông tin cần thiết như quyền, ý định, hoạt động, dịch vụ, chương trình phát sóng, v.v. Nó cũng hoạt động như một tệp cấu hình cơ bản.

Truy cập

Bạn có thể có được tệp kê khai bằng cách thay đổi tiện ích mở rộng nhị phân Android từ .apk sang .zip. Tuy nhiên, thay đổi này không tạo ra một định dạng có thể đọc được. Để chuyển đổi tệp kê khai thành định dạng có thể đọc được, bạn có thể sử dụng Apktool để phân tách nhị phân Android. Khi tệp nhị phân được phân tách, tệp kê khai có thể đọc được. Bạn cũng có thể sử dụng Manifest Explorer để xem tệp kê khai.

Lệnh:

Apktool d binarypath\binaryname

20160908-android-pen-1

Ở đây chúng ta thấy tệp kê khai cho ứng dụng thử nghiệm:

20160908-android-pen-2

Bạn nên xem lại một số yếu tố trong tệp kê khai.

  1. Tên gói: Tên gói là tên duy nhất của ứng dụng, với dữ liệu ứng dụng thường có trong thư mục / dữ liệu / dữ liệu / packagename trong thư mục Android. Trong khi xem xét Packagename, rất hữu ích để xác định và kiểm tra thư mục ứng dụng cho bất kỳ dữ liệu nhạy cảm nào.
  2. Quyền: Một ứng dụng không nên yêu cầu các quyền không cần thiết. Chỉ nên cấp quyền theo yêu cầu của ứng dụng. Ví dụ: nếu một ứng dụng không cần truy cập vào GPS hoặc máy ảnh, thì không nên yêu cầu các quyền này.

android: ProtectionLevel xác định các rủi ro liên quan đến quyền. Nếu quyền được đánh dấu là nguy hiểm, bạn nên xem lại quyền này vì nó có thể cấp quyền kiểm soát cho thiết bị hoặc dữ liệu người dùng. Một số quyền được phân loại là nguy hiểm:

  • Lịch
  • Máy ảnh
  • Liên lạc
  • Vị trí
  • Microphone
  • Điện thoại
  • Cảm biến
  • Tin nhắn
  • Lưu trữ

Để biết thông tin chi tiết về các quyền tham khảo liên kết này.

  1. Các thành phần được xuất: Phần tử này cung cấp các thành phần của một ứng dụng (nhà cung cấp, hoạt động, dịch vụ hoặc người nhận) được gọi bởi các thành phần ứng dụng khác.

Nếu giá trị này được đặt thành true, các thành phần khác có thể truy cập các thành phần của ứng dụng này.

Ví dụ: nếu trong một ứng dụng ngân hàng, một hoạt động tuyên bố tài khoản của chế độ xem, thì Haiti đã xuất một giá trị được đặt thành đúng, một ứng dụng độc hại có thể gọi nó. Do đó, giá trị này phải được đặt thành false.

android: export = "false

Một ví dụ về ứng dụng Fourgoats với giá trị xuất được đặt thành true.

20160908-android-pen-3

  1. Cờ Android (có thể gỡ lỗi, sao lưu): Tệp kê khai chứa thông tin về cờ Android.

Sao lưu Android: Cho phép ứng dụng tham gia sao lưu. Điều này là không mong muốn trong trường hợp ứng dụng có dữ liệu nhạy cảm và dữ liệu người dùng có nguy cơ do sao lưu.

Có thể gỡ lỗi Android: Cờ này cho biết liệu ứng dụng Android có thể được gỡ lỗi hay không. Khi ứng dụng chuyển từ thử nghiệm sang sản xuất, cờ gỡ lỗi sẽ được đặt thành false. Nếu cờ này được đặt thành đúng, mọi thực thể có quyền truy cập vào thiết bị đều có thể thực thi mã theo quyền của ứng dụng và cũng có thể lấy dữ liệu nhạy cảm từ ứng dụng.

Trong quá trình xem xét bảo mật, các cờ này phải được đặt thành false:

android: debuggable = "false" 

android: allowBackup = "false
  1. Cấp API

Thuộc tính android: minSdkVersion xác định mức API tối thiểu mà ứng dụng yêu cầu để chạy trên trình giả lập hoặc thiết bị. Nếu phiên bản thiết bị sớm hơn minsdkversion, ứng dụng có thể không chạy trên thiết bị. Không có ứng dụng nên hỗ trợ các phiên bản lỗi thời. Cấp API mới nhất là 24.

Xem thêm:

Nhấc máy và gọi cho chúng tôi ngay hôm nay

Công ty TNHH PACISOFT Việt Nam (PACISOFT Trading)

MUA Bản quyền phần mềm tại HÀ NỘI & khu vực phía Bắc

Địa chỉ: Tòa nhà Việt Á, số 9 Duy Tân, Quận Cầu Giấy, Tp Hà Nội
Tel: (024) 3915 6886 | Email: hanoi@pacisoft.com

MUA Bản quyền phần mềm tại TP HỒ CHÍ MINH & KV phía Nam

HCM: Tòa nhà Abacus Tower, số 58 Nguyễn Đình Chiểu, Quận 1, Tp HCM
CS 2: Khu công nghệ phần mềm, ĐH Quốc Gia Tp HCM, Linh Trung, Q. Thủ Đức, Tp HCM
Tel: (028) 36 100 816 | Email: hcm@pacisoft.com