Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 60 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
60
Dung lượng
1,9 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC QUY NHƠN ĐINH TRỌNG HIẾU PHÁT HIỆN KHẢ NĂNG RÒ RỈ THÔNG TIN RIÊNG TƢ TRONG ỨNG DỤNG ANDROID CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH MÃ SỐ: 8480101 NGƢỜI HƢỚNG DẪN: TS PHẠM VĂN VIỆT LỜI CAM ĐOAN Tôi xin cam đoan luận văn cơng trình nghiên cứu tơi, khơng chép cơng trình khoa học trƣớc Các kết nêu luận văn có nguồn gốc rõ ràng đƣợc trích dẫn đầy đủ Luận văn đƣợc hoàn thành thời gian làm Học viên Cao học Khoa Công nghệ thông tin, Trƣờng Đại học Quy Nhơn Tôi xin chịu hoàn toàn trách nhiệm luận văn Quy Nhơn, tháng năm 2021 Học viên Đinh Trọng Hiếu LỜI CẢM ƠN Tôi xin chân thành cảm ơn thầy cô giáo Khoa Công nghệ thông tin Trƣờng Đại học Quy Nhơn truyền đạt kiến thức bổ ích, đồng thời xin cảm ơn Phòng Đào tạo Sau đại học Trƣờng Đại học Quy Nhơn tạo điều kiện thuận lợi trình học tập thực luận văn tốt nghiệp Tôi xin gửi lời biết ơn chân thành đến TS Phạm Văn Việt, ngƣời tận tình hƣớng dẫn góp ý cho tơi suốt q trình nghiên cứu, cho tơi nhiều lời động viên nhƣ hƣớng dẫn quý báu để thực đề tài Trong q trình thực đề tài, không kể đến giúp đỡ, đóng góp ý kiến lời động viên từ phía gia đình, ngƣời thân, đồng nghiệp bạn bè xung quanh Điều thật động lực lớn giúp tơi hồn thành tốt đề tài nghiên cứu Xin chân thành cảm ơn! Học viên Định Trọng Hiếu MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN MỤC LỤC DANH MỤC TỪ VIẾT TẮT DANH MỤC HÌNH ẢNH MỞ ĐẦU CHƢƠNG TỔNG QUAN VỀ ANDROID VÀ VẤN ĐỀ RÒ RỈ THÔNG TIN RIÊNG TƢ TRONG CÁC ỨNG DỤNG 1.1 GIỚI THIỆU 1.2 GIỚI THIỆU TỔNG QUAN VỀ ANDROID 1.2.1 Kiến trúc chung Android 1.2.2 Các thành phần ứng dụng Android 1.2.3 Kiến trúc tệp APK 1.2.4 Tính bảo mật Android 10 1.2.5 Mơ hình phân quyền Android 11 1.2.6 Các cấp độ bảo vệ quyền Android 12 1.2.7 Phần mềm độc hại Android 13 1.3 RỊ RỈ VÀ PHƢƠNG PHÁP PHÂN TÍCH PHÁT HIỆN RỊ RỈ THƠNG TIN RIÊNG TƢ 15 1.3.1 Rị rỉ thơng tin tính bảo mật ứng dụng Android 15 1.3.2 Nguyên nhân làm rị rỉ thơng tin Android 16 1.3.3 Các phƣơng pháp phân tích để phát rị rỉ thơng tin 16 1.3.3.1 Phƣơng pháp phân tích tĩnh 16 1.3.3.2 Phƣơng pháp phân tích động 18 1.4 TIỂU KẾT CHƢƠNG 19 CHƢƠNG PHÁT HIỆN KHẢ NĂNG RỊ RỈ THƠNG TIN RIÊNG TƢ TRONG ỨNG DỤNG ANDROID SỬ DỤNG SVM 21 2.1 GIỚI THIỆU 21 2.2 PHÁT HIỆN KHẢ NĂNG RỊ RỈ THƠNG TIN TRONG ỨNG DỤNG ANDROID THEO HƢỚNG HỌC MÁY 23 2.2.1 Một số phƣơng pháp phân tích phát rị rỉ thơng tin theo hƣớng học máy 24 2.2.1.1 Phƣơng pháp phân tích dựa vào quyền truy cập theo hƣớng học máy 24 2.2.1.2 Phân tích dựa mã nguồn theo hƣớng học máy 24 2.2.3 Phát rị rỉ thơng tin riêng tƣ theo hƣớng mơ hình học máy 26 2.2.4 Kiến trúc chung mơ hình học máy 27 2.3 SỬ DỤNG SVM ĐỂ PHÁT HIỆN RỊ RỈ THƠNG TIN TRONG ỨNG DỤNG ANDROID 28 2.3.1 Cơ sở tốn học mơ hình SVM 28 2.3.2 Kiến trúc mơ hình SVM việc phát rị rỉ thơng tin 30 2.3.3 Ƣu điểm mơ hình SVM việc phát rị rỉ thơng tin 32 2.4 ĐẶC TRƢNG TRONG CÁC ỨNG DỤNG ANDROID 33 2.4.1 Đặc trƣng quyền truy cập 33 2.4.2 Đặc trƣng Broadcast Receivers 35 2.4.3 Đặc trƣng lớp API 37 2.4.4 Tiền xử lý liệu lựa chọn đặc trƣng 37 2.4.5 Vector hóa đặc trƣng 39 2.4.6 Giới thiệu phƣơng pháp đánh giá chéo 39 2.5 TIỂU KẾT CHƢƠNG 40 CHƢƠNG CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ 41 3.1 GIỚI THIỆU PHÁT BIỂU BÀI TOÁN 41 3.1.1 Giới thiệu 41 3.1.2 Phát biểu toán 41 3.2 CÀI ĐẶT MÔ PHỎNG 42 3.2.1 Môi trƣờng ngôn ngữ lập trình 42 3.2.2 Công cụ thƣ viện 42 3.2.3 Bộ liệu 42 3.2.4 Trích xuất lựa chọn đặc trƣng 43 3.2.4.1 Đặc trƣng quyền truy cập 43 3.2.4.2 Đặc trƣng đồ thị luồng điều khiển 44 3.2.5 Vector hóa đặc trƣng 45 3.3 KẾT QUẢ CÀI ĐẶT THỰC NGHIỆM VÀ ĐÁNH GIÁ 46 3.3.1 Kết cài đặt 46 3.3.2 Đánh giá kết mơ hình 48 3.3.3 Nhật xét kết cài đặt 48 3.4 TIỂU KẾT CHƢƠNG 48 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN .49 DANH MỤC TÀI LIỆU THAM KHẢO .50 QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN THẠC SĨ (BẢN SAO) DANH MỤC TỪ VIẾT TẮT Viết tắt IDC SDK API Tiếng Anh International Data Corporation Software Development Kit Application Programming Interface Tiếng Việt Tập đồn liệu quốc tế Cơng cụ phát triển phần mềm Giao diện lập trình ứng dụng APK Android Package Kit Gói ứng dụng Android SSL Secure Sockets Layer Tiêu chuẩn bảo mật Transport Layer Security Giao thức bảo mật TLS DANH MỤC HÌNH ẢNH Hình 1 Kiến trúc chung Android Hình Thành phần ứng dụng Android loại tính tĩnh Hình Tệp AndroidManifest.xml 12 Hình Quy trình dịch ngƣợc tệp Android để phát phần mềm độc hại dựa máy học 26 Hình 2 Kiến trúc chung mơ hình phân loại học máy 27 Hình Support Vector Machines - SVM 30 Hình Kiến trúc chung mơ hình SVM dùng để phát ứng dụng có khả làm rị rỉ thơng tin riêng tƣ 31 Hình Quyền phần mềm độc hại yêu cầu 34 Hình 10 quyền đƣợc yêu cầu hàng đầu tập liệu 35 Hình Cơ chế phát sóng Android 36 Hình Các Sender Receiver đƣợc yêu cầu ứng dụng độc hại 36 Hình Các API đƣợc yêu cầu ứng dụng độc hại 37 Hình 10 Các phƣơng pháp tiếp cận lựa chọn đặc trƣng 38 Hình 11 Vectơ nhị phân ứng dụng 39 Hình 2.12 Một ví dụ đánh giá chéo 10 lần 38 Hình Kết dự đốn mơ hình sau cài đặt với liệu thu thập đƣợc 47 MỞ ĐẦU Android hệ điều hành mã nguồn mở dành cho điện thoại di động, máy tính bảng, TV, tơ, thiết bị nhúng thiết bị cầm tay Nó đƣợc xây dựng dựa nhân Linux, Google phát triển phát hành vào ngày 23 tháng năm 2008 Bản chất nguồn mở hệ điều hành Android thu hút chấp nhận rộng rãi hệ thống nhiều nhà phát triển Hiện tƣợng thúc đẩy gia tăng theo cấp số nhân thiết bị chạy hệ điều hành Android vào lĩnh vực khác kinh tế Mặc dù phát triển mang lại tiến lớn công nghệ dễ dàng kinh doanh (thƣơng mại điện tử) tƣơng tác xã hội, chúng trở thành phƣơng tiện mạnh mẽ cho công mạng gián điệp gia tăng khơng kiểm sốt nhằm vào sở hạ tầng kinh doanh làm rò rỉ thông tin riêng tƣ ngƣời dùng thiết bị di động Có nhiều kỹ thuật cơng mạng khác tồn nhƣng công thơng qua ứng dụng độc hại làm rị rỉ thông tin riêng tƣ chiếm ƣu Phần mềm độc hại Android phát triển với tinh vi thơng minh đến mức chúng trở nên có khả chống lại hệ thống phát hiện tại, đặc biệt hệ thống dựa chữ ký Thời gian gần đây, kỹ thuật máy học trở thành lựa chọn có ƣu để chống lại kiểu ngụy tạo tính đƣợc triển khai phần mềm độc hại Android Với ý nghĩa tầm quan trọng toán nghiên cứu nhƣ ứng dụng, chọn “Phát khả rị rỉ thơng tin riêng tư ứng dụng Android” làm đề tài nghiên cứu cho luận văn Luận văn đƣợc kiến trúc thành 03 chƣơng Chương trình bày tổng quan hệ điều hành Android vấn đề rị rỉ thơng tin riêng tƣ ứng dụng chạy Android, số nghiên cứu tiêu biểu liên quan đến tốn Chương trình bày kiến thức sở mơ hình SVM phƣơng pháp áp dụng vào giải toán đặt luận văn Chương trình bày phƣơng pháp cài đặt thử nghiệm đánh giá Cuối chƣơng có phần Tiểu kết để tổng kết lại nội dung chƣơng Ngoài chƣơng nêu trên, luận văn kết thúc với phần Kết luận hướng phát triển để tóm tắt kết đạt đƣợc, vấn đề tồn dự kiến hƣớng phát triển luận văn 38 Thông thƣờng, kỹ thuật lựa chọn đặc trƣng đƣợc chia thành ba cách tiếp cận chính: lọc, trình bao bọc nhúng Trƣớc tiên, ta tìm kiếm khơng gian biến cho tập hợp tính sau đánh giá tính chọn cách áp dụng thuật toán học máy Bộ lọc sử dụng phân tích thống kê để xếp hạng đặc trƣng dựa thuộc tính thống kê tập liệu; đặc trƣng sau đƣợc giữ lại lọc dựa điểm số chúng Hạn chế kỹ thuật đặc trƣng đƣợc chọn mà khơng liên quan đến thuật tốn học máy q trình chọn tính Kỹ thuật nhúng chọn xây dựng mơ hình học lúc, ví dụ kỹ thuật thuật tốn rừng ngẫu nhiên Trƣớc áp dụng thuật toán lựa chọn đặc trƣng, ta cần làm tập liệu; đặc trƣng đƣợc cung cấp tảng Android điều quan trọng để cân nhắc việc lọc giữ đặc trƣng định để áp dụng thuật toán lựa chọn đặc trƣng Đối với thuật toán học máy, cần lựa chọn đặc trƣng khác phù hợp với mơ hình máy học để nâng cao độ phân loại xác Hình 10 Các phƣơng pháp tiếp cận lựa chọn đặc trƣng 39 2.4.5 Vector hóa đặc trƣng Mỗi ứng dụng mẫu tập liệu huấn luyện đƣợc thể dƣới dạng phiên với vectơ nhị phân tính nhãn lớp cho biết ứng dụng lành tính hay độc hại Hình 2.11 cho thấy thể tập liệu; tính có ứng dụng, đƣợc biểu thị 1, khơng có ứng dụng, đƣợc biểu thị Hình 11 Vectơ nhị phân ứng dụng 2.4.6 Giới thiệu phƣơng pháp đánh giá chéo Phƣơng pháp đánh giá chéo - Cross validation: Là phƣơng pháp đánh giá dựa vào việc phân chia liệu tập liệu huấn luyện gọi tập quan sát tập kiểm chứng gọi tập quan sát dùng để ƣớc lƣợng lỗi nhằm tìm tham số lựa chọn mơ hình máy học Đánh giá chéo phƣơng pháp dùng lỗi tập liệu kiểm thử để ƣớc lƣợng lỗi dự đoán 40 Một cách thƣờng đƣợc sử dụng là: Chia tập huấn luyện k tập khơng giao nhau, có kích thƣớc gần Tại lần kiểm thử, số k tập đƣợc lấy làm tập kiểm chứng Mơ hình đƣợc xây dựng dựa vào hợp k−1 tập cịn lại Kết cuối đƣợc tính cơng thức: ( ̂) ∑ ̂ Trong ̂ hàm ƣớc lƣợng tốt tập hàm, hàm mát để đo lƣờng sai số mơ hình Hình 2.12 Một ví dụ đánh giá chéo 10 lần Cách làm cịn có tên gọi k-fold cross validation Khi k = N, tức tập có phần tử, ta gọi kỹ thuật leave-one-out 2.5 TIỂU KẾT CHƢƠNG Chƣơng cung cấp tổng quan, sở lý thuyết phát khả rị rỉ thơng tin riêng tƣ ứng dụng Android sử dụng mơ hình SVM để phân loại ứng dụng độc hại có khả gây rị rỉ thơng tin, mơ hình tổng quát hệ thống đặc trƣng cần thiết để giải toán 41 CHƢƠNG CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ Chương sử dụng kiến thức giới thiệu liên quan đến tốn phát khả làm rị rỉ thơng tin ứng dụng Android nêu Chương ứng dụng mơ hình SVM đặc trưng trình bày Chương vào tốn phát khả rị rỉ thơng tin tiêng tư 3.1 GIỚI THIỆU PHÁT BIỂU BÀI TOÁN 3.1.1 Giới thiệu Với xuất gần tảng di động có khả thực thi phần mềm ngày phức tạp gia tăng việc sử dụng tảng di động ứng dụng nhạy cảm nhƣ ngân hàng, nguy gia tăng liên quan đến phần mềm độc hại nhắm vào thiết bị di động làm tăng khả rị rỉ thơng tin riêng tƣ ngƣời sử dụng Bài toán phát phần mềm độc hại có khả làm rị rỉ liệu nhƣ đặt thách thức tài nguyên hạn chế có sẵn thiết bị đặc quyền hạn chế đƣợc cấp cho ngƣời dùng Chƣơng trình bày hệ thống dựa máy học SVM để phát phần mềm độc hại có khả phát rị rỉ thơng tin thiết bị Android Nói cách khác, cho tập liệu có nhãn (học có giám sát), thuật tốn SVM dựa liệu học để xây dựng siêu phẳng tối ƣu đƣợc sử dụng để phân loại liệu 3.1.2 Phát biểu toán Bài toán chúng tơi trích xuất số đặc trƣng đƣợc giới thiệu Chƣơng huấn luyện mơ hình học máy vectơ hỗ trợ (SVM) theo cách ngoại tuyến (ngồi thiết bị), để tận dụng sức mạnh tính tốn cao Cụ thể, luận văn sử dụng liệu CIC-ANDMAL2017 ứng 42 dụng Android đƣợc thu thập Trên sở đó, luận văn sử dụng công cụ mã nguồn mở để giải mã ứng dụng thành tệp mã code ứng dụng Sau sử dụng đặc trƣng đƣợc giới thiệu để đƣa vào mơ hình học máy SVM để tiến hành huấn luyện Sau sử dụng mô hình SVM để dự đốn khả rị rỉ liệu điểm liệu tức ứng dụng dùng để kiểm tra phát 3.2 CÀI ĐẶT MƠ PHỎNG 3.2.1 Mơi trƣờng ngơn ngữ lập trình Để tiến hành cài đặt mơ phỏng, chúng tơi sử dụng hệ điều hành Windows 10, 64 bit ngơn ngữ lập trình Python 3.7 chạy tảng Anacoda Anaconda tảng phân phối miễn phí ngơn ngữ lập trình Python R cho tính toán khoa học (khoa học liệu, machine learning, xử lý liệu lớn, phân tích dự đốn, v.v.), nhằm mục đích đơn giản hóa việc quản lý triển khai gói Nó có Windows, MacOS Linux 3.2.2 Công cụ thƣ viện Luận văn sử dụng công cụ Androguard [5], Androguard công cụ python đầy đủ để làm việc với tệp Android Nó đƣợc thiết kế để hoạt động với Python Để tiến hành cài đặt mơ hình SVM, luận văn sử dụng thƣ viện Scikitlearn (Sklearn) Nó thƣ viện mạnh mẽ dành cho thuật toán học máy đƣợc viết ngôn ngữ Python Thƣ viện cung cấp tập cơng cụ xử lý tốn học máy 3.2.3 Bộ liệu Trong phần cài đặt sử dụng liệu phần mềm độc hại Android có tên CIC-AndMal2017 đƣợc cơng bố giới thiệu địa chỉ: 43 https://www.unb.ca/cic/datasets/andmal2017.html Bộ liệu Viện bảo mật mạng Canada đƣợc trƣờng đại học, công ty tƣ nhân nhà nghiên cứu độc lập sử dụng khắp giới Bộ liệu CICAndMal2017 đƣợc cung cấp công khai cho nhà nghiên cứu Bộ liệu chứa 10.854 mẫu (4.354 phần mềm độc hại 6.500 phần mềm không độc hại) từ số nguồn Đã đƣợc thu thập sáu nghìn ứng dụng an tồn từ GooglePlay đƣợc tạo vào năm 2015, 2016, 2017 3.2.4 Trích xuất lựa chọn đặc trƣng Để áp dụng hạt nhân nào, trƣớc tiên phải trích xuất đặc trƣng từ ứng dụng Các ứng dụng Android đƣợc đóng gói dƣới dạng tệp APK, tƣơng tự nhƣ tệp jar tiêu chuẩn Java Chúng sử dụng dự án mã nguồn mở Androguard [5] để xử lý tệp trích xuất đặc trƣng Androguard cung cấp giao diện dễ sử dụng để phân tích dịch ngƣợc ứng dụng Android 3.2.4.1 Đặc trƣng quyền truy cập Hệ thống Android chạy ứng dụng sandbox môi trƣờng ảo (Davik VM), nơi ứng dụng đƣợc cách ly khỏi việc can thiệp trực tiếp vào tài nguyên hệ thống ứng dụng khác Android quy định ứng dụng truy cập vào tài nguyên phần cứng, hệ điều hành ứng dụng đƣợc cài đặt khác thơng qua mơ hình quyền Ứng dụng cần đƣợc cấp quyền thích hợp để thực loại quy trình đặc quyền hệ thống Nhà phát triển ứng dụng cần khai báo quyền cần thiết cho ứng dụng tệp AndroidManifest.xml; ngƣời dùng cần cấp quyền đƣợc yêu cầu thời điểm cài đặt để tiến hành cài đặt khơng q trình cài đặt bị chấm dứt 44 Các ứng dụng APK phải bao gồm tệp kê khai, số thứ khác, yêu cầu quyền truy cập vào phần tử bị hạn chế định hệ điều hành Android Các yếu tố bao gồm quyền truy cập vào thiết bị phần cứng khác (ví dụ: GPS, máy ảnh), tính nhạy cảm hệ điều hành (ví dụ: danh bạ) quyền truy cập vào số phần tiếp xúc ứng dụng khác Ví dụ: quyền “android.permission.INTERNET‖ yêu cầu quyền truy cập Internet “android.permission.READ CONTACTS” yêu cầu quyền truy cập vào sở liệu danh bạ điện thoại ngƣời dùng Khi trích xuất danh sách quyền đƣợc yêu cầu, chia chúng thành hai nhóm: quyền tích hợp tiêu chuẩn quyền không chuẩn Đối với quyền tiêu chuẩn, chúng tơi tạo vectơ nhị phân mục nhập tƣơng ứng với quyền tích hợp đƣợc đặt thành ứng dụng yêu cầu quyền không Đối với quyền không chuẩn, chia chuỗi thành ba phân đoạn: tiền tố (thƣờng ―com‖ ―org”), tổ chức phần sản phẩm tên quyền Chúng bỏ qua xuất từ android permission từ phổ biến 3.2.4.2 Đặc trƣng đồ thị luồng điều khiển Với phƣơng pháp ứng dụng định, chúng tơi trích xuất đồ thị luồng điều khiển (CFG – Control Flow Graph) từ bytecode Một CFG biểu diễn trừu tƣợng chƣơng trình, đỉnh đại diện cho khối nguyên tử lệnh không chứa lệnh nhảy cạnh biểu thị đƣờng có dịng chƣơng trình Mỗi đỉnh đƣợc gắn nhãn dựa lệnh cuối khối, lệnh định cách dịng chƣơng trình rời khỏi khối Ví dụ, bƣớc nhảy khơng điều kiện đƣợc biểu diễn dƣới dạng cạnh nhất; bƣớc nhảy có điều kiện 45 đƣợc biểu diễn dƣới dạng cố hai cạnh nút bắt đầu Tuy nhiên, nhiều virus sử dụng kỹ thuật biến hình để tạo sửa đổi với mã có ngữ nghĩa, nhƣng với luồng điều khiển khác Để chống lại đột biến này, áp dụng quy tắc viết lại biểu đồ của: • Hợp khối lệnh liên tiếp • Hợp bƣớc nhảy vô điều kiện với khối lệnh mà chúng nhảy tới • Hợp bƣớc nhảy có điều kiện liên tiếp Việc viết lại rút gọn có thêm lợi ích giảm kích thƣớc đồ thị đƣợc trích xuất mà khơng phá hủy thơng tin ngữ nghĩa quan trọng luồng chƣơng trình Khi chúng tơi trích xuất xử lý biểu đồ này, loại bỏ biểu đồ có năm nút trở xuống, có tƣơng đối CFG có từ năm nút trở xuống (và chúng mã hóa thơng tin ngữ nghĩa) việc loại bỏ chúng cho phép tăng tốc độ đáng kể trình xử lý Sau đó, chúng tơi kết hợp đồ thị thành đồ thị lớn khơng kết nối 3.2.5 Vector hóa đặc trƣng Việc phát phần mềm độc hại cách sử dụng kỹ thuật khai thác liệu yêu cầu cung cấp thuật toán máy học với tập liệu phiên biến để tìm hiểu mẫu xây dựng mơ hình phân loại Các đặc trƣng (Permissions, Broadcast Receivers, APIs) đƣợc phân tích cú pháp từ mã nguồn mơ-đun python; tính đƣợc trích xuất đƣợc sử dụng để tạo vectơ nhị phân cho ứng dụng mẫu Nếu đặc trƣng cụ thể, chẳng hạn nhƣ quyền READ PHONE STATE, đƣợc ứng dụng yêu cầu, đƣợc biểu thị vectơ nhị phân đƣợc biểu thị khơng đƣợc yêu cầu Các phần giải thích đặc trƣng đƣợc điều tra 46 3.3 KẾT QUẢ CÀI ĐẶT THỰC NGHIỆM VÀ ĐÁNH GIÁ 3.3.1 Kết cài đặt Vì khơng có đủ liệu để đào tạo mơ hình bạn, nên việc loại bỏ phần để xác thực đặt vấn đề bị thiếu Bằng cách giảm liệu đào tạo, chúng tơi có nguy mẫu / xu hướng quan trọng tập liệu, làm tăng lỗi sai lệch gây Vì vậy, chúng tơi u cầu phƣơng pháp cung cấp nhiều liệu để đào tạo mơ hình để lại nhiều liệu để xác thực K Fold chéo xác thực thực xác điều Cách tính sử dụng độ xác (accuracy) nhƣ cho biết đƣợc phần trăm lƣợng liệu đƣợc phân loại mà không đƣợc cụ thể loại đƣợc phân loại nhƣ nào, lớp đƣợc phân loại nhiều nhất, liệu thuộc lớp thƣờng bị phân loại nhầm vào lớp khác 47 Hình Kết dự đốn mơ hình sau cài đặt với liệu thu thập đƣợc Chúng tiến hành sử dụng liệu thu thập đƣợc nhƣ giới thiệu kết hợp với công cụ, thƣ viện mã nguồn mở để tiến hành cài đặt ngơn ngữ lập trình Python mơi trƣờng Anacoda 3.7 Kết thu đƣợc liệu thu thập đƣợc đƣợc cài đặt đánh giá độ xác theo phƣơng pháp đánh giá chéo tập liệu thu thập đƣợc Kết thu đƣợc sau trình cài đặt đƣợc thể nhƣ hình 3.1 48 3.3.2 Đánh giá kết mơ hình Luận văn kiểm tra hệ thống dựa tập hợp 2081 lành tính 91 ứng dụng Android độc hại có khả làm rị rỉ thơng tin riêng tƣ Đối với điểm liệu, chọn tập hợp ngẫu nhiên ứng dụng an tồn khơng rị rỉ đánh giá chéo k lần Luận văn làm điều với k=4 cho điểm liệu, tính trung bình kết Kết dự đốn xác mơ hình liệu thu thập đƣợc theo phƣơng pháp đánh giá chéo vơi k =4 tập liệu có đƣợc 97.67% 3.3.3 Nhật xét kết cài đặt Với độ xác mơ hình cao, chúng tơi có nhận xét mơ hình cho kết tốt liệu thu thập đƣợc phần chất lƣợng liệu thu thập đƣợc đáng tin cậy Một lý khác đặc trƣng đƣợc trích chọn để đƣa vào mơ hình phân lớp cho thấy đặc trƣng đƣợc lựa chọn phù hợp với lý thuyết mà tài liệu tham khảo Chƣơng Ngồi ra, mơ hình SVM cho thấy kết phân lớp lớp nhị phân (phân vào hai lớp) phần chƣa thể giải đƣợc phức tạp tiềm ẩn nhiều nguy phân lớp nhầm mô hình mẫu liệu kiểm tra Bên cạnh đó, theo nhận xét chúng tơi, liệu thu thập đƣợc qua tiền xử lý từ trƣớc nên kết dự đốn mơ hình tốt So với thực tế liệu thu thập tay tiền xử lý thủ cơng kết chƣa phản ánh 3.4 TIỂU KẾT CHƢƠNG Chƣơng trình bày chi tiết bƣớc chuẩn bị nhƣ cài đặt để từ thực nghiệm đánh giá kết phƣơng pháp dựa chƣơng trình cài đặt với liệu thu thập đƣợc 49 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Kết luận Luận văn nghiên cứu, tìm hiểu mơ hình SVM ứng dụng thành cơng vào tốn phát khả rị rỉ thơng tin riêng tƣ ứng dụng Android Việc cài đặt đƣợc hiệu tốt với liệu thu thập đƣợc Một số kết mà luận văn đạt đƣợc nhƣ sau: - Luận văn tìm hiểu, nghiên cứu trình bày kiến thức liên quan đến tảng Android, chế hoạt động nhƣ mức bảo mật hệ thống Android - Luận văn xây dựng thành cơng mơ hình SVM với hai đặc trƣng trình bày Chƣơng cho tốn phát khả rị rỉ thơng tin ứng dụng Android - Luận văn sử dụng ngơn ngữ lập trình Python để cài đặt thực nghiệm ứng dụng mơ hình SVM cho tốn đạt kết xác cao liệu thu thập đƣợc Hƣớng phát triển Bên cạnh kết đạt đƣợc, hạn chế lớn dừng lại mức thực nghiệm cho toán liệu đƣợc thu thập sẵn, tốt, nên kết có độ xác cao Trong tƣơng lai, tập trung giải số vấn đề: - Nghiên cứu sử dụng nhiều đặc trƣng cho mơ hình SVM dự đốn; - Tiếp thực nghiên cứu thêm mơ hình dự đốn khác để lựa chọn mơ hình cho kết cao SVM; - Nghiên cứu triển khai cài đặt lên thiết bị di động 50 DANH MỤC TÀI LIỆU THAM KHẢO [1] Seo, S.-H., Gupta, A., Sallam, A M., Bertino, E., and Yim, K (2014) Detecting mobile malware threats to homeland security through static analysis Journal of Network and Computer Applications, 38:43–53 [2] Application fundamentals — android developers http://developer.android.com/guide/components/fundamentals.html Accessed April 19, 2015 [3] Arp, D., Spreitzenbarth, M., Hăubner, M., Gascon, H., Rieck, K., and Siemens, C (2014) Drebin: Effective and explainable detection of android malware in your pocket In Proc of NDSS [4].Anthony Desnos androguard.( https://code.google.com/p/androguard/) [5] Koli, J D (2018) RanDroid: Android malware detection using random machine learning classifiers In: International Conference on Technologies for Smart City Energy Security and Power (ICSESP) IEEE, Mar 2018 [6] Agrawal, P., & Trivedi, B (2019) A survey on android malware and their detection techniques In: Third International Conference on Electrical, Computer and Communication Technologies (ICECCT) IEEE, Feb 2019 [7] Agrawal, Prerna, & Trivedi, Bhushan (2019) Analysis of android malware scanning tools International Journal of Computer Sciences and Engineering, 7(3), 807–810 [8] Kumaran, M., & Li, W (2016) Lightweight malware detection based on machine learning algorithms and the android manifest file In: MIT 51 Undergraduate Research Technology Conference(URTC) IEEE, Nov 2016 [9] Leeds, M., & Atkison, T (2016) Preliminary results of applying machine learning algorithms to android malware detection In: International Conference on Computational Intelligence (ICCI) IEEE, Dec 2016 [10] Dutt, S., Chanframouli, S., & Das, A K (2019) Machine Learning 1st (Ed.), India: Pearson [11] Aung, Z., & Zaw, W (2013) Permission-based android malware detection International Journal of Scientific and Technology Research, 2(3) [12] Ham, H S., & Choi, M J (2013) Analysis of android malware detection performance using machine learning classifiers In: International Conference on ICT Convergence (ICTC) IEEE, Oct 2013 [13] Chang, W L., & Wu, W (2016) An android behaviour-based malware detection method using machine learning In: International Conference on Signal Processing, Communications, and Computing (ICSPCC) IEEE, Aug 2016 [14] Yu, W., & Zhang, H (2013) On behaviour-based detection of malware on android platform In: Communication and Information System Security Symposium (Globecom) IEEE, Dec 2013 [15] Wu, W C., & Hung, S H (2014) DroidDolphin: A dynamic android malware detection using big data and machine learning In: Research in Adaptive and Convergent Systems (RACS) ACM, Oct 2014 52 [16] Sahs, J., & Khan, L (2012) A machine learning approach to android malware detection In: European Intelligence and Security Informatics Conference (EISIC) IEEE, Aug 2012 ... 19 CHƢƠNG PHÁT HIỆN KHẢ NĂNG RÒ RỈ THÔNG TIN RIÊNG TƢ TRONG ỨNG DỤNG ANDROID SỬ DỤNG SVM 21 2.1 GIỚI THIỆU 21 2.2 PHÁT HIỆN KHẢ NĂNG RÒ RỈ THÔNG TIN TRONG ỨNG DỤNG ANDROID THEO... khai, phân tích mã) dựa máy học để phát ứng dụng Android độc hại có khả làm rị rỉ thơng tin riêng tƣ ngƣời dùng 2.2 PHÁT HIỆN KHẢ NĂNG RÒ RỈ THÔNG TIN TRONG ỨNG DỤNG ANDROID THEO HƢỚNG HỌC MÁY Máy... Android 13 1.3 RÒ RỈ VÀ PHƢƠNG PHÁP PHÂN TÍCH PHÁT HIỆN RỊ RỈ THÔNG TIN RIÊNG TƢ 15 1.3.1 Rị rỉ thơng tin tính bảo mật ứng dụng Android 15 1.3.2 Ngun nhân làm rị rỉ thơng tin