Chương 1: Tổng quan về khóa luận. Chương 2: Cơ sở lý thuyết, các nghiên cứu liên quan và xu hướng nghiên cứu mới Chương 3: Trinh bày các phương pháp thực hiện dé giải quyết van dé. Chương 4: Trình bày kết quả thực nghiệm và đánh giá các phương pháp được chọn đề khảo sát. Chương 5: Nêu kết luận, định hướng nghiên cứu trong tương lai.
CHƯƠNG 2: CƠ SỞ LÝ THUYÉT VÀ CÁC NGHIÊN CỨU LIÊN QUAN Tại chương này trình bày các cơ sở lý thuyết, nghiên cứu liên quan, xu hướng nghiên cứu mới đối với van đề xây dựng hệ thống phát hiện mã độc Andoid bằng cách cấp quyền truy cập và học cộng tác được đề cập trong khóa luận. Tổng quan về cấp quyền truy cập và top quyền truy cập Khi một ứng dụng nào đó cần truy cập đến một tính năng đặc biệt trên thiết bị Android của bạn, nó dang hỏi hệ điều hành có cho phép sử dụng hay không, và quyên truy cập đó chính là Permission. Ví dụ, khi ứng dụng camera của bạn muốn đính kèm di liệu GPS vào ảnh, nó phải hỏi Android xem nó có được vào GPS dé định vị hay không. Tương tự, khi một ứng dụng tin nhắn muốn gửi SMS, nó phải liên hệ với Android dé xem có được quyên làm chuyện này không.
Permission không chỉ xuất hiện ở Android, nó cũng có mặt ở iOS và Windows 10 Mobile với lý do tương tự, cách hoạt động cũng tương tự. Mục dich của quyền truy cập là dé đảm bảo sự an toàn và quyền riêng tư cho người dùng. Điện thoại của chúng ta giờ là một "kho tàng" đữ liệu cá nhân trong đó nên việc bảo vệ như thế này là cần thiết. Trong điện thoại có đủ hết mọi loại dữ liệu nhạy cảm, từ tin nhắn, hình ảnh, video cho đến dữ liệu duyệt web hay tài khoản ngân hàng.
Thậm chí bộ định vị GPS, dữ liệu di động camera hay micro của smartphone cũng là thứ nhạy cảm vì nó có thé ghi lại hình ảnh của ban hay những gì bạn nói, cho người khác biết bạn đang ở đâu, bạn đang nói chuyện với ai, nội dung bạn nói là ` gì. Năm 2011 và 2013, đã từng có một sỐ ứng dụng và game xuất hiện ngay ở Việt Nam, chúng lợi dụng việc người dùng không chú ý đến quyền truy cập dé lay quyền gửi nhận SMS và liên tục nhắn tin đến một tổng đài nào đó dé thu lợi. Dang chú ý, việc gửi SMS này diễn ra hoàn toàn im lặng và bạn không hề hay biết, chỉ khi kiểm tra lại tài khoản mới thay bị thâm hụt đáng kể. Những ứng dụng dạng này đôi khi vẫn còn bị bắt gặp trên Play Store.
17:04 : al F 17:04 #9 CuocChienThayMa &$ Doraemon và thần thú Do you want to install this application? Do you want to install this application? Allow this application to Allow this application to e Storage e Storage Network communication Network communication Services that cost you money Services that cost you money System tools Hide Hide Network communication Network communication Hardware controls we work nection Cancel Install Cancel Hình 2.1: Game lợi dung người dùng dé lấy quyền truy cập Các quyên truy cập của Android có thê được phân loại thành ba quyên truy cập chính: quyên truy cập trong thời gian cài đặt, quyền truy cập trong thời gian chạy, và quyên truy cập đặc biệt. Quyên truy cập trong thời gian cài đặt cấp cho một ứng dụng quyên truy cập bị giới hạn vào dữ liệu bị hạn chế và do đó, chúng cho phép ứng dụng thực hiện các hành động bị hạn chế đến hệ thống hoặc những ứng dụng khác một cách ít ảnh hưởng nhất. Khi một nhà phát triển tuyên bố các quyền truy cập trong thời gian cài đặt, hệ thống sẽ tự động cấp quyền mà không cần thông báo cho người dùng cuối. Có hai loại quyền truy cập trong thời gian cài đặt tương ứng được gọi là quyền truy cập bình thường và quyền truy cập chữ ký: -Quyén truy cập bình thường cho phép truy cập vào dữ liệu và hành động gây rủi ro tối thiểu cho hệ thống hoặc sự riêng tư của người dùng cuối.
Chúng có thé được sử dụng hoặc xác định thông qua một giá tri của mức bảo vệ được cai đặt thành mức bình thường. -Quyền truy cập chữ ký xảy ra từ khi chúng được định nghĩa trong một ứng dụng Android khác, quyền truy cập chữ ký chỉ được cấp nếu ứng dụng yêu cau và khai báo được ky thông qua cùng một chứng chỉ. Ngoài ra, chúng có thể sử dụng hoặc xác định thông qua bộ giá tri của mức bảo vệ dé ký. Quyên truy cập thời gian chạy, còn được gọi là quyền truy cập nguy hiểm, cấp cho ứng dung 6 quyền truy cập bổ sung vào dữ liệu bằng cách cho phép nó thực hiện các hành động về cơ bản ảnh hưởng đến hệ thống và các ứng dụng khác.
Khi một ứng dung Android yêu cầu quyền truy cập trong thời gian chạy, hệ thống đưa ra lời nhắc và chờ đợi được cấp hay không bởi người dùng cuối. Quyền truy cập thời gian chạy có thể được sử dụng hoặc xác định thông qua giá trị mức bảo vệ được cài đặt thành mức nguy hiểm. Cuối cùng, các quyền truy cập đặc biệt chỉ có thể được xác định bởi các nhà sản xuất thiết bị gốc (OEM) dé cung cấp kiểm soát truy cập liên quan đến một số hành động tiêu tốn nhiều năng lượng, chăng hạn như quyền truy cập vào các ứng dụng khác. Chính xác hơn, chúng được liên kết chặt chẽ với một hoạt động ứng dung (app op) liên quan đến kiểm soát truy cập và chúng có thé được sử dụng hoặc xác định thông qua gia tri mức bảo vệ được đặt thành mức appop.
Top quyền truy cập hiểu đơn giản là các tập hợp con được chọn từ nhóm lớn quyền truy cập trên thiết bi Android. Dựa theo mức độ phô biến, mức độ hiệu quả về an toàn thông tin của quyền truy cập đó mà người ta đưa nó vào cùng nhóm. Tiếp theo chúng tôi sẽ tiếp cận các tính năng đặc biệt, được gọi là bản đồ quyền truy cập (Perm- Maps), kết hợp thông tin liên quan đến các quyền truy cập của Android và mức độ nghiêm trọng tương ứng của chúng. Bản đồ quyền truy cập Mặc dù hau hết các kỹ thuật được sử dụng trong tài liệu bao gồm cả phương pháp tiếp cận tĩnh và động, thì phương pháp tĩnh vẫn được mong muốn nhất vì nó có thé phân tích các ứng dụng mà không cần bắt buộc phải thực thi chúng.
Theo đó, chúng tôi đề xuất các tính năng mới, được gọi là Perm-Maps, có nguồn góc từ phân tích tĩnh phần mềm độc hại. Chính xác hơn, Perm-Maps là một ma trận thưa thớt nơi chứa các quyên truy cập của Android và các cấp độ mức độ nghiêm trọng tương ứng của chúng, được biéu diễn liên quan dưới dang các điểm cố định và được biéu diễn theo toạ độ x — y. Như được mô tả trong phần sau, Perm-Maps được đề xuất có thể giải quyết ba vấn đề chính: (i) Các nhà phát triển Android độc hại có thé xác định các quyền truy cập tùy chỉnh để thực hiện một số hoạt động bất hợp pháp, chăng hạn như đánh cắp dữ liệu hoặc khởi động các cuộc tấn công mạng [8]. Do đó, một nhà phát triển mã độc có thể xác định một số quyền ở mức độ nghiêm trọng thấp dé thực hiện một số hành động bat hợp pháp mà không thông báo cho người dùng cuối; (iii) Vi PermMaps đại diện cho các tinh năng tinh chỉ được trích xuất từ tệp kê khai, chúng không thé bị ảnh hưởng bởi các công cụ obfuscator nồi tiếng, như DexGuard [11], ProGuard [12] và Obfuscapk [13].1 Quy trình tạo Perm-Maps Việc tạo Perm-Map chủ yếu bao gồm bốn bước sau: Bước 1.
Trích xuất các quyền của Android và mức độ bảo vệ tương ứng. Gán số nhận dạng (IDp) cho bất kỳ quyền truy cập Android. Chỉ định một số nhận dang (ID) cho bat kỳ mức độ nghiêm trọng nao. Tạo Perm-Maps bằng cách sử dụng các cặp ID (IDp; ID) dưới dạng tọa độ của các điểm có định trong mặt phẳng x - y.
Bước đầu tiên được thực hiện băng cách sử dụng một SỐ công cụ hoặc thư viện dành cho việc phân tích tĩnh các phần mềm độc hại. Khác biệt về phương pháp tiếp cận có thể hình dung từ quá trình tạo từ điển của các quyền truy cập nồi tiếng của Android và sự bảo vệ của chúng bang cách tìm chúng từ tài liệu chính thức [31]. Ngoài ra, thẻ <permission> có thé được sử dụng dé được biết mức độ bảo vệ của các quyền truy cập tùy chỉnh. Đây là phương pháp tiếp cận được áp dụng bởi một số công cụ dịch ngược nồi tiếng nhất trong các công cụ kỹ thuật, như Androguard [32].
Chính xác hơn là đối với mỗi quyền truy cập được khai báo trong tệp Android Manifest, nó có thể có được mức bảo vệ tương ứng bằng cách kiểm tra xem quyên truy cập được xem xét có được biết đến hay không; nếu không thì nó chỉ định một mức độ bảo vệ nguy hiểm khác. Tiếp theo, bước thứ hai và thứ ba được thực hiện bằng cách tạo hai từ điển để chuyên đôi từng quyền truy cập của Android và từng mức độ nghiêm trọng tương ứng thành một số ID duy nhất. Cuối cùng, đối với mỗi ứng dụng được phân tích, bước thứ tư được tiễn hành bang cach xem xét mỗi cặp số ID (IDp; ID) dưới dạng tọa độ của một điểm cé định va do đó, lưu trữ thông tin đã chuyền đổi trong một ma trận thưa thớt. Ví dụ, để p1 và p2 là hai quyền truy cập Android và cho phép s3 và s2 tương ứng với mức độ bảo mật của chúng.
Chúng tôi có thé coi hai cặp tọa độ C1= (p1, s3) và C2= (p2, s2) và vẽ hai điểm theo mặt phang toa độ x — y. trong đó trục x và y báo cáo quyền va mức độ nghiêm trọng tương ứng. Tuy nhiên, vì mức độ bảo mật giữa chúng có thé khác 8 nhau, cho nên chúng tôi có thé sử dụng thang màu (như RGB hoặc thang xám) dé nhận xét những sự khác biệt. Hình 2 cho thấy toàn bộ quy trình làm việc dé có được một Perm-Map.
Textual Information ['android.RNRITE SETTINGS', "dangerous", "android.SEND SMS', 'dangerous', "¿ d.CALL_PHONE*, 'dangercus", ‘android.EXPAND_STATUS_BAR’, d.WRITE_SETTINGS', "dangerous", "android.SEND SMS", 'dangerous', 'e ['android.SET_NALLPAPER', 'normal', ‘android.READ_PHONE_STATE", "dàangerou3s" Dictionaries Creation Permission ID ID [wam stmws| 0° | Information | dergerous [0] CALL PHONE 1 ñ 1 SET_WALLPAPER 2 Mapping 2 Perm-Maps Creation 4 8 C1 = (p1,s3) = (1,3).2: Quy trinh tao Perm-Maps Tiép theo chúng tôi sẽ tìm hiéu vê khái niệm học cộng tác và các khái niệm, van dé liên quan.